mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
* switch to official Yubico release tarball instead of GitHub tarball (upstream changed packaging between 1.16.0 and 1.17.0) * split legacy compatibility patches into focused files: - patch-compat-pre1012.diff: fix kIOHIDManagerOptionNone on < 10.12 - patch-nosigpipe.diff: guard F_SETNOSIGPIPE on 10.5–10.6 - patch-fallthrough.diff: fix FALLTHROUGH attribute on < 10.10 - patch-bzero.diff: declare bzero hidden by _POSIX_C_SOURCE on < 10.9 - patch-cmake-no-fallthrough.diff: drop -Wimplicit-fallthrough on 10.5–10.6 Closes: https://trac.macports.org/ticket/64833 Closes: https://trac.macports.org/ticket/68333
46 lines
1.2 KiB
Diff
46 lines
1.2 KiB
Diff
--- src/hid_osx.c.orig 2023-02-20 16:21:28.000000000 +0800
|
|
+++ src/hid_osx.c 2023-06-20 10:42:18.000000000 +0800
|
|
@@ -12,7 +12,7 @@
|
|
#include <signal.h>
|
|
#include <unistd.h>
|
|
|
|
-#include <Availability.h>
|
|
+#include <AvailabilityMacros.h>
|
|
#include <CoreFoundation/CoreFoundation.h>
|
|
#include <IOKit/IOKitLib.h>
|
|
#include <IOKit/hid/IOHIDKeys.h>
|
|
@@ -169,25 +170,27 @@
|
|
static char *
|
|
get_path(IOHIDDeviceRef dev)
|
|
{
|
|
- io_service_t s;
|
|
- uint64_t id;
|
|
- char *path;
|
|
+ io_service_t s;
|
|
+ io_string_t path;
|
|
|
|
+#if MAC_OS_X_VERSION_MIN_REQUIRED > 1050 && !defined(__ppc__)
|
|
if ((s = IOHIDDeviceGetService(dev)) == MACH_PORT_NULL) {
|
|
fido_log_debug("%s: IOHIDDeviceGetService", __func__);
|
|
return (NULL);
|
|
}
|
|
+#endif
|
|
|
|
- if (IORegistryEntryGetRegistryEntryID(s, &id) != KERN_SUCCESS) {
|
|
- fido_log_debug("%s: IORegistryEntryGetRegistryEntryID",
|
|
- __func__);
|
|
+ if (IORegistryEntryGetPath(s, kIOServicePlane, path) != KERN_SUCCESS) {
|
|
+ fido_log_debug("%s: IORegistryEntryGetPath", __func__);
|
|
return (NULL);
|
|
}
|
|
|
|
+#if MAC_OS_X_VERSION_MIN_REQUIRED > 1050 && !defined(__ppc__)
|
|
if (asprintf(&path, "%s%llu", IOREG, (unsigned long long)id) == -1) {
|
|
fido_log_error(errno, "%s: asprintf", __func__);
|
|
return (NULL);
|
|
}
|
|
+#endif
|
|
|
|
return (path);
|
|
}
|