libusb20 api

Trevor Blackwell tlb at tlb.org
Mon Sep 21 22:38:48 UTC 2009


This always fails:

       char devname[256];
       if (libusb20_dev_get_iface_desc(pdev, n, devname,  
sizeof(devname))) break;

while this works:

       char devname[128];
       if (libusb20_dev_get_iface_desc(pdev, n, devname,  
sizeof(devname))) break;

Because this function takes a uint8_t for length:

<libusb20_ugen20.c:851>:
static int
ugen20_dev_get_iface_desc(struct libusb20_device *pdev,
     uint8_t iface_index, char *buf, uint8_t len)

even though the kernel ioctl structure has a 16-bit length.

Hans, why not just use size_t for such arguments?

--
Trevor Blackwell		650 776 7870	tlb at tlb.org







More information about the freebsd-usb mailing list