Package: libusb / 2:0.1.12-25

03_const_buffers.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
---
 bsd.c    |    4 ++--
 darwin.c |    6 +++---
 linux.c  |    8 ++++----
 usb.h.in |    4 ++--
 4 files changed, 11 insertions(+), 11 deletions(-)

--- a/bsd.c
+++ b/bsd.c
@@ -279,7 +279,7 @@
   return info->ep_fd[ep];
 }
 
-int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_bulk_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
                    int timeout)
 {
   int fd, ret;
@@ -358,7 +358,7 @@
   return ret;
 }
 
-int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_interrupt_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
                         int timeout)
 {
   int fd, ret, sent = 0;
--- a/linux.c
+++ b/linux.c
@@ -277,11 +277,11 @@
   return bytesdone;
 }
 
-int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_bulk_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
 	int timeout)
 {
   /* Ensure the endpoint address is correct */
-  return usb_urb_transfer(dev, ep, USB_URB_TYPE_BULK, bytes, size,
+  return usb_urb_transfer(dev, ep, USB_URB_TYPE_BULK, (char *)bytes, size,
 		timeout);
 }
 
@@ -299,11 +299,11 @@
  * 2.5 HCDs yet) don't handle multi-packet Interrupt transfers. So we need
  * to lookup the endpoint packet size and packetize appropriately here.
  */
-int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_interrupt_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
 	int timeout)
 {
   /* Ensure the endpoint address is correct */
-  return usb_urb_transfer(dev, ep, USB_URB_TYPE_INTERRUPT, bytes, size,
+  return usb_urb_transfer(dev, ep, USB_URB_TYPE_INTERRUPT, (char *)bytes, size,
 		timeout);
 }
 
--- a/darwin.c
+++ b/darwin.c
@@ -871,7 +871,7 @@
   return rw_arg.io_size;
 }
 
-int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, int timeout)
+int usb_bulk_write(usb_dev_handle *dev, int ep, const char *bytes, int size, int timeout)
 {
   int result;
   rw_async_to_func_t to_func = NULL;
@@ -886,7 +886,7 @@
   to_func = (*(device->interface))->WritePipeAsyncTO;
 #endif
 
-  if ((result = usb_bulk_transfer (dev, ep, bytes, size, timeout,
+  if ((result = usb_bulk_transfer (dev, ep, (char *) bytes, size, timeout,
 				   (*(device->interface))->WritePipeAsync, to_func)) < 0)
     USB_ERROR_STR (result, "usb_bulk_write: An error occured during write (see messages above)");
   
@@ -918,7 +918,7 @@
 }
 
 /* interrupt endpoints seem to be treated just like any other endpoint under OSX/Darwin */
-int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_interrupt_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
 	int timeout)
 {
   return usb_bulk_write (dev, ep, bytes, size, timeout);
--- a/usb.h.in
+++ b/usb.h.in
@@ -296,11 +296,11 @@
 	unsigned char index, void *buf, int size);
 
 /* <arch>.c */
-int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_bulk_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
 	int timeout);
 int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size,
 	int timeout);
-int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size,
+int usb_interrupt_write(usb_dev_handle *dev, int ep, const char *bytes, int size,
         int timeout);
 int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size,
         int timeout);