snmp 0.6.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README CHANGED
@@ -25,6 +25,11 @@ examples below for more details.
25
25
 
26
26
  == Changes
27
27
 
28
+ Changes for version 0.6.1:
29
+
30
+ * Made decoding of unsigned integers more liberal, so that they are interpreted as positive integers even if the high bit is set.
31
+ * Added support for receiving InformRequest PDUs from the TrapListener class.
32
+
28
33
  Changes for version 0.6.0:
29
34
 
30
35
  * Added support for sending informs and traps for SNMPv2c and traps for
data/Rakefile CHANGED
@@ -9,7 +9,7 @@ Rake::TestTask.new do |test|
9
9
  end
10
10
 
11
11
  # package target
12
- PKG_VERSION = '0.6.0'
12
+ PKG_VERSION = '0.6.1'
13
13
  PKG_FILES = FileList[
14
14
  'Rakefile',
15
15
  'README',
@@ -40,7 +40,7 @@ end
40
40
 
41
41
  Rake::GemPackageTask.new(spec) do |package|
42
42
  package.need_zip = true
43
- # package.need_tar = true
43
+ package.need_tar = true
44
44
  end
45
45
 
46
46
  # rdoc, clobber_rdoc, rerdoc targets
@@ -117,7 +117,7 @@ module BER #:nodoc:all
117
117
  def decode_timeticks(data)
118
118
  tag, value, remainder = decode_tlv(data)
119
119
  raise InvalidTag, tag.to_s if tag != TimeTicks_TAG
120
- return decode_integer_value(value), remainder
120
+ return decode_uinteger_value(value), remainder
121
121
  end
122
122
 
123
123
  def decode_integer_value(value)
@@ -128,6 +128,15 @@ module BER #:nodoc:all
128
128
  result
129
129
  end
130
130
 
131
+ ##
132
+ # Decode an integer, ignoring the sign bit. Some agents insist on
133
+ # encoding 32 bit unsigned integers with four bytes even though it
134
+ # should be 5 bytes (at least the way I read it).
135
+ #
136
+ def decode_uinteger_value(value)
137
+ build_integer(value, 0, value.length)
138
+ end
139
+
131
140
  def build_integer(data, start, num_octets)
132
141
  number = 0
133
142
  num_octets.times { |i| number = number<<8 | data[start+i] }
@@ -502,18 +502,23 @@ class UDPServerTransport
502
502
  def close
503
503
  @socket.close
504
504
  end
505
+
506
+ def send(data, host, port)
507
+ @socket.send(data, 0, host, port)
508
+ end
505
509
 
506
510
  def recvfrom(max_bytes)
507
511
  data, host_info = @socket.recvfrom(max_bytes)
508
- flags, host_socket, host_name, host_ip = host_info
509
- return data, host_ip
512
+ flags, host_port, host_name, host_ip = host_info
513
+ return data, host_ip, host_port
510
514
  end
511
515
  end
512
516
 
513
517
  ##
514
518
  # == SNMP Trap Listener
515
519
  #
516
- # Listens to a socket and processes received traps in a separate thread.
520
+ # Listens to a socket and processes received traps and informs in a separate
521
+ # thread.
517
522
  #
518
523
  # === Example
519
524
  #
@@ -591,7 +596,9 @@ class TrapListener
591
596
 
592
597
  ##
593
598
  # Define a trap handler block for all SNMPv2c traps. The trap yielded
594
- # to the block will always be an SNMPv2_Trap.
599
+ # to the block will always be an SNMPv2_Trap. Note that InformRequest
600
+ # is a subclass of SNMPv2_Trap, so inform PDUs are also received by
601
+ # this handler.
595
602
  #
596
603
  def on_trap_v2c(&block)
597
604
  raise ArgumentError, "a block must be provided" unless block
@@ -625,11 +632,14 @@ class TrapListener
625
632
  def process_traps(trap_listener)
626
633
  @handler_init.call(trap_listener) if @handler_init
627
634
  loop do
628
- data, source_ip = @transport.recvfrom(@max_bytes)
635
+ data, source_ip, source_port = @transport.recvfrom(@max_bytes)
629
636
  begin
630
637
  message = Message.decode(data)
631
638
  if @config[:Community] == message.community
632
639
  trap = message.pdu
640
+ if trap.kind_of?(InformRequest)
641
+ @transport.send(message.response.encode, source_ip, source_port)
642
+ end
633
643
  trap.source_ip = source_ip
634
644
  select_handler(trap).call(trap)
635
645
  end
@@ -311,13 +311,13 @@ class UnsignedInteger < Integer
311
311
  raise ArgumentError, "Negative integer invalid: #{value}" if value < 0
312
312
  raise ArgumentError, "Out of range: #{value}" if value > 4294967295
313
313
  end
314
+
315
+ def self.decode(value_data)
316
+ self.new(decode_uinteger_value(value_data))
317
+ end
314
318
  end
315
319
 
316
320
  class Counter32 < UnsignedInteger
317
- def self.decode(value_data)
318
- Counter32.new(decode_integer_value(value_data))
319
- end
320
-
321
321
  def asn1_type
322
322
  "Counter32"
323
323
  end
@@ -328,10 +328,6 @@ class Counter32 < UnsignedInteger
328
328
  end
329
329
 
330
330
  class Gauge32 < UnsignedInteger
331
- def self.decode(value_data)
332
- Gauge32.new(decode_integer_value(value_data))
333
- end
334
-
335
331
  def asn1_type
336
332
  "Gauge32"
337
333
  end
@@ -342,10 +338,6 @@ class Gauge32 < UnsignedInteger
342
338
  end
343
339
 
344
340
  class Unsigned32 < UnsignedInteger
345
- def self.decode(value_data)
346
- Unsigned32.new(decode_integer_value(value_data))
347
- end
348
-
349
341
  def asn1_type
350
342
  "Unsigned32"
351
343
  end
@@ -356,10 +348,6 @@ class Unsigned32 < UnsignedInteger
356
348
  end
357
349
 
358
350
  class TimeTicks < UnsignedInteger
359
- def self.decode(value_data)
360
- TimeTicks.new(decode_integer_value(value_data))
361
- end
362
-
363
351
  def asn1_type
364
352
  "TimeTicks"
365
353
  end
@@ -154,17 +154,18 @@ class TestProtocol < Test::Unit::TestCase
154
154
  agent_addr = IpAddress.new("1.2.3.4")
155
155
  generic_trap = :linkDown
156
156
  specific_trap = 0
157
- timestamp = TimeTicks.new(1234)
157
+ timestamp = TimeTicks.new(2176117721)
158
158
  varbinds = VarBindList.new([VarBind.new("1.3.6.2", Integer.new(1))])
159
159
  trap = SNMPv1_Trap.new(enterprise, agent_addr, generic_trap, specific_trap, timestamp, varbinds)
160
- assert_equal("\244\"\006\004+\006\001{@\004\001\002\003\004\002\001\002\002\001\000C\002\004\3220\n0\010\006\003+\006\002\002\001\001", trap.encode)
160
+ assert_equal("\244%\006\004+\006\001{@\004\001\002\003\004\002\001\002\002\001\000C\005\000\201\264\353\3310\n0\010\006\003+\006\002\002\001\001", trap.encode)
161
161
 
162
162
  encoded = Message.new(:SNMPv1, "public", trap).encode
163
163
  trap = Message.decode(encoded).pdu
164
164
  assert_equal(enterprise, trap.enterprise)
165
165
  assert_equal(agent_addr, trap.agent_addr)
166
166
  assert_equal(:linkDown, trap.generic_trap)
167
- assert_equal(0, trap.specific_trap)
167
+ assert_equal(0, trap.specific_trap)
168
+ assert_equal(2176117721, trap.timestamp.to_i)
168
169
  assert_equal(1, trap.varbind_list.length)
169
170
  assert_equal(ObjectId.new("1.3.6.2"), trap.varbind_list.first.name)
170
171
  end
@@ -282,6 +282,16 @@ class TestVarBind < Test::Unit::TestCase
282
282
  def test_counter32_decode
283
283
  i = Counter32.decode("09")
284
284
  assert_equal(12345, i.to_i)
285
+ end
286
+
287
+ # Decode as a positive number even though high bit is set.
288
+ # Not strict ASN.1, but implemented in some agents.
289
+ def test_unsigned_decode
290
+ i = Counter32.decode("\201\264\353\331")
291
+ assert_equal(2176117721, i.to_i)
292
+
293
+ i = TimeTicks.decode("\201\264\353\331")
294
+ assert_equal(2176117721, i.to_i)
285
295
  end
286
296
 
287
297
  def test_counter64
metadata CHANGED
@@ -3,11 +3,11 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: snmp
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.6.0
7
- date: 2005-12-14 00:00:00 -05:00
6
+ version: 0.6.1
7
+ date: 2006-02-15 00:00:00 -05:00
8
8
  summary: A Ruby implementation of SNMP (the Simple Network Management Protocol).
9
9
  require_paths:
10
- - lib
10
+ - lib
11
11
  email: snmp@halliday.ca
12
12
  homepage: http://snmplib.rubyforge.org
13
13
  rubyforge_project: snmplib
@@ -18,244 +18,248 @@ bindir: bin
18
18
  has_rdoc: true
19
19
  required_ruby_version: !ruby/object:Gem::Version::Requirement
20
20
  requirements:
21
- -
22
- - ">"
23
- - !ruby/object:Gem::Version
24
- version: 0.0.0
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
25
24
  version:
26
25
  platform: ruby
27
26
  signing_key:
28
27
  cert_chain:
29
28
  authors:
30
- - Dave Halliday
29
+ - Dave Halliday
31
30
  files:
32
- - Rakefile
33
- - README
34
- - setup.rb
35
- - lib/snmp.rb
36
- - lib/snmp/agent.rb
37
- - lib/snmp/varbind.rb
38
- - lib/snmp/mib.rb
39
- - lib/snmp/ber.rb
40
- - lib/snmp/pdu.rb
41
- - lib/snmp/manager.rb
42
- - test/test_walk.rb
43
- - test/test_retry.rb
44
- - test/test_varbind.rb
45
- - test/test_mib.rb
46
- - test/test_ber.rb
47
- - test/test_pdu.rb
48
- - test/test_smi.rb
49
- - test/test_manager.rb
50
- - test/if_table1.yaml
51
- - test/if_table6.yaml
52
- - examples/iftable.rb
53
- - examples/walk.rb
54
- - examples/get.rb
55
- - examples/dump.rb
56
- - examples/log_traps.rb
57
- - examples/set.rb
58
- - data/ruby/snmp/mibs/MPLS-LDP-GENERIC-STD-MIB.yaml
59
- - data/ruby/snmp/mibs/HDSL2-SHDSL-LINE-MIB.yaml
60
- - data/ruby/snmp/mibs/COPS-CLIENT-MIB.yaml
61
- - data/ruby/snmp/mibs/RFC1414-MIB.yaml
62
- - data/ruby/snmp/mibs/RFC1381-MIB.yaml
63
- - data/ruby/snmp/mibs/IPOA-MIB.yaml
64
- - data/ruby/snmp/mibs/FR-MFR-MIB.yaml
65
- - data/ruby/snmp/mibs/VRRP-MIB.yaml
66
- - data/ruby/snmp/mibs/PARALLEL-MIB.yaml
67
- - data/ruby/snmp/mibs/SFLOW-MIB.yaml
68
- - data/ruby/snmp/mibs/VDSL-LINE-MIB.yaml
69
- - data/ruby/snmp/mibs/ISDN-MIB.yaml
70
- - data/ruby/snmp/mibs/RMON2-MIB.yaml
71
- - data/ruby/snmp/mibs/ETHER-WIS.yaml
72
- - data/ruby/snmp/mibs/IF-MIB.yaml
73
- - data/ruby/snmp/mibs/POWER-ETHERNET-MIB.yaml
74
- - data/ruby/snmp/mibs/CIRCUIT-IF-MIB.yaml
75
- - data/ruby/snmp/mibs/ROHC-RTP-MIB.yaml
76
- - data/ruby/snmp/mibs/IPATM-IPMC-MIB.yaml
77
- - data/ruby/snmp/mibs/ATM2-MIB.yaml
78
- - data/ruby/snmp/mibs/OSPF-MIB.yaml
79
- - data/ruby/snmp/mibs/DISMAN-SCHEDULE-MIB.yaml
80
- - data/ruby/snmp/mibs/APPLETALK-MIB.yaml
81
- - data/ruby/snmp/mibs/PINT-MIB.yaml
82
- - data/ruby/snmp/mibs/RMON-MIB.yaml
83
- - data/ruby/snmp/mibs/DIRECTORY-SERVER-MIB.yaml
84
- - data/ruby/snmp/mibs/DISMAN-SCRIPT-MIB.yaml
85
- - data/ruby/snmp/mibs/FRNETSERV-MIB.yaml
86
- - data/ruby/snmp/mibs/RFC1213-MIB.yaml
87
- - data/ruby/snmp/mibs/MAU-MIB.yaml
88
- - data/ruby/snmp/mibs/SNMPv2-USEC-MIB.yaml
89
- - data/ruby/snmp/mibs/MIOX25-MIB.yaml
90
- - data/ruby/snmp/mibs/APS-MIB.yaml
91
- - data/ruby/snmp/mibs/HC-ALARM-MIB.yaml
92
- - data/ruby/snmp/mibs/ATM-TC-MIB.yaml
93
- - data/ruby/snmp/mibs/INTEGRATED-SERVICES-GUARANTEED-MIB.yaml
94
- - data/ruby/snmp/mibs/DOT12-IF-MIB.yaml
95
- - data/ruby/snmp/mibs/TN3270E-RT-MIB.yaml
96
- - data/ruby/snmp/mibs/AGENTX-MIB.yaml
97
- - data/ruby/snmp/mibs/RFC1382-MIB.yaml
98
- - data/ruby/snmp/mibs/P-BRIDGE-MIB.yaml
99
- - data/ruby/snmp/mibs/Q-BRIDGE-MIB.yaml
100
- - data/ruby/snmp/mibs/RFC1285-MIB.yaml
101
- - data/ruby/snmp/mibs/RFC1269-MIB.yaml
102
- - data/ruby/snmp/mibs/DIFFSERV-DSCP-TC.yaml
103
- - data/ruby/snmp/mibs/HC-RMON-MIB.yaml
104
- - data/ruby/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.yaml
105
- - data/ruby/snmp/mibs/SNA-SDLC-MIB.yaml
106
- - data/ruby/snmp/mibs/RTP-MIB.yaml
107
- - data/ruby/snmp/mibs/DECNET-PHIV-MIB.yaml
108
- - data/ruby/snmp/mibs/NHRP-MIB.yaml
109
- - data/ruby/snmp/mibs/IP-MIB.yaml
110
- - data/ruby/snmp/mibs/MALLOC-MIB.yaml
111
- - data/ruby/snmp/mibs/HOST-RESOURCES-MIB.yaml
112
- - data/ruby/snmp/mibs/IP-FORWARD-MIB.yaml
113
- - data/ruby/snmp/mibs/PPP-LCP-MIB.yaml
114
- - data/ruby/snmp/mibs/DS0BUNDLE-MIB.yaml
115
- - data/ruby/snmp/mibs/TRANSPORT-ADDRESS-MIB.yaml
116
- - data/ruby/snmp/mibs/PIM-MIB.yaml
117
- - data/ruby/snmp/mibs/UDP-MIB.yaml
118
- - data/ruby/snmp/mibs/MPLS-LDP-FRAME-RELAY-STD-MIB.yaml
119
- - data/ruby/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.yaml
120
- - data/ruby/snmp/mibs/RADIUS-ACC-CLIENT-MIB.yaml
121
- - data/ruby/snmp/mibs/BRIDGE-MIB.yaml
122
- - data/ruby/snmp/mibs/OPT-IF-MIB.yaml
123
- - data/ruby/snmp/mibs/HPR-IP-MIB.yaml
124
- - data/ruby/snmp/mibs/SNMP-TARGET-MIB.yaml
125
- - data/ruby/snmp/mibs/DOCS-BPI-MIB.yaml
126
- - data/ruby/snmp/mibs/SNMPv2-SMI.yaml
127
- - data/ruby/snmp/mibs/PPP-BRIDGE-NCP-MIB.yaml
128
- - data/ruby/snmp/mibs/TN3270E-MIB.yaml
129
- - data/ruby/snmp/mibs/ACCOUNTING-CONTROL-MIB.yaml
130
- - data/ruby/snmp/mibs/MPLS-TC-STD-MIB.yaml
131
- - data/ruby/snmp/mibs/MPLS-LDP-STD-MIB.yaml
132
- - data/ruby/snmp/mibs/ADSL-LINE-MIB.yaml
133
- - data/ruby/snmp/mibs/IPV6-UDP-MIB.yaml
134
- - data/ruby/snmp/mibs/FRSLD-MIB.yaml
135
- - data/ruby/snmp/mibs/ENTITY-MIB.yaml
136
- - data/ruby/snmp/mibs/EtherLike-MIB.yaml
137
- - data/ruby/snmp/mibs/APM-MIB.yaml
138
- - data/ruby/snmp/mibs/TOKENRING-STATION-SR-MIB.yaml
139
- - data/ruby/snmp/mibs/FRAME-RELAY-DTE-MIB.yaml
140
- - data/ruby/snmp/mibs/RADIUS-ACC-SERVER-MIB.yaml
141
- - data/ruby/snmp/mibs/DSMON-MIB.yaml
142
- - data/ruby/snmp/mibs/MTA-MIB.yaml
143
- - data/ruby/snmp/mibs/L2TP-MIB.yaml
144
- - data/ruby/snmp/mibs/ATM-MIB.yaml
145
- - data/ruby/snmp/mibs/DNS-RESOLVER-MIB.yaml
146
- - data/ruby/snmp/mibs/IPV6-MIB.yaml
147
- - data/ruby/snmp/mibs/DOCS-IF-MIB.yaml
148
- - data/ruby/snmp/mibs/FIBRE-CHANNEL-FE-MIB.yaml
149
- - data/ruby/snmp/mibs/RFC1271-MIB.yaml
150
- - data/ruby/snmp/mibs/ADSL-TC-MIB.yaml
151
- - data/ruby/snmp/mibs/SONET-MIB.yaml
152
- - data/ruby/snmp/mibs/RFC1158-MIB.yaml
153
- - data/ruby/snmp/mibs/RSVP-MIB.yaml
154
- - data/ruby/snmp/mibs/ROHC-UNCOMPRESSED-MIB.yaml
155
- - data/ruby/snmp/mibs/Modem-MIB.yaml
156
- - data/ruby/snmp/mibs/EBN-MIB.yaml
157
- - data/ruby/snmp/mibs/TUNNEL-MIB.yaml
158
- - data/ruby/snmp/mibs/IPV6-FLOW-LABEL-MIB.yaml
159
- - data/ruby/snmp/mibs/NETWORK-SERVICES-MIB.yaml
160
- - data/ruby/snmp/mibs/HOST-RESOURCES-TYPES.yaml
161
- - data/ruby/snmp/mibs/APPC-MIB.yaml
162
- - data/ruby/snmp/mibs/Printer-MIB.yaml
163
- - data/ruby/snmp/mibs/MIP-MIB.yaml
164
- - data/ruby/snmp/mibs/DS0-MIB.yaml
165
- - data/ruby/snmp/mibs/RS-232-MIB.yaml
166
- - data/ruby/snmp/mibs/SNMP-PROXY-MIB.yaml
167
- - data/ruby/snmp/mibs/CLNS-MIB.yaml
168
- - data/ruby/snmp/mibs/SNMP-COMMUNITY-MIB.yaml
169
- - data/ruby/snmp/mibs/TOKENRING-MIB.yaml
170
- - data/ruby/snmp/mibs/PTOPO-MIB.yaml
171
- - data/ruby/snmp/mibs/INTERFACETOPN-MIB.yaml
172
- - data/ruby/snmp/mibs/RIPv2-MIB.yaml
173
- - data/ruby/snmp/mibs/NOTIFICATION-LOG-MIB.yaml
174
- - data/ruby/snmp/mibs/GSMP-MIB.yaml
175
- - data/ruby/snmp/mibs/RDBMS-MIB.yaml
176
- - data/ruby/snmp/mibs/RFC1065-SMI.yaml
177
- - data/ruby/snmp/mibs/TCPIPX-MIB.yaml
178
- - data/ruby/snmp/mibs/DIFFSERV-MIB.yaml
179
- - data/ruby/snmp/mibs/MPLS-TE-STD-MIB.yaml
180
- - data/ruby/snmp/mibs/OSPF-TRAP-MIB.yaml
181
- - data/ruby/snmp/mibs/SMON-MIB.yaml
182
- - data/ruby/snmp/mibs/SNMP-REPEATER-MIB.yaml
183
- - data/ruby/snmp/mibs/ENTITY-SENSOR-MIB.yaml
184
- - data/ruby/snmp/mibs/SNMPv2-MIB.yaml
185
- - data/ruby/snmp/mibs/DISMAN-TRACEROUTE-MIB.yaml
186
- - data/ruby/snmp/mibs/TCP-MIB.yaml
187
- - data/ruby/snmp/mibs/TOKEN-RING-RMON-MIB.yaml
188
- - data/ruby/snmp/mibs/DIAL-CONTROL-MIB.yaml
189
- - data/ruby/snmp/mibs/DS1-MIB.yaml
190
- - data/ruby/snmp/mibs/DNS-SERVER-MIB.yaml
191
- - data/ruby/snmp/mibs/HPR-MIB.yaml
192
- - data/ruby/snmp/mibs/DOCS-CABLE-DEVICE-MIB.yaml
193
- - data/ruby/snmp/mibs/DISMAN-EVENT-MIB.yaml
194
- - data/ruby/snmp/mibs/ROHC-MIB.yaml
195
- - data/ruby/snmp/mibs/SNMP-MPD-MIB.yaml
196
- - data/ruby/snmp/mibs/IPMROUTE-STD-MIB.yaml
197
- - data/ruby/snmp/mibs/BGP4-MIB.yaml
198
- - data/ruby/snmp/mibs/SNMP-NOTIFICATION-MIB.yaml
199
- - data/ruby/snmp/mibs/ATM-ACCOUNTING-INFORMATION-MIB.yaml
200
- - data/ruby/snmp/mibs/DIFFSERV-CONFIG-MIB.yaml
201
- - data/ruby/snmp/mibs/APPLICATION-MIB.yaml
202
- - data/ruby/snmp/mibs/PPP-SEC-MIB.yaml
203
- - data/ruby/snmp/mibs/Finisher-MIB.yaml
204
- - data/ruby/snmp/mibs/DSA-MIB.yaml
205
- - data/ruby/snmp/mibs/RFC1155-SMI.yaml
206
- - data/ruby/snmp/mibs/UPS-MIB.yaml
207
- - data/ruby/snmp/mibs/IPV6-TCP-MIB.yaml
208
- - data/ruby/snmp/mibs/FR-ATM-PVC-SERVICE-IWF-MIB.yaml
209
- - data/ruby/snmp/mibs/IF-INVERTED-STACK-MIB.yaml
210
- - data/ruby/snmp/mibs/FDDI-SMT73-MIB.yaml
211
- - data/ruby/snmp/mibs/INET-ADDRESS-MIB.yaml
212
- - data/ruby/snmp/mibs/IGMP-STD-MIB.yaml
213
- - data/ruby/snmp/mibs/WWW-MIB.yaml
214
- - data/ruby/snmp/mibs/SOURCE-ROUTING-MIB.yaml
215
- - data/ruby/snmp/mibs/COFFEE-POT-MIB.yaml
216
- - data/ruby/snmp/mibs/PerfHist-TC-MIB.yaml
217
- - data/ruby/snmp/mibs/SIP-MIB.yaml
218
- - data/ruby/snmp/mibs/Job-Monitoring-MIB.yaml
219
- - data/ruby/snmp/mibs/IPV6-MLD-MIB.yaml
220
- - data/ruby/snmp/mibs/SNMPv2-TM.yaml
221
- - data/ruby/snmp/mibs/APPN-DLUR-MIB.yaml
222
- - data/ruby/snmp/mibs/APPN-TRAP-MIB.yaml
223
- - data/ruby/snmp/mibs/RADIUS-AUTH-CLIENT-MIB.yaml
224
- - data/ruby/snmp/mibs/SNA-NAU-MIB.yaml
225
- - data/ruby/snmp/mibs/ADSL-LINE-EXT-MIB.yaml
226
- - data/ruby/snmp/mibs/DISMAN-EXPRESSION-MIB.yaml
227
- - data/ruby/snmp/mibs/SNMP-FRAMEWORK-MIB.yaml
228
- - data/ruby/snmp/mibs/HCNUM-TC.yaml
229
- - data/ruby/snmp/mibs/DLSW-MIB.yaml
230
- - data/ruby/snmp/mibs/IPV6-ICMP-MIB.yaml
231
- - data/ruby/snmp/mibs/SLAPM-MIB.yaml
232
- - data/ruby/snmp/mibs/HC-PerfHist-TC-MIB.yaml
233
- - data/ruby/snmp/mibs/FLOW-METER-MIB.yaml
234
- - data/ruby/snmp/mibs/SNMP-USER-BASED-SM-MIB.yaml
235
- - data/ruby/snmp/mibs/PPP-IP-NCP-MIB.yaml
236
- - data/ruby/snmp/mibs/DISMAN-NSLOOKUP-MIB.yaml
237
- - data/ruby/snmp/mibs/RFC1316-MIB.yaml
238
- - data/ruby/snmp/mibs/BLDG-HVAC-MIB.yaml
239
- - data/ruby/snmp/mibs/MPLS-FTN-STD-MIB.yaml
240
- - data/ruby/snmp/mibs/DS3-MIB.yaml
241
- - data/ruby/snmp/mibs/RADIUS-AUTH-SERVER-MIB.yaml
242
- - data/ruby/snmp/mibs/SYSAPPL-MIB.yaml
243
- - data/ruby/snmp/mibs/CHARACTER-MIB.yaml
244
- - data/ruby/snmp/mibs/APPN-MIB.yaml
245
- - data/ruby/snmp/mibs/MPLS-LDP-ATM-STD-MIB.yaml
246
- - data/ruby/snmp/mibs/MPLS-LSR-STD-MIB.yaml
247
- - data/ruby/snmp/mibs/ETHER-CHIPSET-MIB.yaml
248
- - data/ruby/snmp/mibs/DISMAN-PING-MIB.yaml
249
- - data/ruby/snmp/mibs/INTEGRATED-SERVICES-MIB.yaml
31
+ - Rakefile
32
+ - README
33
+ - setup.rb
34
+ - lib/snmp.rb
35
+ - lib/snmp/agent.rb
36
+ - lib/snmp/ber.rb
37
+ - lib/snmp/manager.rb
38
+ - lib/snmp/mib.rb
39
+ - lib/snmp/pdu.rb
40
+ - lib/snmp/varbind.rb
41
+ - test/test_ber.rb
42
+ - test/test_manager.rb
43
+ - test/test_mib.rb
44
+ - test/test_pdu.rb
45
+ - test/test_retry.rb
46
+ - test/test_smi.rb
47
+ - test/test_varbind.rb
48
+ - test/test_walk.rb
49
+ - test/if_table1.yaml
50
+ - test/if_table6.yaml
51
+ - examples/dump.rb
52
+ - examples/get.rb
53
+ - examples/iftable.rb
54
+ - examples/log_traps.rb
55
+ - examples/set.rb
56
+ - examples/walk.rb
57
+ - data/ruby/snmp/mibs/ACCOUNTING-CONTROL-MIB.yaml
58
+ - data/ruby/snmp/mibs/ADSL-LINE-EXT-MIB.yaml
59
+ - data/ruby/snmp/mibs/ADSL-LINE-MIB.yaml
60
+ - data/ruby/snmp/mibs/ADSL-TC-MIB.yaml
61
+ - data/ruby/snmp/mibs/AGENTX-MIB.yaml
62
+ - data/ruby/snmp/mibs/APM-MIB.yaml
63
+ - data/ruby/snmp/mibs/APPC-MIB.yaml
64
+ - data/ruby/snmp/mibs/APPLETALK-MIB.yaml
65
+ - data/ruby/snmp/mibs/APPLICATION-MIB.yaml
66
+ - data/ruby/snmp/mibs/APPN-DLUR-MIB.yaml
67
+ - data/ruby/snmp/mibs/APPN-MIB.yaml
68
+ - data/ruby/snmp/mibs/APPN-TRAP-MIB.yaml
69
+ - data/ruby/snmp/mibs/APS-MIB.yaml
70
+ - data/ruby/snmp/mibs/ATM-ACCOUNTING-INFORMATION-MIB.yaml
71
+ - data/ruby/snmp/mibs/ATM-MIB.yaml
72
+ - data/ruby/snmp/mibs/ATM-TC-MIB.yaml
73
+ - data/ruby/snmp/mibs/ATM2-MIB.yaml
74
+ - data/ruby/snmp/mibs/BGP4-MIB.yaml
75
+ - data/ruby/snmp/mibs/BLDG-HVAC-MIB.yaml
76
+ - data/ruby/snmp/mibs/BRIDGE-MIB.yaml
77
+ - data/ruby/snmp/mibs/CHARACTER-MIB.yaml
78
+ - data/ruby/snmp/mibs/CIRCUIT-IF-MIB.yaml
79
+ - data/ruby/snmp/mibs/CLNS-MIB.yaml
80
+ - data/ruby/snmp/mibs/COFFEE-POT-MIB.yaml
81
+ - data/ruby/snmp/mibs/COPS-CLIENT-MIB.yaml
82
+ - data/ruby/snmp/mibs/DECNET-PHIV-MIB.yaml
83
+ - data/ruby/snmp/mibs/DIAL-CONTROL-MIB.yaml
84
+ - data/ruby/snmp/mibs/DIFFSERV-CONFIG-MIB.yaml
85
+ - data/ruby/snmp/mibs/DIFFSERV-DSCP-TC.yaml
86
+ - data/ruby/snmp/mibs/DIFFSERV-MIB.yaml
87
+ - data/ruby/snmp/mibs/DIRECTORY-SERVER-MIB.yaml
88
+ - data/ruby/snmp/mibs/DISMAN-EVENT-MIB.yaml
89
+ - data/ruby/snmp/mibs/DISMAN-EXPRESSION-MIB.yaml
90
+ - data/ruby/snmp/mibs/DISMAN-NSLOOKUP-MIB.yaml
91
+ - data/ruby/snmp/mibs/DISMAN-PING-MIB.yaml
92
+ - data/ruby/snmp/mibs/DISMAN-SCHEDULE-MIB.yaml
93
+ - data/ruby/snmp/mibs/DISMAN-SCRIPT-MIB.yaml
94
+ - data/ruby/snmp/mibs/DISMAN-TRACEROUTE-MIB.yaml
95
+ - data/ruby/snmp/mibs/DLSW-MIB.yaml
96
+ - data/ruby/snmp/mibs/DNS-RESOLVER-MIB.yaml
97
+ - data/ruby/snmp/mibs/DNS-SERVER-MIB.yaml
98
+ - data/ruby/snmp/mibs/DOCS-BPI-MIB.yaml
99
+ - data/ruby/snmp/mibs/DOCS-CABLE-DEVICE-MIB.yaml
100
+ - data/ruby/snmp/mibs/DOCS-IF-MIB.yaml
101
+ - data/ruby/snmp/mibs/DOT12-IF-MIB.yaml
102
+ - data/ruby/snmp/mibs/DS0-MIB.yaml
103
+ - data/ruby/snmp/mibs/DS0BUNDLE-MIB.yaml
104
+ - data/ruby/snmp/mibs/DS1-MIB.yaml
105
+ - data/ruby/snmp/mibs/DS3-MIB.yaml
106
+ - data/ruby/snmp/mibs/DSA-MIB.yaml
107
+ - data/ruby/snmp/mibs/DSMON-MIB.yaml
108
+ - data/ruby/snmp/mibs/EBN-MIB.yaml
109
+ - data/ruby/snmp/mibs/ENTITY-MIB.yaml
110
+ - data/ruby/snmp/mibs/ENTITY-SENSOR-MIB.yaml
111
+ - data/ruby/snmp/mibs/ETHER-CHIPSET-MIB.yaml
112
+ - data/ruby/snmp/mibs/ETHER-WIS.yaml
113
+ - data/ruby/snmp/mibs/EtherLike-MIB.yaml
114
+ - data/ruby/snmp/mibs/FDDI-SMT73-MIB.yaml
115
+ - data/ruby/snmp/mibs/FIBRE-CHANNEL-FE-MIB.yaml
116
+ - data/ruby/snmp/mibs/Finisher-MIB.yaml
117
+ - data/ruby/snmp/mibs/FLOW-METER-MIB.yaml
118
+ - data/ruby/snmp/mibs/FR-ATM-PVC-SERVICE-IWF-MIB.yaml
119
+ - data/ruby/snmp/mibs/FR-MFR-MIB.yaml
120
+ - data/ruby/snmp/mibs/FRAME-RELAY-DTE-MIB.yaml
121
+ - data/ruby/snmp/mibs/FRNETSERV-MIB.yaml
122
+ - data/ruby/snmp/mibs/FRSLD-MIB.yaml
123
+ - data/ruby/snmp/mibs/GSMP-MIB.yaml
124
+ - data/ruby/snmp/mibs/HC-ALARM-MIB.yaml
125
+ - data/ruby/snmp/mibs/HC-PerfHist-TC-MIB.yaml
126
+ - data/ruby/snmp/mibs/HC-RMON-MIB.yaml
127
+ - data/ruby/snmp/mibs/HCNUM-TC.yaml
128
+ - data/ruby/snmp/mibs/HDSL2-SHDSL-LINE-MIB.yaml
129
+ - data/ruby/snmp/mibs/HOST-RESOURCES-MIB.yaml
130
+ - data/ruby/snmp/mibs/HOST-RESOURCES-TYPES.yaml
131
+ - data/ruby/snmp/mibs/HPR-IP-MIB.yaml
132
+ - data/ruby/snmp/mibs/HPR-MIB.yaml
133
+ - data/ruby/snmp/mibs/IF-INVERTED-STACK-MIB.yaml
134
+ - data/ruby/snmp/mibs/IF-MIB.yaml
135
+ - data/ruby/snmp/mibs/IGMP-STD-MIB.yaml
136
+ - data/ruby/snmp/mibs/INET-ADDRESS-MIB.yaml
137
+ - data/ruby/snmp/mibs/INTEGRATED-SERVICES-GUARANTEED-MIB.yaml
138
+ - data/ruby/snmp/mibs/INTEGRATED-SERVICES-MIB.yaml
139
+ - data/ruby/snmp/mibs/INTERFACETOPN-MIB.yaml
140
+ - data/ruby/snmp/mibs/IP-FORWARD-MIB.yaml
141
+ - data/ruby/snmp/mibs/IP-MIB.yaml
142
+ - data/ruby/snmp/mibs/IPATM-IPMC-MIB.yaml
143
+ - data/ruby/snmp/mibs/IPMROUTE-STD-MIB.yaml
144
+ - data/ruby/snmp/mibs/IPOA-MIB.yaml
145
+ - data/ruby/snmp/mibs/IPV6-FLOW-LABEL-MIB.yaml
146
+ - data/ruby/snmp/mibs/IPV6-ICMP-MIB.yaml
147
+ - data/ruby/snmp/mibs/IPV6-MIB.yaml
148
+ - data/ruby/snmp/mibs/IPV6-MLD-MIB.yaml
149
+ - data/ruby/snmp/mibs/IPV6-TCP-MIB.yaml
150
+ - data/ruby/snmp/mibs/IPV6-UDP-MIB.yaml
151
+ - data/ruby/snmp/mibs/ISDN-MIB.yaml
152
+ - data/ruby/snmp/mibs/Job-Monitoring-MIB.yaml
153
+ - data/ruby/snmp/mibs/L2TP-MIB.yaml
154
+ - data/ruby/snmp/mibs/MALLOC-MIB.yaml
155
+ - data/ruby/snmp/mibs/MAU-MIB.yaml
156
+ - data/ruby/snmp/mibs/MIOX25-MIB.yaml
157
+ - data/ruby/snmp/mibs/MIP-MIB.yaml
158
+ - data/ruby/snmp/mibs/Modem-MIB.yaml
159
+ - data/ruby/snmp/mibs/MPLS-FTN-STD-MIB.yaml
160
+ - data/ruby/snmp/mibs/MPLS-LDP-ATM-STD-MIB.yaml
161
+ - data/ruby/snmp/mibs/MPLS-LDP-FRAME-RELAY-STD-MIB.yaml
162
+ - data/ruby/snmp/mibs/MPLS-LDP-GENERIC-STD-MIB.yaml
163
+ - data/ruby/snmp/mibs/MPLS-LDP-STD-MIB.yaml
164
+ - data/ruby/snmp/mibs/MPLS-LSR-STD-MIB.yaml
165
+ - data/ruby/snmp/mibs/MPLS-TC-STD-MIB.yaml
166
+ - data/ruby/snmp/mibs/MPLS-TE-STD-MIB.yaml
167
+ - data/ruby/snmp/mibs/MTA-MIB.yaml
168
+ - data/ruby/snmp/mibs/NETWORK-SERVICES-MIB.yaml
169
+ - data/ruby/snmp/mibs/NHRP-MIB.yaml
170
+ - data/ruby/snmp/mibs/NOTIFICATION-LOG-MIB.yaml
171
+ - data/ruby/snmp/mibs/OPT-IF-MIB.yaml
172
+ - data/ruby/snmp/mibs/OSPF-MIB.yaml
173
+ - data/ruby/snmp/mibs/OSPF-TRAP-MIB.yaml
174
+ - data/ruby/snmp/mibs/P-BRIDGE-MIB.yaml
175
+ - data/ruby/snmp/mibs/PARALLEL-MIB.yaml
176
+ - data/ruby/snmp/mibs/PerfHist-TC-MIB.yaml
177
+ - data/ruby/snmp/mibs/PIM-MIB.yaml
178
+ - data/ruby/snmp/mibs/PINT-MIB.yaml
179
+ - data/ruby/snmp/mibs/POWER-ETHERNET-MIB.yaml
180
+ - data/ruby/snmp/mibs/PPP-BRIDGE-NCP-MIB.yaml
181
+ - data/ruby/snmp/mibs/PPP-IP-NCP-MIB.yaml
182
+ - data/ruby/snmp/mibs/PPP-LCP-MIB.yaml
183
+ - data/ruby/snmp/mibs/PPP-SEC-MIB.yaml
184
+ - data/ruby/snmp/mibs/Printer-MIB.yaml
185
+ - data/ruby/snmp/mibs/PTOPO-MIB.yaml
186
+ - data/ruby/snmp/mibs/Q-BRIDGE-MIB.yaml
187
+ - data/ruby/snmp/mibs/RADIUS-ACC-CLIENT-MIB.yaml
188
+ - data/ruby/snmp/mibs/RADIUS-ACC-SERVER-MIB.yaml
189
+ - data/ruby/snmp/mibs/RADIUS-AUTH-CLIENT-MIB.yaml
190
+ - data/ruby/snmp/mibs/RADIUS-AUTH-SERVER-MIB.yaml
191
+ - data/ruby/snmp/mibs/RDBMS-MIB.yaml
192
+ - data/ruby/snmp/mibs/RFC1065-SMI.yaml
193
+ - data/ruby/snmp/mibs/RFC1155-SMI.yaml
194
+ - data/ruby/snmp/mibs/RFC1158-MIB.yaml
195
+ - data/ruby/snmp/mibs/RFC1213-MIB.yaml
196
+ - data/ruby/snmp/mibs/RFC1269-MIB.yaml
197
+ - data/ruby/snmp/mibs/RFC1271-MIB.yaml
198
+ - data/ruby/snmp/mibs/RFC1285-MIB.yaml
199
+ - data/ruby/snmp/mibs/RFC1316-MIB.yaml
200
+ - data/ruby/snmp/mibs/RFC1381-MIB.yaml
201
+ - data/ruby/snmp/mibs/RFC1382-MIB.yaml
202
+ - data/ruby/snmp/mibs/RFC1414-MIB.yaml
203
+ - data/ruby/snmp/mibs/RIPv2-MIB.yaml
204
+ - data/ruby/snmp/mibs/RMON-MIB.yaml
205
+ - data/ruby/snmp/mibs/RMON2-MIB.yaml
206
+ - data/ruby/snmp/mibs/ROHC-MIB.yaml
207
+ - data/ruby/snmp/mibs/ROHC-RTP-MIB.yaml
208
+ - data/ruby/snmp/mibs/ROHC-UNCOMPRESSED-MIB.yaml
209
+ - data/ruby/snmp/mibs/RS-232-MIB.yaml
210
+ - data/ruby/snmp/mibs/RSVP-MIB.yaml
211
+ - data/ruby/snmp/mibs/RTP-MIB.yaml
212
+ - data/ruby/snmp/mibs/SFLOW-MIB.yaml
213
+ - data/ruby/snmp/mibs/SIP-MIB.yaml
214
+ - data/ruby/snmp/mibs/SLAPM-MIB.yaml
215
+ - data/ruby/snmp/mibs/SMON-MIB.yaml
216
+ - data/ruby/snmp/mibs/SNA-NAU-MIB.yaml
217
+ - data/ruby/snmp/mibs/SNA-SDLC-MIB.yaml
218
+ - data/ruby/snmp/mibs/SNMP-COMMUNITY-MIB.yaml
219
+ - data/ruby/snmp/mibs/SNMP-FRAMEWORK-MIB.yaml
220
+ - data/ruby/snmp/mibs/SNMP-MPD-MIB.yaml
221
+ - data/ruby/snmp/mibs/SNMP-NOTIFICATION-MIB.yaml
222
+ - data/ruby/snmp/mibs/SNMP-PROXY-MIB.yaml
223
+ - data/ruby/snmp/mibs/SNMP-REPEATER-MIB.yaml
224
+ - data/ruby/snmp/mibs/SNMP-TARGET-MIB.yaml
225
+ - data/ruby/snmp/mibs/SNMP-USER-BASED-SM-MIB.yaml
226
+ - data/ruby/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.yaml
227
+ - data/ruby/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.yaml
228
+ - data/ruby/snmp/mibs/SNMPv2-MIB.yaml
229
+ - data/ruby/snmp/mibs/SNMPv2-SMI.yaml
230
+ - data/ruby/snmp/mibs/SNMPv2-TM.yaml
231
+ - data/ruby/snmp/mibs/SNMPv2-USEC-MIB.yaml
232
+ - data/ruby/snmp/mibs/SONET-MIB.yaml
233
+ - data/ruby/snmp/mibs/SOURCE-ROUTING-MIB.yaml
234
+ - data/ruby/snmp/mibs/SYSAPPL-MIB.yaml
235
+ - data/ruby/snmp/mibs/TCP-MIB.yaml
236
+ - data/ruby/snmp/mibs/TCPIPX-MIB.yaml
237
+ - data/ruby/snmp/mibs/TN3270E-MIB.yaml
238
+ - data/ruby/snmp/mibs/TN3270E-RT-MIB.yaml
239
+ - data/ruby/snmp/mibs/TOKEN-RING-RMON-MIB.yaml
240
+ - data/ruby/snmp/mibs/TOKENRING-MIB.yaml
241
+ - data/ruby/snmp/mibs/TOKENRING-STATION-SR-MIB.yaml
242
+ - data/ruby/snmp/mibs/TRANSPORT-ADDRESS-MIB.yaml
243
+ - data/ruby/snmp/mibs/TUNNEL-MIB.yaml
244
+ - data/ruby/snmp/mibs/UDP-MIB.yaml
245
+ - data/ruby/snmp/mibs/UPS-MIB.yaml
246
+ - data/ruby/snmp/mibs/VDSL-LINE-MIB.yaml
247
+ - data/ruby/snmp/mibs/VRRP-MIB.yaml
248
+ - data/ruby/snmp/mibs/WWW-MIB.yaml
250
249
  test_files: []
250
+
251
251
  rdoc_options:
252
- - "--main"
253
- - README
254
- - "--title"
255
- - SNMP Library for Ruby
252
+ - --main
253
+ - README
254
+ - --title
255
+ - SNMP Library for Ruby
256
256
  extra_rdoc_files:
257
- - README
257
+ - README
258
258
  executables: []
259
+
259
260
  extensions: []
261
+
260
262
  requirements: []
261
- dependencies: []
263
+
264
+ dependencies: []
265
+