summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Drake <dsd@gentoo.org>2008-05-08 23:09:21 +0100
committerDaniel Drake <dsd@gentoo.org>2008-05-08 23:09:21 +0100
commit45413101b78298e9332b22a34bc6bc159000ad8a (patch)
treea6554b89188628df2e8bc78a86266f73c2dea396
parent10d4e427cc171dfd6ad7f43a33ce3cfebcd7aa04 (diff)
downloadlibusb-45413101b78298e9332b22a34bc6bc159000ad8a.tar.gz
Linux: fix clear_halt implementation
The ioctl expects an integer. Bug found with the assistance of Soumen Mondal
-rw-r--r--libusb/os/linux_usbfs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c
index 73529dc..820100f 100644
--- a/libusb/os/linux_usbfs.c
+++ b/libusb/os/linux_usbfs.c
@@ -597,7 +597,8 @@ static int op_clear_halt(struct libusb_device_handle *handle,
unsigned char endpoint)
{
int fd = __device_handle_priv(handle)->fd;
- int r = ioctl(fd, IOCTL_USBFS_CLEAR_HALT, &endpoint);
+ unsigned int _endpoint = endpoint;
+ int r = ioctl(fd, IOCTL_USBFS_CLEAR_HALT, &_endpoint);
if (r) {
if (errno == ENOENT)
return LIBUSB_ERROR_NOT_FOUND;