diff --git a/src/hci_transport_usb.c b/src/hci_transport_usb.c index e1177eec4..34447b4ad 100644 --- a/src/hci_transport_usb.c +++ b/src/hci_transport_usb.c @@ -88,7 +88,7 @@ static libusb_state_t libusb_state = LIB_USB_CLOSED; // single instance static hci_transport_t * hci_transport_usb = NULL; -static void (*packet_handler)(uint8_t packet_type, uint8_t *packet, uint16_t size) = dummy_handler; +static void (*packet_handler)(uint8_t packet_type, uint8_t *packet, uint16_t size) = dummy_handler; // libusb #ifndef HAVE_USB_VENDOR_ID_AND_PRODUCT_ID @@ -125,9 +125,26 @@ static int event_in_addr; static int acl_in_addr; static int acl_out_addr; - #ifndef HAVE_USB_VENDOR_ID_AND_PRODUCT_ID -void scan_for_bt_endpoints(void) { + +// list of known devices, using ProductID/VendorID tuples +static uint16_t known_bt_devices[] = { + // DeLOCK Bluetooth 4.0 + 0x0a5c, 0x21e8 +}; +static int num_known_devices = sizeof(known_bt_devices) / sizeof(uint16_t) / 2; + +static int is_known_bt_device(uint16_t vendor_id, uint16_t product_id){ + int i; + for (i=0; i