ykman.hid.macos

Attributes

HID_DEVICE_PROPERTY_VENDOR_ID

HID_DEVICE_PROPERTY_PRODUCT_ID

HID_DEVICE_PROPERTY_PRODUCT

HID_DEVICE_PROPERTY_PRIMARY_USAGE

HID_DEVICE_PROPERTY_PRIMARY_USAGE_PAGE

HID_DEVICE_PROPERTY_MAX_INPUT_REPORT_SIZE

HID_DEVICE_PROPERTY_MAX_OUTPUT_REPORT_SIZE

HID_DEVICE_PROPERTY_REPORT_ID

CF_SET_REF

CF_STRING_REF

CF_TYPE_REF

CF_ALLOCATOR_REF

CF_DICTIONARY_REF

CF_MUTABLE_DICTIONARY_REF

CF_TYPE_ID

CF_INDEX

CF_TIME_INTERVAL

IO_RETURN

IO_HID_REPORT_TYPE

IO_OPTION_BITS

IO_OBJECT_T

MACH_PORT_T

IO_SERVICE_T

IO_REGISTRY_ENTRY_T

IO_HID_MANAGER_REF

IO_HID_DEVICE_REF

K_CF_NUMBER_SINT32_TYPE

K_CF_ALLOCATOR_DEFAULT

K_IO_MASTER_PORT_DEFAULT

K_IO_HID_REPORT_TYPE_FEATURE

K_IO_RETURN_SUCCESS

iokit

cf

Classes

MacHidOtpConnection

A connection to a YubiKey

Functions

get_int_property(dev, key)

Reads int property from the HID device.

get_device_id(device_handle)

Obtains the unique IORegistry entry ID for the device.

list_devices()

Module Contents

ykman.hid.macos.HID_DEVICE_PROPERTY_VENDOR_ID = b'VendorID'
ykman.hid.macos.HID_DEVICE_PROPERTY_PRODUCT_ID = b'ProductID'
ykman.hid.macos.HID_DEVICE_PROPERTY_PRODUCT = b'Product'
ykman.hid.macos.HID_DEVICE_PROPERTY_PRIMARY_USAGE = b'PrimaryUsage'
ykman.hid.macos.HID_DEVICE_PROPERTY_PRIMARY_USAGE_PAGE = b'PrimaryUsagePage'
ykman.hid.macos.HID_DEVICE_PROPERTY_MAX_INPUT_REPORT_SIZE = b'MaxInputReportSize'
ykman.hid.macos.HID_DEVICE_PROPERTY_MAX_OUTPUT_REPORT_SIZE = b'MaxOutputReportSize'
ykman.hid.macos.HID_DEVICE_PROPERTY_REPORT_ID = b'ReportID'
ykman.hid.macos.CF_SET_REF
ykman.hid.macos.CF_STRING_REF
ykman.hid.macos.CF_TYPE_REF
ykman.hid.macos.CF_ALLOCATOR_REF
ykman.hid.macos.CF_DICTIONARY_REF
ykman.hid.macos.CF_MUTABLE_DICTIONARY_REF
ykman.hid.macos.CF_TYPE_ID
ykman.hid.macos.CF_INDEX
ykman.hid.macos.CF_TIME_INTERVAL
ykman.hid.macos.IO_RETURN
ykman.hid.macos.IO_HID_REPORT_TYPE
ykman.hid.macos.IO_OPTION_BITS
ykman.hid.macos.IO_OBJECT_T
ykman.hid.macos.MACH_PORT_T
ykman.hid.macos.IO_SERVICE_T
ykman.hid.macos.IO_REGISTRY_ENTRY_T
ykman.hid.macos.IO_HID_MANAGER_REF
ykman.hid.macos.IO_HID_DEVICE_REF
ykman.hid.macos.K_CF_NUMBER_SINT32_TYPE = 3
ykman.hid.macos.K_CF_ALLOCATOR_DEFAULT = None
ykman.hid.macos.K_IO_MASTER_PORT_DEFAULT = 0
ykman.hid.macos.K_IO_HID_REPORT_TYPE_FEATURE = 2
ykman.hid.macos.K_IO_RETURN_SUCCESS = 0
ykman.hid.macos.iokit
ykman.hid.macos.cf
class ykman.hid.macos.MacHidOtpConnection(path)

Bases: yubikit.core.otp.OtpConnection

A connection to a YubiKey

handle
close()

Close the device, releasing any held resources.

receive()

Reads an 8 byte feature report

send(data)

Writes an 8 byte feature report

ykman.hid.macos.get_int_property(dev, key)

Reads int property from the HID device.

ykman.hid.macos.get_device_id(device_handle)

Obtains the unique IORegistry entry ID for the device.

Args: device_handle: reference to the device

Returns: A unique ID for the device, obtained from the IO Registry

ykman.hid.macos.list_devices()