summaryrefslogtreecommitdiff
path: root/libusb/os/netbsd_usb.c
diff options
context:
space:
mode:
Diffstat (limited to 'libusb/os/netbsd_usb.c')
-rw-r--r--libusb/os/netbsd_usb.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/libusb/os/netbsd_usb.c b/libusb/os/netbsd_usb.c
index dab7692..91f2472 100644
--- a/libusb/os/netbsd_usb.c
+++ b/libusb/os/netbsd_usb.c
@@ -36,7 +36,7 @@ struct device_priv {
char devnode[16];
int fd;
- unsigned char *cdesc; /* active config descriptor */
+ usb_config_descriptor_t *cdesc; /* active config descriptor */
usb_device_descriptor_t ddesc; /* usb device descriptor */
};
@@ -52,12 +52,12 @@ static int netbsd_get_device_list(struct libusb_context *,
static int netbsd_open(struct libusb_device_handle *);
static void netbsd_close(struct libusb_device_handle *);
-static int netbsd_get_device_descriptor(struct libusb_device *, unsigned char *,
+static int netbsd_get_device_descriptor(struct libusb_device *, void *,
int *);
static int netbsd_get_active_config_descriptor(struct libusb_device *,
- unsigned char *, size_t);
+ void *, size_t);
static int netbsd_get_config_descriptor(struct libusb_device *, uint8_t,
- unsigned char *, size_t);
+ void *, size_t);
static int netbsd_get_configuration(struct libusb_device_handle *, int *);
static int netbsd_set_configuration(struct libusb_device_handle *, int);
@@ -162,7 +162,6 @@ netbsd_get_device_list(struct libusb_context * ctx,
goto error;
}
- dpriv->cdesc = NULL;
if (_cache_active_config_descriptor(dev, fd)) {
err = errno;
goto error;
@@ -221,7 +220,7 @@ netbsd_close(struct libusb_device_handle *handle)
}
int
-netbsd_get_device_descriptor(struct libusb_device *dev, unsigned char *buf,
+netbsd_get_device_descriptor(struct libusb_device *dev, void *buf,
int *host_endian)
{
struct device_priv *dpriv = usbi_get_device_priv(dev);
@@ -235,13 +234,11 @@ netbsd_get_device_descriptor(struct libusb_device *dev, unsigned char *buf,
int
netbsd_get_active_config_descriptor(struct libusb_device *dev,
- unsigned char *buf, size_t len)
+ void *buf, size_t len)
{
struct device_priv *dpriv = usbi_get_device_priv(dev);
- usb_config_descriptor_t *ucd;
- ucd = (usb_config_descriptor_t *) dpriv->cdesc;
- len = MIN(len, UGETW(ucd->wTotalLength));
+ len = MIN(len, UGETW(dpriv->cdesc->wTotalLength));
usbi_dbg("len %d", len);
@@ -252,7 +249,7 @@ netbsd_get_active_config_descriptor(struct libusb_device *dev,
int
netbsd_get_config_descriptor(struct libusb_device *dev, uint8_t idx,
- unsigned char *buf, size_t len)
+ void *buf, size_t len)
{
struct device_priv *dpriv = usbi_get_device_priv(dev);
struct usb_full_desc ufd;
@@ -477,7 +474,7 @@ _cache_active_config_descriptor(struct libusb_device *dev, int fd)
struct device_priv *dpriv = usbi_get_device_priv(dev);
struct usb_config_desc ucd;
struct usb_full_desc ufd;
- unsigned char* buf;
+ void *buf;
int len;
usbi_dbg("fd %d", fd);
@@ -490,7 +487,7 @@ _cache_active_config_descriptor(struct libusb_device *dev, int fd)
usbi_dbg("active bLength %d", ucd.ucd_desc.bLength);
len = UGETW(ucd.ucd_desc.wTotalLength);
- buf = malloc(len);
+ buf = malloc((size_t)len);
if (buf == NULL)
return (LIBUSB_ERROR_NO_MEM);