From b62cd2386c084db5d12d73bd5d3029b2a81a4af1 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Fri, 26 Feb 2021 13:07:44 +0100 Subject: [PATCH] Added support for macosx 10.11+ Seems like, starting from 10.11, IOUSBDevice has been renamed to IOUSBHostDevice. --- enumerator/usb_darwin.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/enumerator/usb_darwin.go b/enumerator/usb_darwin.go index aa8b2fc..76f6ea0 100644 --- a/enumerator/usb_darwin.go +++ b/enumerator/usb_darwin.go @@ -47,9 +47,13 @@ func extractPortInfo(service C.io_registry_entry_t) (*PortDetails, error) { port.Name = name port.IsUSB = false + validUSBDeviceClass := map[string]bool{ + "IOUSBDevice": true, + "IOUSBHostDevice": true, + } usbDevice := service var searchErr error - for usbDevice.GetClass() != "IOUSBDevice" { + for !validUSBDeviceClass[usbDevice.GetClass()] { if usbDevice, searchErr = usbDevice.GetParent("IOService"); searchErr != nil { break }