76 Commits

Author SHA1 Message Date
Pete Batard 3bb808f398 r132: harmonized compatibility layer function names (_libusb prefix always, rather than _for_poll suffix)
additional minor xusb improvements.
2010-02-02 19:42:27 +00:00
Pete Batard 3e258645f4 r129: xusb fixes for Mass Storage test (Alan Stern):
- forces command length to 31
- null termination of vid/pid/rev strings
- big endian detection
2010-01-31 03:36:45 +00:00
Pete Batard c1f00180ff r126: fixed sscanf_s test for MSVC6 users 2010-01-30 21:00:23 +00:00
Pete Batard bf4f54160c r124: removes #error on previous commit and fixes thing ourselves 2010-01-30 01:40:41 +00:00
Pete Batard afe70cedf7 r123: reverted the use of usb_interface in core and forced interface to be undefined always on Windows 2010-01-29 20:04:35 +00:00
Pete Batard 47c83183c0 r122: fixed poll conflict on cygwin (all compat functions renamed to _libusb_####)
- fixed sscanf_s undefined for non MS compilers
- fixed cygiwn warnings in windows_usb.c
2010-01-28 23:18:52 +00:00
Pete Batard 37b685c355 r121: some more small improvements for xusb.c (vid:pid as cmdline parameter) 2010-01-28 15:56:04 +00:00
Pete Batard c69d51d779 r120: vc2005 express fixes (Orin Eman) 2010-01-28 13:32:38 +00:00
Pete Batard 388620e21f r119: xusb improvements for mass storage (Alan Stern) 2010-01-27 21:23:31 +00:00
Pete Batard fa2f3231db r118: more readable xusb output and added automated endpoint generation for Mass Storage 2010-01-26 15:32:57 +00:00
Pete Batard 03265db68a r116: DDK build completion (Orin Eman):
- lsusb/xusb sources + ddk_build call
- missing libusb_strerror in .def
- removed "handle_timeouts_locked unused" warning in in io.c for MinGW
2010-01-26 01:46:17 +00:00
Pete Batard 9459dd37f0 r115: added libusb_strerror (Francesco Montorsi) 2010-01-25 22:21:31 +00:00
Pete Batard 628bd43bc2 r105: added MS Sidewinder HID test in xusb.c + minor changes/improvements 2010-01-23 23:28:55 +00:00
Pete Batard 72c4defd45 r101: MSVC6 & VS 2005 updates (Michael Plante & Orin Eman) 2010-01-21 20:01:45 +00:00
Pete Batard dba186a53d r100: added MSVC6 project files (Michael Plante) 2010-01-21 18:40:19 +00:00
Pete Batard 5e98c8b1a3 r99: DDK/sources x64 final fix and additional MSVC fixes (/MT) 2010-01-21 17:38:43 +00:00
Pete Batard 0fc4348172 r94: removed the need for DDK includes + minor fixes 2010-01-21 01:34:53 +00:00
Pete Batard 5590301e7f r93: HID part 2 (WIP)
- added composite HID device support in xusb.c
- fixed signed/unsigned bug in windows_compat.c (Orin Eman)
- added support for synchronous completion of async requests
- composite HID device support (ClassGUID fallback for driver unavail., read interface number from MI_##, extra path for HID)
- generic interface_by_endpoint and get_valid_interface
- added HID struct in priv
- HID submit_control_transfer
2010-01-20 20:29:45 +00:00
Pete Batard e158221159 r90: more compilation environment fixes:
- added Visual Studio 2005 (MSVC8) solution and project files (Orin Eman)
- renamed VS 2008 solution and project files
- fixed "warning: undefined symbols not allowed" for MinGW/cygwin in configure.ac
2010-01-19 00:55:30 +00:00
Pete Batard 7a8f7d1826 r89: extended API support
- composite devices as a separate backend API
- mutidriver support in composite devices interface
- HID: device interface path, open/close (WIP)
- added HID test in xusb.c
- fixed Windows version and DDK support
- smaller fixes
2010-01-18 20:32:38 +00:00
Pete Batard a93cef02ff r85: fixed MSVC warnings for x64 and reverted ssize_t to int for libusb_get_device_list change introduced with r52. Added definition on ssize_t in libusb.h for MSVC platforms. 2010-01-16 01:20:45 +00:00
Pete Batard 5f46b891de r82: added x64 support for MSVC and finalized directory structure.
Also amended README_MSVC.txt to reflect a better setup for the required DDK directories
2010-01-15 20:59:54 +00:00
Pete Batard b96e16e75f r80: workaround for interface macro redefinition on Windows (removes the need for #undef interface in end user sources) 2010-01-15 12:35:02 +00:00
Pete Batard 1626ee0042 r75: fixed missing <stdarg.h> include in xusb.c for UNIX platforms 2010-01-14 15:50:39 +00:00
Pete Batard 40e8e4185a r74: fixes CR/LF conversions introduced with previous changes 2010-01-14 15:44:47 +00:00
Pete Batard e6ef1694db r73: moved -pthread option to CFLAGS for platforms that need it 2010-01-14 14:09:46 +00:00
Pete Batard e452335742 Fix CR/LF inconsistencies 2010-01-14 12:57:07 +00:00
Pete Batard cc67a67e8f svn r64:
- added .def file for MSVC6 dll build (Michael Plante)
- prevented conflicts with pdb and HTML logs for lsusb & xusb
2010-01-14 01:41:28 +00:00
Pete Batard 83b01ba2dd svn r63: - updated Visual Studio 2008 projects files (fixed missing options for Debug) 2010-01-14 01:40:09 +00:00
Pete Batard fdcf676350 svn r62: More MSVC6 compatibility
- perr() without variadic in xusb.c (Michael Plante)
- dropped LOOP_CONTINUE variadic in windows_usb.c
2010-01-14 01:39:29 +00:00
Pete Batard 71613013b9 svn r54: - fixes missing config_msvc.h 2010-01-14 01:34:40 +00:00
Pete Batard a32c101a47 svn r52: MSVC compatibility update:
- changed ssize_t to int for libusb_get_device_list (do we really expect that
many devices?). Also in lsusb.c
- redefined inline to __inline in libusb.h
- remove the unistd.h include for OS_WINDOWS
- api/ vs ddk/ for ddk includes
- changed variadics using ,fmt... to ,... and __VA_ARGS__
- list_for_each_entry now requires a type parameter
- libusb_cpu_to_le16 as inline
- time.h vs sys/time.h
- harmonization of #ifdef vs #if defined() within individual files
- defined an empty __drv_preferredFunction(func,why) before #include
<cfgmgr32.h>, as it only applies to obsolete functions
- excluded USB_HUB_CAPS redefinition from MSVC
- new msvc top directory for includes (stdint.h inttypes.h and pthread)
- new config_msvc.h file
- new README_MSVC and MSVC project files
- removed various warnings (signed/unsigned comparisons, cast, etc)
2010-01-14 01:31:38 +00:00
Pete Batard 762989c9ba svn r44:
- fixed configure.ac for libusb handled timeouts
- fixed crash on invalid fds in windows_compat.c
- xusb improvements for mass storage test
2010-01-14 01:26:34 +00:00
Pete Batard 191930f700 svn r42:
- code cleanup
- device reset improvement (tentative)
- inquiry request for Mass Storage in xusb.c
2010-01-14 01:26:01 +00:00
Pete Batard 0cf1a367fa svn r40:
- feature complete!
- added transfer cancellation
- added device reset
- additional code cleanup
2010-01-14 01:25:18 +00:00
Pete Batard 055b0136bf svn r38:
- bulk/interrupt I/O at last!
- endpoint handling
- minor code improvements
2010-01-14 01:24:28 +00:00
Pete Batard 434caf7c49 svn r37:
- windows_set_interface_altsetting (untested)
- windows_set_configuration (untested)
- updated xusb.c test program, with comprehensive XBox Controller test and
preparation for bulk transfers test on Mass Storage device
2010-01-14 01:23:19 +00:00
Pete Batard bdcbace881 svn r25:
- WinUSB composite device support (with DeviceClasses registry lookup)
- better interface handling
- other minor improvements
2010-01-14 01:16:33 +00:00
Pete Batard eacdaf7c21 svn r22: Partial async I/O (control only) with custom poll and OVERLAPPED pointers as fds. Should read device strings. Also some provisions for composite devices. 2010-01-14 01:15:20 +00:00
Pete Batard f47443958e svn r18: basic open/close & claim/release interface + detection of WinUSB and driverless devices (priv->driver) 2010-01-14 01:14:09 +00:00
Pete Batard 0768325f83 svn r13: add winusb to the mix: query first interface and pipes on device open 2010-01-14 01:12:45 +00:00
Pete Batard 967842d93c svn r11: remove dpfp compilation (doesn't work on Windows) and add the xusb test program 2010-01-14 01:11:25 +00:00
Ludovic Rousseau 8392ff2213 lsusb example: make print_devs() static
lsusb.c:26: warning: no previous prototype for ‘print_devs’
2009-11-21 17:12:17 +00:00
Daniel Drake 1df713d622 Introduce contexts to the API
Suggested by David Zeuthen. This allows multiple libraries in the same
process to independently use libusb without interfering.
2008-06-26 22:42:59 -05:00
Daniel Drake fec7c84163 Handle hot-unplugging
This involved moving from select() to poll() because there is no way to
distinguish usbfs's POLLERR condition with select().
2008-05-11 20:47:27 +01:00
Daniel Drake fe4adcc99e Rework configuration handling
libusb no longer caches descriptors in libusb_device but backends are
intended to be able to provide copies from memory. In the common linux
case we can use sysfs.
2008-05-09 19:33:33 +01:00
Daniel Drake 5741bfe01a libusb_get_device_list() can return negative error code 2008-05-09 14:36:14 +01:00
Daniel Drake 5878daa85e Fix libusb_get_device_list return value
It was documented to return the list length, but was returning 0.
2008-05-04 00:51:59 +01:00
Daniel Drake 3675e978fb Expose bus number and device address 2008-05-02 12:28:31 +01:00
Daniel Drake 7ac0a405b4 Remove libusb_cancel_transfer_sync
This wasn't a particularly nice API. Cancellation should be handled by
the completion handler.
2008-04-29 12:08:35 +01:00