Sean McBride a91657aba0 darwin: Avoid error checking regression
Commit 13a69533 slightly/subtly made an incorrect change to error
checking. Before that commit, we had

  if (kIOReturnSuccess != kresult || !plugInInterface) {
    return NULL;
  }

which was correct. The commit changed the function signature. Instead of
returning the pointer directly, it now returns an error code directly,
and the pointer by reference.  The above block became:

  if (kIOReturnSuccess != kresult || !plugInInterface) {
    return darwin_to_libusb(kresult);
  }

But if kresult is somehow kIOReturnSuccess but plugInInterface is NULL
(probably impossible), then we'd return LIBUSB_SUCCESS but a NULL
pointer, which is a nonsense combination.

Closes #1430
2024-01-19 18:18:05 +01:00
2020-12-19 13:29:38 -08:00
2022-06-26 17:09:14 +02:00
2023-12-10 17:33:32 +01:00
2024-01-04 18:04:52 +01:00
2007-12-02 22:54:59 +00:00
2022-06-26 17:09:14 +02:00
2016-07-24 20:00:00 -06:00
2020-03-25 00:09:26 -07:00
2020-08-23 17:32:06 +02:00
2016-07-24 20:02:31 -06:00

libusb

Build Status Build Status Coverity Scan Build Status

libusb is a library for USB device access from Linux, macOS, Windows, OpenBSD/NetBSD, Haiku, Solaris userspace, and WebAssembly via WebUSB. It is written in C (Haiku backend in C++) and licensed under the GNU Lesser General Public License version 2.1 or, at your option, any later version (see COPYING).

libusb is abstracted internally in such a way that it can hopefully be ported to other operating systems. Please see the PORTING file for more information.

libusb homepage: http://libusb.info/

Developers will wish to consult the API documentation: http://api.libusb.info

Use the mailing list for questions, comments, etc: http://mailing-list.libusb.info

(Please use the mailing list rather than mailing developers directly)

Description
⚠️ ARCHIVED: Original GitHub repository no longer exists. Preserved as backup on 2026-01-31T05:30:30.373Z
Readme 4.9 MiB
Languages
C 91.5%
C++ 4.8%
M4 1.3%
Makefile 1.1%
CMake 0.6%
Other 0.6%