libusb 0.5.1 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +8 -2
- data/Gemfile +2 -0
- data/History.md +12 -0
- data/README.md +25 -14
- data/Rakefile +64 -109
- data/appveyor.yml +23 -0
- data/ext/extconf.rb +10 -12
- data/ext/libusb_recipe.rb +29 -0
- data/lib/libusb/call.rb +14 -11
- data/lib/libusb/compat.rb +9 -9
- data/lib/libusb/context.rb +16 -1
- data/lib/libusb/dependencies.rb +7 -0
- data/lib/libusb/dev_handle.rb +13 -3
- data/lib/libusb/eventmachine.rb +4 -4
- data/lib/libusb/transfer.rb +71 -10
- data/lib/libusb/version_gem.rb +1 -1
- data/libusb.gemspec +7 -5
- data/ports/archives/libusb-1.0.21.tar.bz2 +0 -0
- data/test/test_libusb_bulk_stream_transfer.rb +1 -1
- data/test/test_libusb_descriptors.rb +4 -4
- data/test/test_libusb_event_machine.rb +7 -7
- data/test/test_libusb_hotplug.rb +15 -3
- data/test/test_libusb_iso_transfer.rb +1 -1
- data/test/test_libusb_mass_storage.rb +19 -19
- data/test/test_libusb_mass_storage2.rb +1 -1
- data/test/test_libusb_structs.rb +13 -0
- data/test/test_libusb_threads.rb +2 -2
- data/wireshark-usb-sniffer.png +0 -0
- metadata +32 -156
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/ext/libusb-1.0.20/AUTHORS +0 -89
- data/ext/libusb-1.0.20/COPYING +0 -504
- data/ext/libusb-1.0.20/ChangeLog +0 -227
- data/ext/libusb-1.0.20/INSTALL +0 -234
- data/ext/libusb-1.0.20/Makefile.am +0 -28
- data/ext/libusb-1.0.20/Makefile.in +0 -897
- data/ext/libusb-1.0.20/NEWS +0 -2
- data/ext/libusb-1.0.20/PORTING +0 -94
- data/ext/libusb-1.0.20/README +0 -29
- data/ext/libusb-1.0.20/TODO +0 -2
- data/ext/libusb-1.0.20/Xcode/common.xcconfig +0 -49
- data/ext/libusb-1.0.20/Xcode/config.h +0 -28
- data/ext/libusb-1.0.20/Xcode/debug.xcconfig +0 -29
- data/ext/libusb-1.0.20/Xcode/libusb.xcconfig +0 -21
- data/ext/libusb-1.0.20/Xcode/libusb.xcodeproj/project.pbxproj +0 -865
- data/ext/libusb-1.0.20/Xcode/libusb_debug.xcconfig +0 -21
- data/ext/libusb-1.0.20/Xcode/libusb_release.xcconfig +0 -21
- data/ext/libusb-1.0.20/Xcode/release.xcconfig +0 -30
- data/ext/libusb-1.0.20/aclocal.m4 +0 -1193
- data/ext/libusb-1.0.20/android/README +0 -114
- data/ext/libusb-1.0.20/android/config.h +0 -81
- data/ext/libusb-1.0.20/android/jni/Android.mk +0 -23
- data/ext/libusb-1.0.20/android/jni/Application.mk +0 -24
- data/ext/libusb-1.0.20/android/jni/examples.mk +0 -134
- data/ext/libusb-1.0.20/android/jni/libusb.mk +0 -54
- data/ext/libusb-1.0.20/android/jni/tests.mk +0 -56
- data/ext/libusb-1.0.20/compile +0 -347
- data/ext/libusb-1.0.20/config.guess +0 -1421
- data/ext/libusb-1.0.20/config.h.in +0 -155
- data/ext/libusb-1.0.20/config.sub +0 -1807
- data/ext/libusb-1.0.20/configure +0 -15466
- data/ext/libusb-1.0.20/configure.ac +0 -326
- data/ext/libusb-1.0.20/depcomp +0 -791
- data/ext/libusb-1.0.20/doc/Makefile.am +0 -9
- data/ext/libusb-1.0.20/doc/Makefile.in +0 -456
- data/ext/libusb-1.0.20/doc/doxygen.cfg.in +0 -2334
- data/ext/libusb-1.0.20/examples/Makefile.am +0 -19
- data/ext/libusb-1.0.20/examples/Makefile.in +0 -713
- data/ext/libusb-1.0.20/examples/dpfp.c +0 -506
- data/ext/libusb-1.0.20/examples/dpfp_threaded.c +0 -549
- data/ext/libusb-1.0.20/examples/ezusb.c +0 -831
- data/ext/libusb-1.0.20/examples/ezusb.h +0 -120
- data/ext/libusb-1.0.20/examples/fxload.c +0 -308
- data/ext/libusb-1.0.20/examples/getopt/getopt.c +0 -1060
- data/ext/libusb-1.0.20/examples/getopt/getopt.h +0 -180
- data/ext/libusb-1.0.20/examples/getopt/getopt1.c +0 -188
- data/ext/libusb-1.0.20/examples/hotplugtest.c +0 -122
- data/ext/libusb-1.0.20/examples/listdevs.c +0 -71
- data/ext/libusb-1.0.20/examples/sam3u_benchmark.c +0 -193
- data/ext/libusb-1.0.20/examples/xusb.c +0 -1130
- data/ext/libusb-1.0.20/install-sh +0 -501
- data/ext/libusb-1.0.20/libusb-1.0.pc.in +0 -11
- data/ext/libusb-1.0.20/libusb/Makefile.am +0 -90
- data/ext/libusb-1.0.20/libusb/Makefile.in +0 -1053
- data/ext/libusb-1.0.20/libusb/core.c +0 -2452
- data/ext/libusb-1.0.20/libusb/descriptor.c +0 -1201
- data/ext/libusb-1.0.20/libusb/hotplug.c +0 -344
- data/ext/libusb-1.0.20/libusb/hotplug.h +0 -90
- data/ext/libusb-1.0.20/libusb/io.c +0 -2760
- data/ext/libusb-1.0.20/libusb/libusb-1.0.def +0 -168
- data/ext/libusb-1.0.20/libusb/libusb-1.0.rc +0 -61
- data/ext/libusb-1.0.20/libusb/libusb.h +0 -1999
- data/ext/libusb-1.0.20/libusb/libusbi.h +0 -1102
- data/ext/libusb-1.0.20/libusb/os/darwin_usb.c +0 -1969
- data/ext/libusb-1.0.20/libusb/os/darwin_usb.h +0 -158
- data/ext/libusb-1.0.20/libusb/os/haiku/Makefile.am +0 -5
- data/ext/libusb-1.0.20/libusb/os/haiku/Makefile.in +0 -810
- data/ext/libusb-1.0.20/libusb/os/haiku/aclocal.m4 +0 -1193
- data/ext/libusb-1.0.20/libusb/os/haiku/compile +0 -347
- data/ext/libusb-1.0.20/libusb/os/haiku/config.guess +0 -1421
- data/ext/libusb-1.0.20/libusb/os/haiku/config.sub +0 -1807
- data/ext/libusb-1.0.20/libusb/os/haiku/configure +0 -17579
- data/ext/libusb-1.0.20/libusb/os/haiku/configure.ac +0 -8
- data/ext/libusb-1.0.20/libusb/os/haiku/depcomp +0 -791
- data/ext/libusb-1.0.20/libusb/os/haiku/haiku_pollfs.cpp +0 -378
- data/ext/libusb-1.0.20/libusb/os/haiku/haiku_usb.h +0 -112
- data/ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_backend.cpp +0 -550
- data/ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_raw.cpp +0 -255
- data/ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_raw.h +0 -180
- data/ext/libusb-1.0.20/libusb/os/haiku/install-sh +0 -501
- data/ext/libusb-1.0.20/libusb/os/haiku/ltmain.sh +0 -9655
- data/ext/libusb-1.0.20/libusb/os/haiku/m4/libtool.m4 +0 -7992
- data/ext/libusb-1.0.20/libusb/os/haiku/m4/ltoptions.m4 +0 -384
- data/ext/libusb-1.0.20/libusb/os/haiku/m4/ltsugar.m4 +0 -123
- data/ext/libusb-1.0.20/libusb/os/haiku/m4/ltversion.m4 +0 -23
- data/ext/libusb-1.0.20/libusb/os/haiku/m4/lt~obsolete.m4 +0 -98
- data/ext/libusb-1.0.20/libusb/os/haiku/missing +0 -215
- data/ext/libusb-1.0.20/libusb/os/linux_netlink.c +0 -369
- data/ext/libusb-1.0.20/libusb/os/linux_udev.c +0 -306
- data/ext/libusb-1.0.20/libusb/os/linux_usbfs.c +0 -2692
- data/ext/libusb-1.0.20/libusb/os/linux_usbfs.h +0 -192
- data/ext/libusb-1.0.20/libusb/os/netbsd_usb.c +0 -674
- data/ext/libusb-1.0.20/libusb/os/openbsd_usb.c +0 -768
- data/ext/libusb-1.0.20/libusb/os/poll_posix.c +0 -53
- data/ext/libusb-1.0.20/libusb/os/poll_posix.h +0 -11
- data/ext/libusb-1.0.20/libusb/os/poll_windows.c +0 -728
- data/ext/libusb-1.0.20/libusb/os/poll_windows.h +0 -131
- data/ext/libusb-1.0.20/libusb/os/threads_posix.c +0 -82
- data/ext/libusb-1.0.20/libusb/os/threads_posix.h +0 -50
- data/ext/libusb-1.0.20/libusb/os/threads_windows.c +0 -214
- data/ext/libusb-1.0.20/libusb/os/threads_windows.h +0 -87
- data/ext/libusb-1.0.20/libusb/os/wince_usb.c +0 -869
- data/ext/libusb-1.0.20/libusb/os/wince_usb.h +0 -131
- data/ext/libusb-1.0.20/libusb/os/windows_common.h +0 -108
- data/ext/libusb-1.0.20/libusb/os/windows_usb.c +0 -4643
- data/ext/libusb-1.0.20/libusb/os/windows_usb.h +0 -973
- data/ext/libusb-1.0.20/libusb/strerror.c +0 -202
- data/ext/libusb-1.0.20/libusb/sync.c +0 -308
- data/ext/libusb-1.0.20/libusb/version.h +0 -18
- data/ext/libusb-1.0.20/libusb/version_nano.h +0 -1
- data/ext/libusb-1.0.20/ltmain.sh +0 -9655
- data/ext/libusb-1.0.20/m4/libtool.m4 +0 -7992
- data/ext/libusb-1.0.20/m4/ltoptions.m4 +0 -384
- data/ext/libusb-1.0.20/m4/ltsugar.m4 +0 -123
- data/ext/libusb-1.0.20/m4/ltversion.m4 +0 -23
- data/ext/libusb-1.0.20/m4/lt~obsolete.m4 +0 -98
- data/ext/libusb-1.0.20/missing +0 -215
- data/ext/libusb-1.0.20/tests/Makefile.am +0 -6
- data/ext/libusb-1.0.20/tests/Makefile.in +0 -596
- data/ext/libusb-1.0.20/tests/libusb_testlib.h +0 -107
- data/ext/libusb-1.0.20/tests/stress.c +0 -160
- data/ext/libusb-1.0.20/tests/testlib.c +0 -277
- metadata.gz.sig +0 -0
@@ -32,7 +32,7 @@ class TestLibusbEventMachine < Minitest::Test
|
|
32
32
|
@context = Context.new
|
33
33
|
@context.debug = 3
|
34
34
|
|
35
|
-
@device = context.devices( :
|
35
|
+
@device = context.devices( bClass: CLASS_MASS_STORAGE, bSubClass: [0x06,0x01], bProtocol: 0x50 ).last
|
36
36
|
skip "no mass storage device found" unless @device
|
37
37
|
|
38
38
|
@endpoint_in = @device.endpoints.find{|ep| ep.bEndpointAddress&ENDPOINT_IN != 0 }
|
@@ -70,9 +70,9 @@ class TestLibusbEventMachine < Minitest::Test
|
|
70
70
|
em_run do
|
71
71
|
ticks = 0
|
72
72
|
tr = devh.eventmachine_bulk_transfer(
|
73
|
-
:
|
74
|
-
:
|
75
|
-
:
|
73
|
+
endpoint: @endpoint_in,
|
74
|
+
timeout: 1500,
|
75
|
+
dataIn: 123 )
|
76
76
|
# puts "started usb transfer #{tr}"
|
77
77
|
|
78
78
|
tr.callback do |data|
|
@@ -98,9 +98,9 @@ class TestLibusbEventMachine < Minitest::Test
|
|
98
98
|
def test_event_loop
|
99
99
|
em_run do
|
100
100
|
tr = devh.eventmachine_control_transfer(
|
101
|
-
:
|
102
|
-
:
|
103
|
-
:
|
101
|
+
bmRequestType: ENDPOINT_IN|REQUEST_TYPE_CLASS|RECIPIENT_INTERFACE,
|
102
|
+
bRequest: BOMS_GET_MAX_LUN,
|
103
|
+
wValue: 0, wIndex: 0, dataIn: 1 )
|
104
104
|
|
105
105
|
# puts "started usb transfer #{tr}"
|
106
106
|
tr.callback do |data|
|
data/test/test_libusb_hotplug.rb
CHANGED
@@ -31,7 +31,7 @@ class TestLibusbHotplug < Minitest::Test
|
|
31
31
|
|
32
32
|
def test_enumerate
|
33
33
|
devs = []
|
34
|
-
ctx.on_hotplug_event :
|
34
|
+
ctx.on_hotplug_event flags: HOTPLUG_ENUMERATE do |dev, event|
|
35
35
|
devs << dev
|
36
36
|
assert_equal :HOTPLUG_EVENT_DEVICE_ARRIVED, event
|
37
37
|
:repeat
|
@@ -44,7 +44,7 @@ class TestLibusbHotplug < Minitest::Test
|
|
44
44
|
|
45
45
|
def test_enumerate_with_left
|
46
46
|
devs = []
|
47
|
-
ctx.on_hotplug_event :
|
47
|
+
ctx.on_hotplug_event flags: HOTPLUG_ENUMERATE, events: HOTPLUG_EVENT_DEVICE_LEFT do |dev, event|
|
48
48
|
devs << dev
|
49
49
|
assert_equal :HOTPLUG_EVENT_DEVICE_ARRIVED, event
|
50
50
|
:repeat
|
@@ -65,7 +65,7 @@ class TestLibusbHotplug < Minitest::Test
|
|
65
65
|
|
66
66
|
def test_wrong_yieldreturn
|
67
67
|
ex = assert_raises(ArgumentError) do
|
68
|
-
ctx.on_hotplug_event :
|
68
|
+
ctx.on_hotplug_event flags: :HOTPLUG_ENUMERATE do |dev, event|
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
@@ -112,4 +112,16 @@ class TestLibusbHotplug < Minitest::Test
|
|
112
112
|
assert_operator devs2.map(&:last), :include?, :HOTPLUG_EVENT_DEVICE_ARRIVED, "Should have received ARRIVED"
|
113
113
|
assert_operator devs2.map(&:last), :include?, :HOTPLUG_EVENT_DEVICE_LEFT, "Should have received LEFT"
|
114
114
|
end
|
115
|
+
|
116
|
+
def test_interrupt_event_handler
|
117
|
+
th = Thread.new do
|
118
|
+
ctx.handle_events 5000
|
119
|
+
end
|
120
|
+
|
121
|
+
sleep 0.1 # Workaround a bug in libusb-1,0.21
|
122
|
+
st = Time.now
|
123
|
+
ctx.interrupt_event_handler
|
124
|
+
th.join
|
125
|
+
assert_operator Time.now-st, :<, 5.0
|
126
|
+
end
|
115
127
|
end
|
@@ -34,7 +34,7 @@ class TestLibusbIsoTransfer < Minitest::Test
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def test_iso_transfer
|
37
|
-
tr = IsochronousTransfer.new 10, :
|
37
|
+
tr = IsochronousTransfer.new 10, dev_handle: @dev
|
38
38
|
assert_equal 10, tr.num_packets, "number of packets should match"
|
39
39
|
|
40
40
|
tr.buffer = " "*130
|
@@ -40,7 +40,7 @@ class TestLibusbMassStorage < Minitest::Test
|
|
40
40
|
@usb.debug = 3
|
41
41
|
@asynchron = false
|
42
42
|
|
43
|
-
@device = usb.devices( :
|
43
|
+
@device = usb.devices( bClass: CLASS_MASS_STORAGE, bSubClass: [0x06,0x01], bProtocol: 0x50 ).last
|
44
44
|
skip "no mass storage device found" unless @device
|
45
45
|
|
46
46
|
@endpoint_in = @device.endpoints.find{|ep| ep.bEndpointAddress&ENDPOINT_IN != 0 }
|
@@ -97,10 +97,10 @@ class TestLibusbMassStorage < Minitest::Test
|
|
97
97
|
cbw = ['USBC', expected_tag, data_length, direction, lun, cdb.length, cdb].pack('a*VVCCCa*')
|
98
98
|
cbw = cbw.ljust(31, "\0")
|
99
99
|
|
100
|
-
num_bytes = bulk_transfer(:
|
100
|
+
num_bytes = bulk_transfer(endpoint: endpoint_out, dataOut: cbw)
|
101
101
|
assert_equal 31, num_bytes, "31 bytes CBW should be sent"
|
102
102
|
|
103
|
-
recv = bulk_transfer(:
|
103
|
+
recv = bulk_transfer(endpoint: endpoint_in, dataIn: data_length)
|
104
104
|
|
105
105
|
get_mass_storage_status(expected_tag)
|
106
106
|
return recv
|
@@ -109,7 +109,7 @@ class TestLibusbMassStorage < Minitest::Test
|
|
109
109
|
def get_mass_storage_status(expected_tag)
|
110
110
|
retries = 5
|
111
111
|
buffer = begin
|
112
|
-
bulk_transfer(:
|
112
|
+
bulk_transfer(endpoint: endpoint_in, dataIn: 13)
|
113
113
|
rescue LIBUSB::ERROR_PIPE
|
114
114
|
if (retries-=1)>=0
|
115
115
|
dev.clear_halt(endpoint_in)
|
@@ -167,23 +167,23 @@ class TestLibusbMassStorage < Minitest::Test
|
|
167
167
|
|
168
168
|
def mass_storage_reset
|
169
169
|
res = control_transfer(
|
170
|
-
:
|
171
|
-
:
|
172
|
-
:
|
170
|
+
bmRequestType: ENDPOINT_OUT|REQUEST_TYPE_CLASS|RECIPIENT_INTERFACE,
|
171
|
+
bRequest: BOMS_RESET,
|
172
|
+
wValue: 0, wIndex: 0)
|
173
173
|
assert_equal 0, res, "BOMS_RESET response should be 0 byte"
|
174
174
|
|
175
175
|
res = control_transfer(
|
176
|
-
:
|
177
|
-
:
|
178
|
-
:
|
176
|
+
bmRequestType: ENDPOINT_OUT|REQUEST_TYPE_CLASS|RECIPIENT_INTERFACE,
|
177
|
+
bRequest: BOMS_RESET,
|
178
|
+
wValue: 0, wIndex: 0, dataOut: '')
|
179
179
|
assert_equal 0, res, "BOMS_RESET response should be 0 byte"
|
180
180
|
end
|
181
181
|
|
182
182
|
def read_max_lun
|
183
183
|
res = control_transfer(
|
184
|
-
:
|
185
|
-
:
|
186
|
-
:
|
184
|
+
bmRequestType: ENDPOINT_IN|REQUEST_TYPE_CLASS|RECIPIENT_INTERFACE,
|
185
|
+
bRequest: BOMS_GET_MAX_LUN,
|
186
|
+
wValue: 0, wIndex: 0, dataIn: 1)
|
187
187
|
assert [0].pack("C")==res || [1].pack("C")==res, "BOMS_GET_MAX_LUN response is usually 0 or 1"
|
188
188
|
end
|
189
189
|
|
@@ -217,7 +217,7 @@ class TestLibusbMassStorage < Minitest::Test
|
|
217
217
|
end
|
218
218
|
assert_raises(LIBUSB::ERROR_TIMEOUT) do
|
219
219
|
begin
|
220
|
-
bulk_transfer(:
|
220
|
+
bulk_transfer(endpoint: endpoint_in, dataIn: 123)
|
221
221
|
rescue LIBUSB::ERROR_TIMEOUT => err
|
222
222
|
assert_kind_of String, err.transferred
|
223
223
|
raise
|
@@ -258,11 +258,11 @@ class TestLibusbMassStorage < Minitest::Test
|
|
258
258
|
end
|
259
259
|
|
260
260
|
def test_wrong_argument
|
261
|
-
assert_raises(ArgumentError){ dev.bulk_transfer(:
|
262
|
-
assert_raises(ArgumentError){ dev.interrupt_transfer(:
|
261
|
+
assert_raises(ArgumentError){ dev.bulk_transfer(endpoint: endpoint_in, dataOut: "data") }
|
262
|
+
assert_raises(ArgumentError){ dev.interrupt_transfer(endpoint: endpoint_in, dataOut: "data") }
|
263
263
|
assert_raises(ArgumentError){ dev.control_transfer(
|
264
|
-
:
|
265
|
-
:
|
266
|
-
:
|
264
|
+
bmRequestType: ENDPOINT_OUT|REQUEST_TYPE_CLASS|RECIPIENT_INTERFACE,
|
265
|
+
bRequest: BOMS_RESET,
|
266
|
+
wValue: 0, wIndex: 0, dataIn: 123) }
|
267
267
|
end
|
268
268
|
end
|
@@ -27,7 +27,7 @@ class TestLibusbMassStorage2 < Minitest::Test
|
|
27
27
|
def setup
|
28
28
|
@usb = Context.new
|
29
29
|
@usb.debug = 3
|
30
|
-
@device = usb.devices( :
|
30
|
+
@device = usb.devices( bClass: CLASS_MASS_STORAGE, bSubClass: [0x06,0x01], bProtocol: 0x50 ).last
|
31
31
|
skip "no mass storage device found" unless @device
|
32
32
|
|
33
33
|
@interface = device.interfaces.first
|
data/test/test_libusb_structs.rb
CHANGED
@@ -42,4 +42,17 @@ class TestLibusbStructs < Minitest::Test
|
|
42
42
|
assert_equal false, s.completed?
|
43
43
|
assert_equal 0, s[:completed]
|
44
44
|
end
|
45
|
+
|
46
|
+
def test_Transfer
|
47
|
+
t = LIBUSB::InterruptTransfer.new allow_device_memory: true
|
48
|
+
assert_equal :TRANSFER_COMPLETED, t.status
|
49
|
+
assert_equal true, t.allow_device_memory
|
50
|
+
assert_equal nil, t.memory_type
|
51
|
+
|
52
|
+
t.alloc_buffer(10)
|
53
|
+
assert_equal :user_space, t.memory_type, "no device assigned -> should use memory from user space"
|
54
|
+
|
55
|
+
t.free_buffer
|
56
|
+
assert_equal nil, t.memory_type
|
57
|
+
end
|
45
58
|
end
|
data/test/test_libusb_threads.rb
CHANGED
@@ -34,7 +34,7 @@ class TestLibusbThreads < Minitest::Test
|
|
34
34
|
@usb = Context.new
|
35
35
|
@usb.debug = 3
|
36
36
|
|
37
|
-
@devices = usb.devices( :
|
37
|
+
@devices = usb.devices( bClass: CLASS_MASS_STORAGE, bSubClass: [0x06,0x01], bProtocol: 0x50 )
|
38
38
|
skip "less than two mass storage devices found" unless @devices.length >= 2
|
39
39
|
|
40
40
|
@devs = @devices.map do |device|
|
@@ -71,7 +71,7 @@ class TestLibusbThreads < Minitest::Test
|
|
71
71
|
1.times do
|
72
72
|
st = Time.now
|
73
73
|
assert_raises LIBUSB::ERROR_TIMEOUT do
|
74
|
-
dev.bulk_transfer(:endpoint
|
74
|
+
dev.bulk_transfer(endpoint: endpoint, dataIn: 123, timeout: 100)
|
75
75
|
end
|
76
76
|
assert_operator Time.now-st, :<, 5
|
77
77
|
dev.clear_halt(endpoint)
|
Binary file
|
metadata
CHANGED
@@ -1,50 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libusb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lars Kanis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
-
|
12
|
-
-----BEGIN CERTIFICATE-----
|
13
|
-
MIIDLjCCAhagAwIBAgIBAzANBgkqhkiG9w0BAQUFADA9MQ4wDAYDVQQDDAVrYW5p
|
14
|
-
czEXMBUGCgmSJomT8ixkARkWB2NvbWNhcmQxEjAQBgoJkiaJk/IsZAEZFgJkZTAe
|
15
|
-
Fw0xNTAyMjYxNDIyNDRaFw0xNjAyMjYxNDIyNDRaMD0xDjAMBgNVBAMMBWthbmlz
|
16
|
-
MRcwFQYKCZImiZPyLGQBGRYHY29tY2FyZDESMBAGCgmSJomT8ixkARkWAmRlMIIB
|
17
|
-
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApop+rNmg35bzRugZ21VMGqI6
|
18
|
-
HGzPLO4VHYncWn/xmgPU/ZMcZdfj6MzIaZJ/czXyt4eHpBk1r8QOV3gBXnRXEjVW
|
19
|
-
9xi+EdVOkTV2/AVFKThcbTAQGiF/bT1n2M+B1GTybRzMg6hyhOJeGPqIhLfJEpxn
|
20
|
-
lJi4+ENAVT4MpqHEAGB8yFoPC0GqiOHQsdHxQV3P3c2OZqG+yJey74QtwA2tLcLn
|
21
|
-
Q53c63+VLGsOjODl1yPn/2ejyq8qWu6ahfTxiIlSar2UbwtaQGBDFdb2CXgEufXT
|
22
|
-
L7oaPxlmj+Q2oLOfOnInd2Oxop59HoJCQPsg8f921J43NCQGA8VHK6paxIRDLQID
|
23
|
-
AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUvgTdT7fe
|
24
|
-
x17ugO3IOsjEJwW7KP4wDQYJKoZIhvcNAQEFBQADggEBAE4pDPwv7zV/guo2ZETn
|
25
|
-
V+oVXMvEtUv7lPLpUYTM/g1qHP+mue4vZrhHTZbqEgxZEv03noz/4yIHizMQljED
|
26
|
-
6aUw0DSCQiOtK39LeHE2SfVPnpJdl6R9WX6ObdhNvN3Q9bJL2Ng3TTPidj9on2jO
|
27
|
-
6SevWmI9NMDsupzXOjeuNKbUivcCKgIsp3+qjw1gGURF6eITEM+kxV+u4eC5ah/f
|
28
|
-
iV4wuwAX30bHxaaOA2owy1BJBOHwTl5XBJFKWBf+HlTIGL6yrOjTb+rB+/rSTttv
|
29
|
-
1i6jssufMLmyDB9b1ss72d7xQQpCHH7oizgt84wKAcsV8b83kGbAhtoszY3TgGiJ
|
30
|
-
rww=
|
31
|
-
-----END CERTIFICATE-----
|
32
|
-
date: 2015-09-29 00:00:00.000000000 Z
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-12-09 00:00:00.000000000 Z
|
33
12
|
dependencies:
|
34
13
|
- !ruby/object:Gem::Dependency
|
35
14
|
name: ffi
|
36
15
|
requirement: !ruby/object:Gem::Requirement
|
37
16
|
requirements:
|
38
|
-
- - "
|
17
|
+
- - "~>"
|
39
18
|
- !ruby/object:Gem::Version
|
40
19
|
version: '1.0'
|
41
20
|
type: :runtime
|
42
21
|
prerelease: false
|
43
22
|
version_requirements: !ruby/object:Gem::Requirement
|
44
23
|
requirements:
|
45
|
-
- - "
|
24
|
+
- - "~>"
|
46
25
|
- !ruby/object:Gem::Version
|
47
26
|
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: mini_portile2
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.1'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.1'
|
48
41
|
- !ruby/object:Gem::Dependency
|
49
42
|
name: rake-compiler
|
50
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -77,16 +70,16 @@ dependencies:
|
|
77
70
|
name: bundler
|
78
71
|
requirement: !ruby/object:Gem::Requirement
|
79
72
|
requirements:
|
80
|
-
- - "
|
73
|
+
- - "~>"
|
81
74
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
75
|
+
version: '1.0'
|
83
76
|
type: :development
|
84
77
|
prerelease: false
|
85
78
|
version_requirements: !ruby/object:Gem::Requirement
|
86
79
|
requirements:
|
87
|
-
- - "
|
80
|
+
- - "~>"
|
88
81
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
82
|
+
version: '1.0'
|
90
83
|
description: LIBUSB is a Ruby binding that gives Ruby programmers access to arbitrary
|
91
84
|
USB devices
|
92
85
|
email:
|
@@ -104,129 +97,9 @@ files:
|
|
104
97
|
- History.md
|
105
98
|
- README.md
|
106
99
|
- Rakefile
|
100
|
+
- appveyor.yml
|
107
101
|
- ext/extconf.rb
|
108
|
-
- ext/
|
109
|
-
- ext/libusb-1.0.20/COPYING
|
110
|
-
- ext/libusb-1.0.20/ChangeLog
|
111
|
-
- ext/libusb-1.0.20/INSTALL
|
112
|
-
- ext/libusb-1.0.20/Makefile.am
|
113
|
-
- ext/libusb-1.0.20/Makefile.in
|
114
|
-
- ext/libusb-1.0.20/NEWS
|
115
|
-
- ext/libusb-1.0.20/PORTING
|
116
|
-
- ext/libusb-1.0.20/README
|
117
|
-
- ext/libusb-1.0.20/TODO
|
118
|
-
- ext/libusb-1.0.20/Xcode/common.xcconfig
|
119
|
-
- ext/libusb-1.0.20/Xcode/config.h
|
120
|
-
- ext/libusb-1.0.20/Xcode/debug.xcconfig
|
121
|
-
- ext/libusb-1.0.20/Xcode/libusb.xcconfig
|
122
|
-
- ext/libusb-1.0.20/Xcode/libusb.xcodeproj/project.pbxproj
|
123
|
-
- ext/libusb-1.0.20/Xcode/libusb_debug.xcconfig
|
124
|
-
- ext/libusb-1.0.20/Xcode/libusb_release.xcconfig
|
125
|
-
- ext/libusb-1.0.20/Xcode/release.xcconfig
|
126
|
-
- ext/libusb-1.0.20/aclocal.m4
|
127
|
-
- ext/libusb-1.0.20/android/README
|
128
|
-
- ext/libusb-1.0.20/android/config.h
|
129
|
-
- ext/libusb-1.0.20/android/jni/Android.mk
|
130
|
-
- ext/libusb-1.0.20/android/jni/Application.mk
|
131
|
-
- ext/libusb-1.0.20/android/jni/examples.mk
|
132
|
-
- ext/libusb-1.0.20/android/jni/libusb.mk
|
133
|
-
- ext/libusb-1.0.20/android/jni/tests.mk
|
134
|
-
- ext/libusb-1.0.20/compile
|
135
|
-
- ext/libusb-1.0.20/config.guess
|
136
|
-
- ext/libusb-1.0.20/config.h.in
|
137
|
-
- ext/libusb-1.0.20/config.sub
|
138
|
-
- ext/libusb-1.0.20/configure
|
139
|
-
- ext/libusb-1.0.20/configure.ac
|
140
|
-
- ext/libusb-1.0.20/depcomp
|
141
|
-
- ext/libusb-1.0.20/doc/Makefile.am
|
142
|
-
- ext/libusb-1.0.20/doc/Makefile.in
|
143
|
-
- ext/libusb-1.0.20/doc/doxygen.cfg.in
|
144
|
-
- ext/libusb-1.0.20/examples/Makefile.am
|
145
|
-
- ext/libusb-1.0.20/examples/Makefile.in
|
146
|
-
- ext/libusb-1.0.20/examples/dpfp.c
|
147
|
-
- ext/libusb-1.0.20/examples/dpfp_threaded.c
|
148
|
-
- ext/libusb-1.0.20/examples/ezusb.c
|
149
|
-
- ext/libusb-1.0.20/examples/ezusb.h
|
150
|
-
- ext/libusb-1.0.20/examples/fxload.c
|
151
|
-
- ext/libusb-1.0.20/examples/getopt/getopt.c
|
152
|
-
- ext/libusb-1.0.20/examples/getopt/getopt.h
|
153
|
-
- ext/libusb-1.0.20/examples/getopt/getopt1.c
|
154
|
-
- ext/libusb-1.0.20/examples/hotplugtest.c
|
155
|
-
- ext/libusb-1.0.20/examples/listdevs.c
|
156
|
-
- ext/libusb-1.0.20/examples/sam3u_benchmark.c
|
157
|
-
- ext/libusb-1.0.20/examples/xusb.c
|
158
|
-
- ext/libusb-1.0.20/install-sh
|
159
|
-
- ext/libusb-1.0.20/libusb-1.0.pc.in
|
160
|
-
- ext/libusb-1.0.20/libusb/Makefile.am
|
161
|
-
- ext/libusb-1.0.20/libusb/Makefile.in
|
162
|
-
- ext/libusb-1.0.20/libusb/core.c
|
163
|
-
- ext/libusb-1.0.20/libusb/descriptor.c
|
164
|
-
- ext/libusb-1.0.20/libusb/hotplug.c
|
165
|
-
- ext/libusb-1.0.20/libusb/hotplug.h
|
166
|
-
- ext/libusb-1.0.20/libusb/io.c
|
167
|
-
- ext/libusb-1.0.20/libusb/libusb-1.0.def
|
168
|
-
- ext/libusb-1.0.20/libusb/libusb-1.0.rc
|
169
|
-
- ext/libusb-1.0.20/libusb/libusb.h
|
170
|
-
- ext/libusb-1.0.20/libusb/libusbi.h
|
171
|
-
- ext/libusb-1.0.20/libusb/os/darwin_usb.c
|
172
|
-
- ext/libusb-1.0.20/libusb/os/darwin_usb.h
|
173
|
-
- ext/libusb-1.0.20/libusb/os/haiku/Makefile.am
|
174
|
-
- ext/libusb-1.0.20/libusb/os/haiku/Makefile.in
|
175
|
-
- ext/libusb-1.0.20/libusb/os/haiku/aclocal.m4
|
176
|
-
- ext/libusb-1.0.20/libusb/os/haiku/compile
|
177
|
-
- ext/libusb-1.0.20/libusb/os/haiku/config.guess
|
178
|
-
- ext/libusb-1.0.20/libusb/os/haiku/config.sub
|
179
|
-
- ext/libusb-1.0.20/libusb/os/haiku/configure
|
180
|
-
- ext/libusb-1.0.20/libusb/os/haiku/configure.ac
|
181
|
-
- ext/libusb-1.0.20/libusb/os/haiku/depcomp
|
182
|
-
- ext/libusb-1.0.20/libusb/os/haiku/haiku_pollfs.cpp
|
183
|
-
- ext/libusb-1.0.20/libusb/os/haiku/haiku_usb.h
|
184
|
-
- ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_backend.cpp
|
185
|
-
- ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_raw.cpp
|
186
|
-
- ext/libusb-1.0.20/libusb/os/haiku/haiku_usb_raw.h
|
187
|
-
- ext/libusb-1.0.20/libusb/os/haiku/install-sh
|
188
|
-
- ext/libusb-1.0.20/libusb/os/haiku/ltmain.sh
|
189
|
-
- ext/libusb-1.0.20/libusb/os/haiku/m4/libtool.m4
|
190
|
-
- ext/libusb-1.0.20/libusb/os/haiku/m4/ltoptions.m4
|
191
|
-
- ext/libusb-1.0.20/libusb/os/haiku/m4/ltsugar.m4
|
192
|
-
- ext/libusb-1.0.20/libusb/os/haiku/m4/ltversion.m4
|
193
|
-
- ext/libusb-1.0.20/libusb/os/haiku/m4/lt~obsolete.m4
|
194
|
-
- ext/libusb-1.0.20/libusb/os/haiku/missing
|
195
|
-
- ext/libusb-1.0.20/libusb/os/linux_netlink.c
|
196
|
-
- ext/libusb-1.0.20/libusb/os/linux_udev.c
|
197
|
-
- ext/libusb-1.0.20/libusb/os/linux_usbfs.c
|
198
|
-
- ext/libusb-1.0.20/libusb/os/linux_usbfs.h
|
199
|
-
- ext/libusb-1.0.20/libusb/os/netbsd_usb.c
|
200
|
-
- ext/libusb-1.0.20/libusb/os/openbsd_usb.c
|
201
|
-
- ext/libusb-1.0.20/libusb/os/poll_posix.c
|
202
|
-
- ext/libusb-1.0.20/libusb/os/poll_posix.h
|
203
|
-
- ext/libusb-1.0.20/libusb/os/poll_windows.c
|
204
|
-
- ext/libusb-1.0.20/libusb/os/poll_windows.h
|
205
|
-
- ext/libusb-1.0.20/libusb/os/threads_posix.c
|
206
|
-
- ext/libusb-1.0.20/libusb/os/threads_posix.h
|
207
|
-
- ext/libusb-1.0.20/libusb/os/threads_windows.c
|
208
|
-
- ext/libusb-1.0.20/libusb/os/threads_windows.h
|
209
|
-
- ext/libusb-1.0.20/libusb/os/wince_usb.c
|
210
|
-
- ext/libusb-1.0.20/libusb/os/wince_usb.h
|
211
|
-
- ext/libusb-1.0.20/libusb/os/windows_common.h
|
212
|
-
- ext/libusb-1.0.20/libusb/os/windows_usb.c
|
213
|
-
- ext/libusb-1.0.20/libusb/os/windows_usb.h
|
214
|
-
- ext/libusb-1.0.20/libusb/strerror.c
|
215
|
-
- ext/libusb-1.0.20/libusb/sync.c
|
216
|
-
- ext/libusb-1.0.20/libusb/version.h
|
217
|
-
- ext/libusb-1.0.20/libusb/version_nano.h
|
218
|
-
- ext/libusb-1.0.20/ltmain.sh
|
219
|
-
- ext/libusb-1.0.20/m4/libtool.m4
|
220
|
-
- ext/libusb-1.0.20/m4/ltoptions.m4
|
221
|
-
- ext/libusb-1.0.20/m4/ltsugar.m4
|
222
|
-
- ext/libusb-1.0.20/m4/ltversion.m4
|
223
|
-
- ext/libusb-1.0.20/m4/lt~obsolete.m4
|
224
|
-
- ext/libusb-1.0.20/missing
|
225
|
-
- ext/libusb-1.0.20/tests/Makefile.am
|
226
|
-
- ext/libusb-1.0.20/tests/Makefile.in
|
227
|
-
- ext/libusb-1.0.20/tests/libusb_testlib.h
|
228
|
-
- ext/libusb-1.0.20/tests/stress.c
|
229
|
-
- ext/libusb-1.0.20/tests/testlib.c
|
102
|
+
- ext/libusb_recipe.rb
|
230
103
|
- lib/libusb.rb
|
231
104
|
- lib/libusb/bos.rb
|
232
105
|
- lib/libusb/call.rb
|
@@ -234,6 +107,7 @@ files:
|
|
234
107
|
- lib/libusb/configuration.rb
|
235
108
|
- lib/libusb/constants.rb
|
236
109
|
- lib/libusb/context.rb
|
110
|
+
- lib/libusb/dependencies.rb
|
237
111
|
- lib/libusb/dev_handle.rb
|
238
112
|
- lib/libusb/device.rb
|
239
113
|
- lib/libusb/endpoint.rb
|
@@ -246,6 +120,7 @@ files:
|
|
246
120
|
- lib/libusb/version_gem.rb
|
247
121
|
- lib/libusb/version_struct.rb
|
248
122
|
- libusb.gemspec
|
123
|
+
- ports/archives/libusb-1.0.21.tar.bz2
|
249
124
|
- test/test_libusb_bos.rb
|
250
125
|
- test/test_libusb_bulk_stream_transfer.rb
|
251
126
|
- test/test_libusb_capability.rb
|
@@ -261,9 +136,10 @@ files:
|
|
261
136
|
- test/test_libusb_structs.rb
|
262
137
|
- test/test_libusb_threads.rb
|
263
138
|
- test/test_libusb_version.rb
|
139
|
+
- wireshark-usb-sniffer.png
|
264
140
|
homepage: http://github.com/larskanis/libusb
|
265
141
|
licenses:
|
266
|
-
- LGPL-3
|
142
|
+
- LGPL-3.0
|
267
143
|
metadata: {}
|
268
144
|
post_install_message:
|
269
145
|
rdoc_options:
|
@@ -276,15 +152,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
276
152
|
requirements:
|
277
153
|
- - ">="
|
278
154
|
- !ruby/object:Gem::Version
|
279
|
-
version:
|
155
|
+
version: 1.9.3
|
280
156
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
281
157
|
requirements:
|
282
158
|
- - ">="
|
283
159
|
- !ruby/object:Gem::Version
|
284
160
|
version: '0'
|
285
161
|
requirements: []
|
286
|
-
rubyforge_project:
|
287
|
-
rubygems_version: 2.
|
162
|
+
rubyforge_project:
|
163
|
+
rubygems_version: 2.5.2
|
288
164
|
signing_key:
|
289
165
|
specification_version: 4
|
290
166
|
summary: Access USB devices from Ruby via libusb-1.0
|