linux_stat 1.2.1 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db7b5a4cde62bdc8a2c2aec1e6a2cfb97ab3469a237db98f2377ba168db38fd5
4
- data.tar.gz: 534fa6f2e7187dea5462b2a9a829c78a4fc4e56eae772f8d69edb61fef52788e
3
+ metadata.gz: d883007405e198d66cdf5f9cd03dc630b6e02d3d0c3a54ff33322a9562fcaa4e
4
+ data.tar.gz: c353965cff2a9c0de891cd8ba6d4f0272520b3b40cf48525f802867142855fb7
5
5
  SHA512:
6
- metadata.gz: 8bc02b02a355b03a100c59dd91bf813129a415ead5afeccaa4ffe7fcc835c2c501aae2431ca130be1ebc6b8e9fbc5950b39b9cd7cc1aa6a00f98086bfb905a03
7
- data.tar.gz: 6a8ebfa70153fec9e77f8a7756e41ce81bd19851dad4f6bb7fe9f267a1af36d38525bae23e206e420458272fe8369f96373ec01dd3ce2c6a950bd9a62cde9428
6
+ metadata.gz: affabda2ed39158a40d12710810d5f604bab1c621e55accdc363d3392fd2e651ee860b0abb0dff1d0317e6bd85e045b68a963ea939b04f765fc276517ac039cb
7
+ data.tar.gz: 286647ecf50f14f62d37efbd9d2c81cbbf2a79b7b0365fc6c1f96bb3064f0cf3bd2d89fae45e6fcb63442cf563063f6340e295720525bb4f02860b4022856715
@@ -130,70 +130,73 @@ module LinuxStat
130
130
  return devices_info(hwdata: hwdata) unless @@sys_pci_readable
131
131
 
132
132
  Dir['/sys/bus/pci/devices/*/'.freeze].sort!.map! { |x|
133
- _vendor_file = File.join(x, 'vendor'.freeze)
134
- next unless File.readable?(_vendor_file)
135
- vendor = IO.read(_vendor_file).to_i(16).to_s(16)
136
- prepend_0(vendor)
137
-
138
- _device_file = File.join(x, 'device'.freeze)
139
- next unless File.readable?(_device_file)
140
- device = IO.read(_device_file).to_i(16).to_s(16)
141
- prepend_0(device)
142
-
143
- _sub_vendor_file = File.join(x, 'subsystem_vendor'.freeze)
144
- sub_vendor = File.readable?(_sub_vendor_file) ? IO.read(_sub_vendor_file).to_i(16).to_s(16) : nil
145
- prepend_0(sub_vendor) if sub_vendor
146
-
147
- _sub_device_file = File.join(x, 'subsystem_device'.freeze)
148
- sub_device = File.readable?(_sub_device_file) ? IO.read(_sub_device_file).to_i(16).to_s(16) : nil
149
- prepend_0(sub_device) if sub_device
150
-
151
- _uevent = File.join(x, 'uevent'.freeze)
152
- uevent = File.readable?(_uevent) ? IO.foreach(_uevent) : nil
153
-
154
- kernel_driver = if uevent
155
- uevent.find { |_x|
156
- _x.split(?=.freeze)[0].to_s.tap(&:strip!) == 'DRIVER'.freeze
157
- } &.split(?=) &.[](1) &.tap(&:strip!)
158
- else
159
- nil
160
- end
133
+ begin
134
+ _vendor_file = File.join(x, 'vendor'.freeze)
135
+ next unless File.readable?(_vendor_file)
136
+ vendor = IO.read(_vendor_file).to_i(16).to_s(16)
137
+ prepend_0(vendor)
138
+
139
+ _device_file = File.join(x, 'device'.freeze)
140
+ next unless File.readable?(_device_file)
141
+ device = IO.read(_device_file).to_i(16).to_s(16)
142
+ prepend_0(device)
143
+
144
+ _sub_vendor_file = File.join(x, 'subsystem_vendor'.freeze)
145
+ sub_vendor = File.readable?(_sub_vendor_file) ? IO.read(_sub_vendor_file).to_i(16).to_s(16) : nil
146
+ prepend_0(sub_vendor) if sub_vendor
147
+
148
+ _sub_device_file = File.join(x, 'subsystem_device'.freeze)
149
+ sub_device = File.readable?(_sub_device_file) ? IO.read(_sub_device_file).to_i(16).to_s(16) : nil
150
+ prepend_0(sub_device) if sub_device
151
+
152
+ _uevent = File.join(x, 'uevent'.freeze)
153
+ uevent = File.readable?(_uevent) ? IO.foreach(_uevent) : nil
154
+
155
+ kernel_driver = if uevent
156
+ uevent.find { |_x|
157
+ _x.split(?=.freeze)[0].to_s.tap(&:strip!) == 'DRIVER'.freeze
158
+ } &.split(?=) &.[](1) &.tap(&:strip!)
159
+ else
160
+ nil
161
+ end
161
162
 
162
- _revision_file = File.join(x, 'revision'.freeze)
163
- revision = File.readable?(_revision_file) ? IO.read(_revision_file).tap(&:strip!) : ''.freeze
163
+ _revision_file = File.join(x, 'revision'.freeze)
164
+ revision = File.readable?(_revision_file) ? IO.read(_revision_file).tap(&:strip!) : ''.freeze
164
165
 
165
- _irq_file = File.join(x, 'irq'.freeze)
166
- irq = File.readable?(_irq_file) ? IO.read(_irq_file).to_i : nil
166
+ _irq_file = File.join(x, 'irq'.freeze)
167
+ irq = File.readable?(_irq_file) ? IO.read(_irq_file).to_i : nil
167
168
 
168
- _enable_file = File.join(x, 'enable'.freeze)
169
- enable = File.readable?(_enable_file) ? IO.read(_enable_file).to_i == 1 : nil
169
+ _enable_file = File.join(x, 'enable'.freeze)
170
+ enable = File.readable?(_enable_file) ? IO.read(_enable_file).to_i == 1 : nil
170
171
 
171
- query = if hwdata && sub_vendor && sub_device
172
- query_hwdata(vendor, device, sub_vendor, sub_device)
173
- elsif hwdata && sub_vendor
174
- query_hwdata(vendor, device, sub_vendor)
175
- elsif hwdata
176
- query_hwdata(vendor, device)
177
- else
178
- {}
179
- end
172
+ query = if hwdata && sub_vendor && sub_device
173
+ query_hwdata(vendor, device, sub_vendor, sub_device)
174
+ elsif hwdata && sub_vendor
175
+ query_hwdata(vendor, device, sub_vendor)
176
+ elsif hwdata
177
+ query_hwdata(vendor, device)
178
+ else
179
+ {}
180
+ end
180
181
 
181
- ret = {
182
- path: x, id: "#{vendor}:#{device}",
183
- vendor: vendor, device: device
184
- }
182
+ ret = {
183
+ path: x, id: "#{vendor}:#{device}",
184
+ vendor: vendor, device: device
185
+ }
185
186
 
186
- ret.merge!(sub_vendor: sub_vendor) if sub_vendor
187
- ret.merge!(sub_device: sub_device) if sub_device
187
+ ret.merge!(sub_vendor: sub_vendor) if sub_vendor
188
+ ret.merge!(sub_device: sub_device) if sub_device
188
189
 
189
- ret.merge!(kernel_driver: kernel_driver) if kernel_driver
190
- ret.merge!(revision: revision) unless revision.empty?
191
- ret.merge!(irq: irq) if irq
192
- ret.merge!(enable: enable) unless enable.nil?
193
- ret.merge!(hwdata: query) unless query.empty?
190
+ ret.merge!(kernel_driver: kernel_driver) if kernel_driver
191
+ ret.merge!(revision: revision) unless revision.empty?
192
+ ret.merge!(irq: irq) if irq
193
+ ret.merge!(enable: enable) unless enable.nil?
194
+ ret.merge!(hwdata: query) unless query.empty?
194
195
 
195
- ret
196
- }
196
+ ret
197
+ rescue StandardError
198
+ end
199
+ }.tap(&:compact!)
197
200
  end
198
201
 
199
202
  ##
@@ -49,72 +49,75 @@ module LinuxStat
49
49
  return [] unless @@sys_usb_readable
50
50
 
51
51
  Dir['/sys/bus/usb/devices/*/'.freeze].sort!.map! { |x|
52
- id_vendor_file = File.join(x, 'idVendor'.freeze)
53
- next unless File.readable?(id_vendor_file)
54
- id_vendor = IO.read(id_vendor_file).strip
52
+ begin
53
+ id_vendor_file = File.join(x, 'idVendor'.freeze)
54
+ next unless File.readable?(id_vendor_file)
55
+ id_vendor = IO.read(id_vendor_file).strip
55
56
 
56
- id_product_file = File.join(x, 'idProduct'.freeze)
57
- next unless File.readable?(id_vendor_file)
58
- id_product = IO.read(id_product_file).strip
57
+ id_product_file = File.join(x, 'idProduct'.freeze)
58
+ next unless File.readable?(id_vendor_file)
59
+ id_product = IO.read(id_product_file).strip
59
60
 
60
- bus_num_file = File.join(x, 'busnum'.freeze)
61
- bus_num = File.readable?(bus_num_file) ? IO.read(bus_num_file).strip : ''.freeze
61
+ bus_num_file = File.join(x, 'busnum'.freeze)
62
+ bus_num = File.readable?(bus_num_file) ? IO.read(bus_num_file).strip : ''.freeze
62
63
 
63
- dev_num_file = File.join(x, 'devnum'.freeze)
64
- dev_num = File.readable?(dev_num_file) ? IO.read(dev_num_file).strip : ''.freeze
64
+ dev_num_file = File.join(x, 'devnum'.freeze)
65
+ dev_num = File.readable?(dev_num_file) ? IO.read(dev_num_file).strip : ''.freeze
65
66
 
66
- serial_file = File.join(x, 'serial'.freeze)
67
- serial = File.readable?(serial_file) ? IO.read(serial_file).strip : ''.freeze
67
+ serial_file = File.join(x, 'serial'.freeze)
68
+ serial = File.readable?(serial_file) ? IO.read(serial_file).strip : ''.freeze
68
69
 
69
- product_file = File.join(x, 'product'.freeze)
70
- product = File.readable?(product_file) ? IO.read(product_file).strip : ''.freeze
70
+ product_file = File.join(x, 'product'.freeze)
71
+ product = File.readable?(product_file) ? IO.read(product_file).strip : ''.freeze
71
72
 
72
- manufacturer_file = File.join(x, 'manufacturer'.freeze)
73
- manufacturer = File.readable?(manufacturer_file) ? IO.read(manufacturer_file).strip : ''.freeze
73
+ manufacturer_file = File.join(x, 'manufacturer'.freeze)
74
+ manufacturer = File.readable?(manufacturer_file) ? IO.read(manufacturer_file).strip : ''.freeze
74
75
 
75
- removable_file = File.join(x, 'removable'.freeze)
76
- removable = File.readable?(removable_file) ? IO.read(removable_file).strip.downcase : ''.freeze
76
+ removable_file = File.join(x, 'removable'.freeze)
77
+ removable = File.readable?(removable_file) ? IO.read(removable_file).strip.downcase : ''.freeze
77
78
 
78
- authorized_file = File.join(x, 'authorized'.freeze)
79
- authorized = File.readable?(authorized_file) ? IO.read(authorized_file).to_i : ''.freeze
79
+ authorized_file = File.join(x, 'authorized'.freeze)
80
+ authorized = File.readable?(authorized_file) ? IO.read(authorized_file).to_i : ''.freeze
80
81
 
81
- b_max_power_file = File.join(x, 'bMaxPower'.freeze)
82
- b_max_power = File.readable?(b_max_power_file) ? IO.read(b_max_power_file).strip : ''.freeze
82
+ b_max_power_file = File.join(x, 'bMaxPower'.freeze)
83
+ b_max_power = File.readable?(b_max_power_file) ? IO.read(b_max_power_file).strip : ''.freeze
83
84
 
84
- b_max_packet_size0_file = File.join(x, 'bMaxPacketSize0'.freeze)
85
- b_max_packet_size0 = File.readable?(b_max_packet_size0_file) ? IO.read(b_max_packet_size0_file).to_i : ''.freeze
85
+ b_max_packet_size0_file = File.join(x, 'bMaxPacketSize0'.freeze)
86
+ b_max_packet_size0 = File.readable?(b_max_packet_size0_file) ? IO.read(b_max_packet_size0_file).to_i : ''.freeze
86
87
 
87
- query = hwdata ? query_hwdata(id_vendor, id_product) : {}
88
+ query = hwdata ? query_hwdata(id_vendor, id_product) : {}
88
89
 
89
- is_removable = if removable == 'removable'.freeze
90
- true
91
- elsif removable == 'unknown'.freeze
92
- nil
93
- else
94
- false
95
- end
90
+ is_removable = if removable == 'removable'.freeze
91
+ true
92
+ elsif removable == 'unknown'.freeze
93
+ nil
94
+ else
95
+ false
96
+ end
96
97
 
97
- ret = {
98
- path: x, id: "#{id_vendor}:#{id_product}",
99
- vendor_id: id_vendor, product_id: id_product
100
- }
98
+ ret = {
99
+ path: x, id: "#{id_vendor}:#{id_product}",
100
+ vendor_id: id_vendor, product_id: id_product
101
+ }
101
102
 
102
- ret.merge!(bus_num: bus_num.to_i) unless bus_num.empty?
103
- ret.merge!(dev_num: dev_num.to_i) unless dev_num.empty?
103
+ ret.merge!(bus_num: bus_num.to_i) unless bus_num.empty?
104
+ ret.merge!(dev_num: dev_num.to_i) unless dev_num.empty?
104
105
 
105
- ret.merge!(serial: serial) unless serial.empty?
106
+ ret.merge!(serial: serial) unless serial.empty?
106
107
 
107
- ret.merge!(hwdata: query) unless query.empty?
108
- ret.merge!(product: product) unless product.empty?
109
- ret.merge!(manufacturer: manufacturer) unless manufacturer.empty?
108
+ ret.merge!(hwdata: query) unless query.empty?
109
+ ret.merge!(product: product) unless product.empty?
110
+ ret.merge!(manufacturer: manufacturer) unless manufacturer.empty?
110
111
 
111
- ret.merge!(removable: is_removable) unless is_removable.nil?
112
- ret.merge!(authorized: authorized == 1)
112
+ ret.merge!(removable: is_removable) unless is_removable.nil?
113
+ ret.merge!(authorized: authorized == 1)
113
114
 
114
- ret.merge!(b_max_power: b_max_power) unless b_max_power.empty?
115
- ret.merge!(b_max_packet_size0: b_max_packet_size0) if b_max_packet_size0
115
+ ret.merge!(b_max_power: b_max_power) unless b_max_power.empty?
116
+ ret.merge!(b_max_packet_size0: b_max_packet_size0) if b_max_packet_size0
116
117
 
117
- ret
118
+ ret
119
+ rescue StandardError
120
+ end
118
121
  }.tap(&:compact!)
119
122
  end
120
123
 
@@ -1,3 +1,3 @@
1
1
  module LinuxStat
2
- VERSION ||= "1.2.1"
2
+ VERSION ||= "1.2.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: linux_stat
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sourav Goswami