Page MenuHomeFreeBSD

libusb: implement libusb_wrap_sys_device
ClosedPublic

Authored by aokblast on Aug 5 2025, 1:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 7, 8:59 AM
Unknown Object (File)
Fri, Mar 27, 12:49 AM
Unknown Object (File)
Thu, Mar 26, 7:47 AM
Unknown Object (File)
Thu, Mar 26, 7:43 AM
Unknown Object (File)
Tue, Mar 17, 4:50 PM
Unknown Object (File)
Tue, Mar 17, 2:46 AM
Unknown Object (File)
Mon, Mar 16, 10:46 PM
Unknown Object (File)
Mar 2 2026, 7:06 PM
Subscribers

Details

Summary

The libusb_wrap_sys_device function can wrap an opened fd from the
system into a libusb handler. However, in FreeBSD's libusb implementation, a
USB device contains two fds: one for control transfers and another for
normal (bulk, interrupt, isochronous) transfers.

This design makes it impossible for FreeBSD to implement this function
without exposing a different structure in libusb.h to provide two fds.
Therefore, we return LIBUSB_ERROR_NOT_SUPPORTED to maintain API
compatibility.

Sponsored By: The FreeBSD Foundation.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 65973
Build 62856: arc lint + arc unit

Event Timeline

lib/libusb/libusb.3
215
lib/libusb/libusb10.c
1922

Extra newline.

This revision is now accepted and ready to land.Aug 5 2025, 1:36 PM
lwhsu added inline comments.
lib/libusb/libusb.3
213
This revision was automatically updated to reflect the committed changes.