summaryrefslogtreecommitdiffstats
path: root/src/libusb-sniff.c
diff options
context:
space:
mode:
authorPali Rohár <pali.rohar@gmail.com>2016-01-23 16:03:01 +0100
committerPali Rohár <pali.rohar@gmail.com>2016-01-23 16:03:01 +0100
commit6482e4d2b7a2cb641b7d9461db11d3b0578f8e70 (patch)
tree875e3d88957a3eba888997686ce8f5a418929456 /src/libusb-sniff.c
parent57b0c6d0c47d6495392161ddd9030b2a2d5c9e6c (diff)
download0xFFFF-6482e4d2b7a2cb641b7d9461db11d3b0578f8e70.tar.bz2
libusb-sniff: Use POSIX.1-2003 workaround for dlsym() assignment which is compatible with C99
Diffstat (limited to 'src/libusb-sniff.c')
-rw-r--r--src/libusb-sniff.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/libusb-sniff.c b/src/libusb-sniff.c
index a901556..ecf4b2c 100644
--- a/src/libusb-sniff.c
+++ b/src/libusb-sniff.c
@@ -71,7 +71,7 @@ int usb_bulk_write(usb_dev_handle * dev, int ep, const char * bytes, int size, i
static int (*real_usb_bulk_write)(usb_dev_handle * dev, int ep, const char * bytes, int size, int timeout) = NULL;
if ( ! real_usb_bulk_write )
- real_usb_bulk_write = dlsym(RTLD_NEXT, "usb_bulk_write");
+ *(void **)(&real_usb_bulk_write) = dlsym(RTLD_NEXT, "usb_bulk_write");
if ( ! getenv("USBSNIFF_SKIP_WRITE") ) {
@@ -95,7 +95,7 @@ int usb_bulk_read(usb_dev_handle * dev, int ep, char * bytes, int size, int time
int ret;
if ( ! real_usb_bulk_read )
- real_usb_bulk_read = dlsym(RTLD_NEXT, "usb_bulk_read");
+ *(void **)(&real_usb_bulk_read) = dlsym(RTLD_NEXT, "usb_bulk_read");
ret = real_usb_bulk_read(dev, ep, bytes, size, timeout);
@@ -123,7 +123,7 @@ int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, int value
int ret;
if ( ! real_usb_control_msg )
- real_usb_control_msg = dlsym(RTLD_NEXT, "usb_control_msg");
+ *(void **)(&real_usb_control_msg) = dlsym(RTLD_NEXT, "usb_control_msg");
if ( requesttype == 64 && ! getenv("USBSNIFF_SKIP_CONTROL") ) {
@@ -162,7 +162,7 @@ int usb_set_configuration(usb_dev_handle *dev, int configuration) {
static int (*real_usb_set_configuration)(usb_dev_handle *dev, int configuration) = NULL;
if ( ! real_usb_set_configuration )
- real_usb_set_configuration = dlsym(RTLD_NEXT, "usb_set_configuration");
+ *(void **)(&real_usb_set_configuration) = dlsym(RTLD_NEXT, "usb_set_configuration");
printf("\n==== usb_set_configuration (configuration=%d) ====\n", configuration);
@@ -175,7 +175,7 @@ int usb_claim_interface(usb_dev_handle *dev, int interface) {
static int (*real_usb_claim_interface)(usb_dev_handle *dev, int interface) = NULL;
if ( ! real_usb_claim_interface )
- real_usb_claim_interface = dlsym(RTLD_NEXT, "usb_claim_interface");
+ *(void **)(&real_usb_claim_interface) = dlsym(RTLD_NEXT, "usb_claim_interface");
printf("\n==== usb_claim_interface (interface=%d) ====\n", interface);
@@ -188,7 +188,7 @@ int usb_set_altinterface(usb_dev_handle *dev, int alternate) {
static int (*real_usb_set_altinterface)(usb_dev_handle *dev, int alternate) = NULL;
if ( ! real_usb_set_altinterface )
- real_usb_set_altinterface = dlsym(RTLD_NEXT, "usb_set_altinterface");
+ *(void **)(&real_usb_set_altinterface) = dlsym(RTLD_NEXT, "usb_set_altinterface");
printf("\n==== usb_set_altinterface (alternate=%d) ====\n", alternate);