[linux-minidisc] [PATCH 01/14] Make some function accepting opaque data pointer accept a py_object.


This makes them easily usable in python.
---
 netmd/libusb1.py |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/netmd/libusb1.py b/netmd/libusb1.py
index 4aae1ad..6796860 100644
--- a/netmd/libusb1.py
+++ b/netmd/libusb1.py
@@ -466,7 +466,7 @@ libusb_transfer._fields_ = [('dev_handle', libusb_device_handle_p),
                             ('actual_length', c_int),
                             ('callback', libusb_transfer_cb_fn_p),
                             ('user_data', py_object),
-                            ('buffer', c_void_p),
+                            ('buffer', c_char_p),
                             ('num_iso_packets', c_int),
                             ('iso_packet_desc', libusb_iso_packet_descriptor_p)
 ]
@@ -609,9 +609,9 @@ def libusb_control_transfer_get_data(transfer):
 def libusb_control_transfer_get_setup(transfer):
     return cast(transfer, libusb_control_setup_p)
 
-def libusb_fill_control_setup(setup_p, bmRequestType, bRequest, wValue, wIndex,
+def libusb_fill_control_setup(buffer, bmRequestType, bRequest, wValue, wIndex,
                               wLength):
-    setup = cast(setup_p, libusb_control_setup_p).contents
+    setup = cast(buffer, libusb_control_setup_p).contents
     setup.bmRequestType = bmRequestType
     setup.bRequest = bRequest
     setup.wValue = libusb_cpu_to_le16(wValue)
@@ -644,7 +644,6 @@ def libusb_fill_control_transfer(transfer_p, dev_handle, buffer, callback,
         setup = cast(buffer, libusb_control_setup_p).contents
         transfer.length = LIBUSB_CONTROL_SETUP_SIZE + \
                           libusb_le16_to_cpu(setup.wLength)
-        transfer.buffer = cast(buffer, c_void_p)
     transfer.user_data = user_data
     transfer.callback = callback
 
@@ -655,7 +654,7 @@ def libusb_fill_bulk_transfer(transfer_p, dev_handle, endpoint, buffer, length,
     transfer.endpoint = endpoint
     transfer.type = LIBUSB_TRANSFER_TYPE_BULK
     transfer.timeout = timeout
-    transfer.buffer = cast(buffer, c_void_p)
+    transfer.buffer = buffer
     transfer.length = length
     transfer.user_data = user_data
     transfer.callback = callback
@@ -667,7 +666,7 @@ def libusb_fill_interrupt_transfer(transfer_p, dev_handle, endpoint, buffer,
     transfer.endpoint = endpoint
     transfer.type = LIBUSB_TRANSFER_TYPE_INTERRUPT
     transfer.timeout = timeout
-    transfer.buffer = cast(buffer, c_void_p)
+    transfer.buffer = buffer
     transfer.length = length
     transfer.user_data = user_data
     transfer.callback = callback