snmp 1.0.3 → 1.0.4

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.
Files changed (295) hide show
  1. data/README.rdoc +179 -0
  2. data/Rakefile +34 -39
  3. data/data/ruby/snmp/mibs/ACCOUNTING-CONTROL-MIB.yaml +33 -32
  4. data/data/ruby/snmp/mibs/ADSL-LINE-EXT-MIB.yaml +57 -56
  5. data/data/ruby/snmp/mibs/ADSL-LINE-MIB.yaml +224 -223
  6. data/data/ruby/snmp/mibs/ADSL-TC-MIB.yaml +1 -0
  7. data/data/ruby/snmp/mibs/ADSL2-LINE-MIB.yaml +321 -0
  8. data/data/ruby/snmp/mibs/ADSL2-LINE-TC-MIB.yaml +3 -0
  9. data/data/ruby/snmp/mibs/AGENTX-MIB.yaml +25 -24
  10. data/data/ruby/snmp/mibs/AGGREGATE-MIB.yaml +28 -0
  11. data/data/ruby/snmp/mibs/ALARM-MIB.yaml +77 -0
  12. data/data/ruby/snmp/mibs/APM-MIB.yaml +75 -74
  13. data/data/ruby/snmp/mibs/APPC-MIB.yaml +261 -260
  14. data/data/ruby/snmp/mibs/APPLETALK-MIB.yaml +255 -254
  15. data/data/ruby/snmp/mibs/APPLICATION-MIB.yaml +138 -137
  16. data/data/ruby/snmp/mibs/APPN-DLUR-MIB.yaml +30 -29
  17. data/data/ruby/snmp/mibs/APPN-MIB.yaml +325 -324
  18. data/data/ruby/snmp/mibs/APPN-TRAP-MIB.yaml +10 -9
  19. data/data/ruby/snmp/mibs/APS-MIB.yaml +50 -49
  20. data/data/ruby/snmp/mibs/ARC-MIB.yaml +19 -0
  21. data/data/ruby/snmp/mibs/ATM-ACCOUNTING-INFORMATION-MIB.yaml +22 -21
  22. data/data/ruby/snmp/mibs/ATM-MIB.yaml +94 -93
  23. data/data/ruby/snmp/mibs/ATM-TC-MIB.yaml +12 -11
  24. data/data/ruby/snmp/mibs/ATM2-MIB.yaml +156 -155
  25. data/data/ruby/snmp/mibs/BGP4-MIB.yaml +48 -41
  26. data/data/ruby/snmp/mibs/BLDG-HVAC-MIB.yaml +25 -24
  27. data/data/ruby/snmp/mibs/BRIDGE-MIB.yaml +50 -44
  28. data/data/ruby/snmp/mibs/CHARACTER-MIB.yaml +35 -34
  29. data/data/ruby/snmp/mibs/CIRCUIT-IF-MIB.yaml +13 -12
  30. data/data/ruby/snmp/mibs/CLNS-MIB.yaml +98 -97
  31. data/data/ruby/snmp/mibs/COFFEE-POT-MIB.yaml +8 -7
  32. data/data/ruby/snmp/mibs/COPS-CLIENT-MIB.yaml +38 -37
  33. data/data/ruby/snmp/mibs/DECNET-PHIV-MIB.yaml +209 -208
  34. data/data/ruby/snmp/mibs/DIAL-CONTROL-MIB.yaml +72 -71
  35. data/data/ruby/snmp/mibs/DIFFSERV-CONFIG-MIB.yaml +11 -10
  36. data/data/ruby/snmp/mibs/DIFFSERV-DSCP-TC.yaml +1 -0
  37. data/data/ruby/snmp/mibs/DIFFSERV-MIB.yaml +151 -150
  38. data/data/ruby/snmp/mibs/DIRECTORY-SERVER-MIB.yaml +35 -34
  39. data/data/ruby/snmp/mibs/DISMAN-EVENT-MIB.yaml +95 -94
  40. data/data/ruby/snmp/mibs/DISMAN-EXPRESSION-MIB.yaml +37 -36
  41. data/data/ruby/snmp/mibs/DISMAN-NSLOOKUP-MIB.yaml +15 -14
  42. data/data/ruby/snmp/mibs/DISMAN-PING-MIB.yaml +43 -42
  43. data/data/ruby/snmp/mibs/DISMAN-SCHEDULE-MIB.yaml +22 -21
  44. data/data/ruby/snmp/mibs/DISMAN-SCRIPT-MIB.yaml +64 -63
  45. data/data/ruby/snmp/mibs/DISMAN-TRACEROUTE-MIB.yaml +59 -58
  46. data/data/ruby/snmp/mibs/DLSW-MIB.yaml +172 -171
  47. data/data/ruby/snmp/mibs/DNS-RESOLVER-MIB.yaml +70 -69
  48. data/data/ruby/snmp/mibs/DNS-SERVER-MIB.yaml +57 -56
  49. data/data/ruby/snmp/mibs/DOCS-BPI-MIB.yaml +81 -80
  50. data/data/ruby/snmp/mibs/DOCS-CABLE-DEVICE-MIB.yaml +114 -89
  51. data/data/ruby/snmp/mibs/DOCS-IETF-BPI2-MIB.yaml +187 -0
  52. data/data/ruby/snmp/mibs/DOCS-IETF-CABLE-DEVICE-NOTIFICATION-MIB.yaml +39 -0
  53. data/data/ruby/snmp/mibs/DOCS-IETF-QOS-MIB.yaml +166 -0
  54. data/data/ruby/snmp/mibs/DOCS-IETF-SUBMGT-MIB.yaml +32 -0
  55. data/data/ruby/snmp/mibs/DOCS-IF-MIB.yaml +208 -119
  56. data/data/ruby/snmp/mibs/DOT12-IF-MIB.yaml +21 -20
  57. data/data/ruby/snmp/mibs/DOT3-EPON-MIB.yaml +101 -0
  58. data/data/ruby/snmp/mibs/DOT3-OAM-MIB.yaml +82 -0
  59. data/data/ruby/snmp/mibs/DS0-MIB.yaml +11 -10
  60. data/data/ruby/snmp/mibs/DS0BUNDLE-MIB.yaml +9 -8
  61. data/data/ruby/snmp/mibs/DS1-MIB.yaml +102 -98
  62. data/data/ruby/snmp/mibs/DS3-MIB.yaml +84 -83
  63. data/data/ruby/snmp/mibs/DSA-MIB.yaml +31 -30
  64. data/data/ruby/snmp/mibs/DSMON-MIB.yaml +193 -192
  65. data/data/ruby/snmp/mibs/EBN-MIB.yaml +32 -31
  66. data/data/ruby/snmp/mibs/EFM-CU-MIB.yaml +113 -0
  67. data/data/ruby/snmp/mibs/ENTITY-MIB.yaml +41 -38
  68. data/data/ruby/snmp/mibs/ENTITY-SENSOR-MIB.yaml +8 -7
  69. data/data/ruby/snmp/mibs/ENTITY-STATE-MIB.yaml +18 -0
  70. data/data/ruby/snmp/mibs/ENTITY-STATE-TC-MIB.yaml +3 -0
  71. data/data/ruby/snmp/mibs/ETHER-CHIPSET-MIB.yaml +61 -60
  72. data/data/ruby/snmp/mibs/ETHER-WIS.yaml +16 -15
  73. data/data/ruby/snmp/mibs/EtherLike-MIB.yaml +43 -42
  74. data/data/ruby/snmp/mibs/FC-MGMT-MIB.yaml +154 -0
  75. data/data/ruby/snmp/mibs/FCIP-MGMT-MIB.yaml +68 -0
  76. data/data/ruby/snmp/mibs/FDDI-SMT73-MIB.yaml +107 -106
  77. data/data/ruby/snmp/mibs/FIBRE-CHANNEL-FE-MIB.yaml +100 -99
  78. data/data/ruby/snmp/mibs/FLOW-METER-MIB.yaml +92 -91
  79. data/data/ruby/snmp/mibs/FR-ATM-PVC-SERVICE-IWF-MIB.yaml +33 -32
  80. data/data/ruby/snmp/mibs/FR-MFR-MIB.yaml +38 -37
  81. data/data/ruby/snmp/mibs/FRAME-RELAY-DTE-MIB.yaml +41 -40
  82. data/data/ruby/snmp/mibs/FRNETSERV-MIB.yaml +92 -91
  83. data/data/ruby/snmp/mibs/FRSLD-MIB.yaml +66 -65
  84. data/data/ruby/snmp/mibs/Finisher-MIB.yaml +38 -37
  85. data/data/ruby/snmp/mibs/GMPLS-LABEL-STD-MIB.yaml +27 -0
  86. data/data/ruby/snmp/mibs/GMPLS-LSR-STD-MIB.yaml +20 -0
  87. data/data/ruby/snmp/mibs/GMPLS-TC-STD-MIB.yaml +3 -0
  88. data/data/ruby/snmp/mibs/GMPLS-TE-STD-MIB.yaml +72 -0
  89. data/data/ruby/snmp/mibs/GSMP-MIB.yaml +75 -74
  90. data/data/ruby/snmp/mibs/HC-ALARM-MIB.yaml +26 -25
  91. data/data/ruby/snmp/mibs/HC-PerfHist-TC-MIB.yaml +1 -0
  92. data/data/ruby/snmp/mibs/HC-RMON-MIB.yaml +164 -163
  93. data/data/ruby/snmp/mibs/HCNUM-TC.yaml +1 -0
  94. data/data/ruby/snmp/mibs/HDSL2-SHDSL-LINE-MIB.yaml +117 -112
  95. data/data/ruby/snmp/mibs/HOST-RESOURCES-MIB.yaml +82 -81
  96. data/data/ruby/snmp/mibs/HOST-RESOURCES-TYPES.yaml +40 -39
  97. data/data/ruby/snmp/mibs/HPR-IP-MIB.yaml +17 -16
  98. data/data/ruby/snmp/mibs/HPR-MIB.yaml +64 -63
  99. data/data/ruby/snmp/mibs/IANA-ITU-ALARM-TC-MIB.yaml +3 -0
  100. data/data/ruby/snmp/mibs/IF-CAP-STACK-MIB.yaml +13 -0
  101. data/data/ruby/snmp/mibs/IF-INVERTED-STACK-MIB.yaml +6 -5
  102. data/data/ruby/snmp/mibs/IF-MIB.yaml +57 -56
  103. data/data/ruby/snmp/mibs/IFCP-MGMT-MIB.yaml +65 -0
  104. data/data/ruby/snmp/mibs/IGMP-STD-MIB.yaml +24 -23
  105. data/data/ruby/snmp/mibs/INET-ADDRESS-MIB.yaml +1 -0
  106. data/data/ruby/snmp/mibs/INTEGRATED-SERVICES-GUARANTEED-MIB.yaml +6 -5
  107. data/data/ruby/snmp/mibs/INTEGRATED-SERVICES-MIB.yaml +29 -28
  108. data/data/ruby/snmp/mibs/INTERFACETOPN-MIB.yaml +21 -20
  109. data/data/ruby/snmp/mibs/IP-FORWARD-MIB.yaml +49 -27
  110. data/data/ruby/snmp/mibs/IP-MIB.yaml +243 -40
  111. data/data/ruby/snmp/mibs/IPATM-IPMC-MIB.yaml +179 -178
  112. data/data/ruby/snmp/mibs/IPMCAST-MIB.yaml +105 -0
  113. data/data/ruby/snmp/mibs/IPMROUTE-STD-MIB.yaml +49 -48
  114. data/data/ruby/snmp/mibs/IPOA-MIB.yaml +74 -73
  115. data/data/ruby/snmp/mibs/IPS-AUTH-MIB.yaml +68 -0
  116. data/data/ruby/snmp/mibs/IPSEC-SPD-MIB.yaml +121 -0
  117. data/data/ruby/snmp/mibs/IPV6-FLOW-LABEL-MIB.yaml +1 -0
  118. data/data/ruby/snmp/mibs/IPV6-ICMP-MIB.yaml +27 -26
  119. data/data/ruby/snmp/mibs/IPV6-MIB.yaml +70 -69
  120. data/data/ruby/snmp/mibs/IPV6-MLD-MIB.yaml +18 -17
  121. data/data/ruby/snmp/mibs/IPV6-TCP-MIB.yaml +7 -6
  122. data/data/ruby/snmp/mibs/IPV6-UDP-MIB.yaml +6 -5
  123. data/data/ruby/snmp/mibs/ISCSI-MIB.yaml +199 -0
  124. data/data/ruby/snmp/mibs/ISDN-MIB.yaml +57 -56
  125. data/data/ruby/snmp/mibs/ISIS-MIB.yaml +247 -0
  126. data/data/ruby/snmp/mibs/ISNS-MIB.yaml +179 -0
  127. data/data/ruby/snmp/mibs/ITU-ALARM-MIB.yaml +34 -0
  128. data/data/ruby/snmp/mibs/ITU-ALARM-TC-MIB.yaml +3 -0
  129. data/data/ruby/snmp/mibs/Job-Monitoring-MIB.yaml +26 -27
  130. data/data/ruby/snmp/mibs/L2TP-MIB.yaml +138 -137
  131. data/data/ruby/snmp/mibs/LANGTAG-TC-MIB.yaml +3 -0
  132. data/data/ruby/snmp/mibs/LMP-MIB.yaml +202 -0
  133. data/data/ruby/snmp/mibs/MALLOC-MIB.yaml +66 -65
  134. data/data/ruby/snmp/mibs/MAU-MIB.yaml +55 -95
  135. data/data/ruby/snmp/mibs/MIDCOM-MIB.yaml +83 -0
  136. data/data/ruby/snmp/mibs/MIOX25-MIB.yaml +28 -27
  137. data/data/ruby/snmp/mibs/MIP-MIB.yaml +157 -156
  138. data/data/ruby/snmp/mibs/MOBILEIPV6-MIB.yaml +189 -0
  139. data/data/ruby/snmp/mibs/MPLS-FTN-STD-MIB.yaml +29 -28
  140. data/data/ruby/snmp/mibs/MPLS-L3VPN-STD-MIB.yaml +88 -0
  141. data/data/ruby/snmp/mibs/MPLS-LC-ATM-STD-MIB.yaml +19 -0
  142. data/data/ruby/snmp/mibs/MPLS-LC-FR-STD-MIB.yaml +16 -0
  143. data/data/ruby/snmp/mibs/MPLS-LDP-ATM-STD-MIB.yaml +23 -22
  144. data/data/ruby/snmp/mibs/MPLS-LDP-FRAME-RELAY-STD-MIB.yaml +17 -16
  145. data/data/ruby/snmp/mibs/MPLS-LDP-GENERIC-STD-MIB.yaml +9 -8
  146. data/data/ruby/snmp/mibs/MPLS-LDP-STD-MIB.yaml +103 -102
  147. data/data/ruby/snmp/mibs/MPLS-LSR-STD-MIB.yaml +85 -84
  148. data/data/ruby/snmp/mibs/MPLS-TC-STD-MIB.yaml +1 -0
  149. data/data/ruby/snmp/mibs/MPLS-TE-STD-MIB.yaml +106 -105
  150. data/data/ruby/snmp/mibs/MSDP-MIB.yaml +71 -0
  151. data/data/ruby/snmp/mibs/MTA-MIB.yaml +42 -41
  152. data/data/ruby/snmp/mibs/Modem-MIB.yaml +87 -86
  153. data/data/ruby/snmp/mibs/NAT-MIB.yaml +116 -0
  154. data/data/ruby/snmp/mibs/NETWORK-SERVICES-MIB.yaml +18 -17
  155. data/data/ruby/snmp/mibs/NHRP-MIB.yaml +140 -139
  156. data/data/ruby/snmp/mibs/NOTIFICATION-LOG-MIB.yaml +37 -36
  157. data/data/ruby/snmp/mibs/OPT-IF-MIB.yaml +394 -393
  158. data/data/ruby/snmp/mibs/OSPF-MIB.yaml +192 -123
  159. data/data/ruby/snmp/mibs/OSPF-TRAP-MIB.yaml +24 -19
  160. data/data/ruby/snmp/mibs/P-BRIDGE-MIB.yaml +37 -35
  161. data/data/ruby/snmp/mibs/PARALLEL-MIB.yaml +16 -15
  162. data/data/ruby/snmp/mibs/PIM-MIB.yaml +47 -46
  163. data/data/ruby/snmp/mibs/PIM-STD-MIB.yaml +235 -0
  164. data/data/ruby/snmp/mibs/PINT-MIB.yaml +38 -37
  165. data/data/ruby/snmp/mibs/PKTC-IETF-MTA-MIB.yaml +81 -0
  166. data/data/ruby/snmp/mibs/PKTC-IETF-SIG-MIB.yaml +128 -0
  167. data/data/ruby/snmp/mibs/POLICY-BASED-MANAGEMENT-MIB.yaml +94 -0
  168. data/data/ruby/snmp/mibs/POWER-ETHERNET-MIB.yaml +27 -26
  169. data/data/ruby/snmp/mibs/PPP-BRIDGE-NCP-MIB.yaml +16 -15
  170. data/data/ruby/snmp/mibs/PPP-IP-NCP-MIB.yaml +7 -6
  171. data/data/ruby/snmp/mibs/PPP-LCP-MIB.yaml +33 -32
  172. data/data/ruby/snmp/mibs/PPP-SEC-MIB.yaml +13 -12
  173. data/data/ruby/snmp/mibs/PTOPO-MIB.yaml +29 -28
  174. data/data/ruby/snmp/mibs/PerfHist-TC-MIB.yaml +1 -0
  175. data/data/ruby/snmp/mibs/Printer-MIB.yaml +185 -184
  176. data/data/ruby/snmp/mibs/Q-BRIDGE-MIB.yaml +96 -82
  177. data/data/ruby/snmp/mibs/RADIUS-ACC-CLIENT-MIB.yaml +34 -16
  178. data/data/ruby/snmp/mibs/RADIUS-ACC-SERVER-MIB.yaml +40 -24
  179. data/data/ruby/snmp/mibs/RADIUS-AUTH-CLIENT-MIB.yaml +38 -18
  180. data/data/ruby/snmp/mibs/RADIUS-AUTH-SERVER-MIB.yaml +40 -23
  181. data/data/ruby/snmp/mibs/RADIUS-DYNAUTH-CLIENT-MIB.yaml +44 -0
  182. data/data/ruby/snmp/mibs/RADIUS-DYNAUTH-SERVER-MIB.yaml +40 -0
  183. data/data/ruby/snmp/mibs/RAQMON-MIB.yaml +90 -0
  184. data/data/ruby/snmp/mibs/RDBMS-MIB.yaml +69 -68
  185. data/data/ruby/snmp/mibs/RFC1065-SMI.yaml +4 -5
  186. data/data/ruby/snmp/mibs/RFC1155-SMI.yaml +4 -5
  187. data/data/ruby/snmp/mibs/RFC1158-MIB.yaml +174 -173
  188. data/data/ruby/snmp/mibs/RFC1213-MIB.yaml +173 -172
  189. data/data/ruby/snmp/mibs/RFC1269-MIB.yaml +20 -19
  190. data/data/ruby/snmp/mibs/RFC1271-MIB.yaml +185 -184
  191. data/data/ruby/snmp/mibs/RFC1285-MIB.yaml +85 -84
  192. data/data/ruby/snmp/mibs/RFC1316-MIB.yaml +30 -29
  193. data/data/ruby/snmp/mibs/RFC1381-MIB.yaml +40 -39
  194. data/data/ruby/snmp/mibs/RFC1382-MIB.yaml +149 -148
  195. data/data/ruby/snmp/mibs/RFC1414-MIB.yaml +4 -3
  196. data/data/ruby/snmp/mibs/RIPv2-MIB.yaml +25 -24
  197. data/data/ruby/snmp/mibs/RMON-MIB.yaml +192 -191
  198. data/data/ruby/snmp/mibs/RMON2-MIB.yaml +253 -252
  199. data/data/ruby/snmp/mibs/ROHC-MIB.yaml +49 -48
  200. data/data/ruby/snmp/mibs/ROHC-RTP-MIB.yaml +19 -18
  201. data/data/ruby/snmp/mibs/ROHC-UNCOMPRESSED-MIB.yaml +6 -5
  202. data/data/ruby/snmp/mibs/RS-232-MIB.yaml +36 -35
  203. data/data/ruby/snmp/mibs/RSTP-MIB.yaml +18 -0
  204. data/data/ruby/snmp/mibs/RSVP-MIB.yaml +137 -136
  205. data/data/ruby/snmp/mibs/RTP-MIB.yaml +42 -41
  206. data/data/ruby/snmp/mibs/SCSI-MIB.yaml +160 -0
  207. data/data/ruby/snmp/mibs/SCTP-MIB.yaml +83 -0
  208. data/data/ruby/snmp/mibs/SFLOW-MIB.yaml +15 -14
  209. data/data/ruby/snmp/mibs/SIP-COMMON-MIB.yaml +112 -0
  210. data/data/ruby/snmp/mibs/SIP-MIB.yaml +56 -55
  211. data/data/ruby/snmp/mibs/SIP-SERVER-MIB.yaml +52 -0
  212. data/data/ruby/snmp/mibs/SIP-TC-MIB.yaml +3 -0
  213. data/data/ruby/snmp/mibs/SIP-UA-MIB.yaml +14 -0
  214. data/data/ruby/snmp/mibs/SLAPM-MIB.yaml +134 -133
  215. data/data/ruby/snmp/mibs/SMON-MIB.yaml +47 -46
  216. data/data/ruby/snmp/mibs/SNA-NAU-MIB.yaml +117 -116
  217. data/data/ruby/snmp/mibs/SNA-SDLC-MIB.yaml +126 -125
  218. data/data/ruby/snmp/mibs/SNMP-COMMUNITY-MIB.yaml +12 -11
  219. data/data/ruby/snmp/mibs/SNMP-FRAMEWORK-MIB.yaml +8 -7
  220. data/data/ruby/snmp/mibs/SNMP-MPD-MIB.yaml +6 -5
  221. data/data/ruby/snmp/mibs/SNMP-NOTIFICATION-MIB.yaml +16 -15
  222. data/data/ruby/snmp/mibs/SNMP-PROXY-MIB.yaml +10 -9
  223. data/data/ruby/snmp/mibs/SNMP-REPEATER-MIB.yaml +120 -119
  224. data/data/ruby/snmp/mibs/SNMP-TARGET-MIB.yaml +19 -18
  225. data/data/ruby/snmp/mibs/SNMP-USER-BASED-SM-MIB.yaml +26 -25
  226. data/data/ruby/snmp/mibs/SNMP-USM-AES-MIB.yaml +4 -0
  227. data/data/ruby/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.yaml +10 -9
  228. data/data/ruby/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.yaml +26 -25
  229. data/data/ruby/snmp/mibs/SNMPv2-MIB.yaml +46 -45
  230. data/data/ruby/snmp/mibs/SNMPv2-SMI.yaml +12 -11
  231. data/data/ruby/snmp/mibs/SNMPv2-TM.yaml +5 -4
  232. data/data/ruby/snmp/mibs/SNMPv2-USEC-MIB.yaml +10 -9
  233. data/data/ruby/snmp/mibs/SONET-MIB.yaml +110 -109
  234. data/data/ruby/snmp/mibs/SOURCE-ROUTING-MIB.yaml +18 -17
  235. data/data/ruby/snmp/mibs/SSPM-MIB.yaml +67 -0
  236. data/data/ruby/snmp/mibs/SYSAPPL-MIB.yaml +65 -64
  237. data/data/ruby/snmp/mibs/T11-FC-FABRIC-ADDR-MGR-MIB.yaml +63 -0
  238. data/data/ruby/snmp/mibs/T11-FC-FABRIC-CONFIG-SERVER-MIB.yaml +100 -0
  239. data/data/ruby/snmp/mibs/T11-FC-FABRIC-LOCK-MIB.yaml +22 -0
  240. data/data/ruby/snmp/mibs/T11-FC-FSPF-MIB.yaml +70 -0
  241. data/data/ruby/snmp/mibs/T11-FC-NAME-SERVER-MIB.yaml +56 -0
  242. data/data/ruby/snmp/mibs/T11-FC-ROUTE-MIB.yaml +27 -0
  243. data/data/ruby/snmp/mibs/T11-FC-RSCN-MIB.yaml +47 -0
  244. data/data/ruby/snmp/mibs/T11-FC-VIRTUAL-FABRIC-MIB.yaml +31 -0
  245. data/data/ruby/snmp/mibs/T11-FC-ZONE-SERVER-MIB.yaml +124 -0
  246. data/data/ruby/snmp/mibs/T11-TC-MIB.yaml +3 -0
  247. data/data/ruby/snmp/mibs/TCP-ESTATS-MIB.yaml +167 -0
  248. data/data/ruby/snmp/mibs/TCP-MIB.yaml +37 -18
  249. data/data/ruby/snmp/mibs/TCPIPX-MIB.yaml +16 -15
  250. data/data/ruby/snmp/mibs/TE-LINK-STD-MIB.yaml +82 -0
  251. data/data/ruby/snmp/mibs/TE-MIB.yaml +81 -0
  252. data/data/ruby/snmp/mibs/TIME-AGGREGATE-MIB.yaml +22 -0
  253. data/data/ruby/snmp/mibs/TN3270E-MIB.yaml +85 -84
  254. data/data/ruby/snmp/mibs/TN3270E-RT-MIB.yaml +33 -32
  255. data/data/ruby/snmp/mibs/TOKEN-RING-RMON-MIB.yaml +159 -158
  256. data/data/ruby/snmp/mibs/TOKENRING-MIB.yaml +42 -41
  257. data/data/ruby/snmp/mibs/TOKENRING-STATION-SR-MIB.yaml +8 -7
  258. data/data/ruby/snmp/mibs/TRANSPORT-ADDRESS-MIB.yaml +13 -12
  259. data/data/ruby/snmp/mibs/TRIP-MIB.yaml +118 -0
  260. data/data/ruby/snmp/mibs/TRIP-TC-MIB.yaml +3 -0
  261. data/data/ruby/snmp/mibs/TUNNEL-MIB.yaml +29 -13
  262. data/data/ruby/snmp/mibs/UDP-MIB.yaml +19 -6
  263. data/data/ruby/snmp/mibs/UDPLITE-MIB.yaml +26 -0
  264. data/data/ruby/snmp/mibs/UPS-MIB.yaml +100 -99
  265. data/data/ruby/snmp/mibs/URI-TC-MIB.yaml +3 -0
  266. data/data/ruby/snmp/mibs/VDSL-LINE-EXT-MCM-MIB.yaml +42 -0
  267. data/data/ruby/snmp/mibs/VDSL-LINE-EXT-SCM-MIB.yaml +27 -0
  268. data/data/ruby/snmp/mibs/VDSL-LINE-MIB.yaml +162 -161
  269. data/data/ruby/snmp/mibs/VPN-TC-STD-MIB.yaml +3 -0
  270. data/data/ruby/snmp/mibs/VRRP-MIB.yaml +39 -38
  271. data/data/ruby/snmp/mibs/WWW-MIB.yaml +75 -74
  272. data/examples/dump.rb +5 -5
  273. data/examples/iftable.rb +4 -4
  274. data/examples/link_down.rb +18 -18
  275. data/examples/log_traps.rb +9 -9
  276. data/examples/walk.rb +4 -4
  277. data/lib/snmp/agent.rb +42 -43
  278. data/lib/snmp/ber.rb +155 -156
  279. data/lib/snmp/manager.rb +412 -372
  280. data/lib/snmp/mib.rb +172 -182
  281. data/lib/snmp/options.rb +64 -0
  282. data/lib/snmp/pdu.rb +245 -245
  283. data/lib/snmp/varbind.rb +346 -341
  284. data/lib/snmp/version.rb +3 -0
  285. data/test/test_ber.rb +232 -233
  286. data/test/test_manager.rb +277 -238
  287. data/test/test_mib.rb +57 -57
  288. data/test/test_pdu.rb +172 -172
  289. data/test/test_retry.rb +54 -54
  290. data/test/test_smi.rb +10 -10
  291. data/test/test_varbind.rb +342 -331
  292. data/test/test_walk.rb +150 -150
  293. metadata +103 -45
  294. data/README +0 -252
  295. data/setup.rb +0 -1360
@@ -0,0 +1,3 @@
1
+ module SNMP
2
+ VERSION = "1.0.4"
3
+ end
@@ -4,237 +4,236 @@ require 'snmp/ber'
4
4
 
5
5
  class ASN1_Test < Test::Unit::TestCase
6
6
 
7
- include SNMP::BER
8
-
9
- def test_decode_tlv_empty
10
- tag, value, data = decode_tlv("\001\000")
11
- assert_equal(1, tag)
12
- assert_equal("", value)
13
- assert_equal("", data)
14
-
15
- tag, value, data = decode_tlv("\001\000\111")
16
- assert_equal(1, tag)
17
- assert_equal("", value)
18
- assert_equal("\111", data)
19
- end
20
-
21
- # Decode TLV data with the short-format length field.
22
- def test_decode_tlv_short
23
- tag, value, data = decode_tlv("\001\002\023\044")
24
- assert_equal(1, tag)
25
- assert_equal("\023\044", value)
26
- assert_equal("", data)
27
- end
28
-
29
- # Extra bytes of data are returned.
30
- def test_decode_tlv_short_extra
31
- tag, value, data = decode_tlv("\001\002\023\044\000")
32
- assert_equal(1, tag)
33
- assert_equal("\023\044", value)
34
- assert_equal("\000", data)
35
- end
36
-
37
- # Decode TLV data with long-format length field
38
- def test_decode_tlv_long
39
- long_data = ""; 128.times { |i| long_data << i.chr }
40
- tag, value, data = decode_tlv("\001\201\200" + long_data)
41
- assert_equal(1, tag)
42
- assert_equal(long_data, value)
43
- assert_equal("", data)
44
- end
45
-
46
- # Long format with extra bytes - use four bytes for length
47
- def test_decode_tlv_long_extra
48
- long_data = ""; 129.times { |i| long_data << i.chr }
49
- tag, value, data = decode_tlv("\001\204\000\000\000\201" + long_data + "\123\123\123")
50
- assert_equal(1, tag)
51
- assert_equal(long_data, value)
52
- assert_equal("\123\123\123", data)
53
- end
54
-
55
- # Check invalid length - ASN.1 says that first length octet can't be 255.
56
- def test_bad_length
57
- assert_raise(InvalidLength) {
58
- decode_tlv("\001\377\001")
59
- }
60
- end
61
-
62
- # Check if input data is too short
63
- def test_out_of_data
64
- assert_raise(OutOfData) {
65
- decode_tlv("\001\001")
66
- }
67
- assert_raise(OutOfData) {
68
- decode_tlv("\001")
69
- }
70
- assert_raise(OutOfData) {
71
- decode_tlv("")
72
- }
73
- end
74
-
75
- # Decode single-octet ASN.1 integer.
76
- # Number is negative (2's complement) if high order bit is 1.
77
- def test_decode_integer_octet
78
- i, data = decode_integer("\002\001\042")
79
- assert_equal(34, i)
80
- assert_equal("", data)
81
- i, data = decode_integer("\002\001\377")
82
- assert_equal(-1, i)
83
- assert_equal("", data)
84
- end
85
-
86
- # Decode multi-octet ASN.1 integer.
87
- def test_decode_integer
88
- i, data = decode_integer("\002\004\001\002\003\004")
89
- assert_equal(16909060, i)
90
- assert_equal("", data)
91
-
92
- i, data = decode_integer("\002\004\377\377\377\376")
93
- assert_equal(-2, i)
94
- assert_equal("", data)
95
-
96
- i, data = decode_integer("\002\003\000\377\376")
97
- assert_equal(65534, i)
98
- assert_equal("", data)
99
-
100
- i, data = decode_integer("\002\002\000\377")
101
- assert_equal(255, i)
102
- assert_equal("", data)
103
-
104
- assert_raise(InvalidTag) {
105
- decode_integer("\001\004\001\002\003\004")
106
- }
107
- end
108
-
109
- def test_decode_timeticks
110
- i, data = decode_timeticks("\103\004\001\002\003\004")
111
- assert_equal(16909060, i)
112
- assert_equal("", data)
113
-
114
- assert_raise(InvalidTag) {
115
- decode_timeticks("\002\004\001\002\003\004")
116
- }
117
- end
118
-
119
- # Decode ASN.1 octet string
120
- def test_decode_octet_string
121
- s, data = decode_octet_string("\004\202\000\005hello")
122
- assert_equal("hello",s)
123
- assert_raise(InvalidTag) {
124
- decode_octet_string("\005\202\000\005hello")
125
- }
126
- end
127
-
128
- def test_decode_ip_address
129
- ip, data = decode_ip_address("@\004\001\002\003\004")
130
- assert_equal(ip, "\001\002\003\004")
131
- assert_raise(InvalidTag) {
132
- decode_ip_address("\004\004\001\002\003\004")
133
- }
134
- assert_raise(InvalidLength) {
135
- decode_ip_address("@\005\001\002\003\004\005")
136
- }
137
- end
138
-
139
- # Decode ASN.1 sequence
140
- def test_decode_sequence
141
- seq, data = decode_sequence("\060\003\002\001\077")
142
- assert_equal("\002\001\077", seq)
143
- assert_equal("", data)
144
-
145
- seq, data = decode_sequence("\060\003\002\001\077\002\001\001")
146
- assert_equal("\002\001\077", seq)
147
- assert_equal("\002\001\001", data)
148
-
149
- assert_raise(InvalidTag) {
150
- decode_sequence("\061\003\002\001\077")
151
- }
152
- end
153
-
154
- def test_decode_object_id
155
- # Handle an empty object identifier because net-snmp does it and
156
- # they probably had a good reason.
157
- object_id, remainder = decode_object_id("\006\000")
158
- assert_equal([], object_id)
159
- assert_equal("", remainder)
160
-
161
- object_id, remainder = decode_object_id("\006\001+")
162
- assert_equal([1,3], object_id);
163
- assert_equal("", remainder)
164
-
165
- object_id, remainder = decode_object_id("\006\002+\006")
166
- assert_equal([1,3,6], object_id);
167
- assert_equal("", remainder)
168
-
169
- object_id, remainder = decode_object_id("\006\003+\202\001")
170
- assert_equal([1,3,257], object_id);
171
- assert_equal("", remainder)
172
-
173
- object_id, remainder = decode_object_id("\006\003S\202\001")
174
- assert_equal([2,3,257], object_id);
175
- assert_equal("", remainder)
176
-
177
- object_id, remainder = decode_object_id("\006\001\000")
178
- assert_equal([0,0], object_id);
179
- assert_equal("", remainder)
180
-
181
- assert_raise(InvalidTag) do
182
- decode_object_id("\007\001+")
183
- end
184
- end
185
-
186
- def test_encode_length
187
- assert_equal("\000", encode_length(0))
188
- assert_equal("\001", encode_length(1))
189
- assert_equal("\177", encode_length(127))
190
- assert_equal("\201\200", encode_length(128))
191
- assert_equal("\202\002\001", encode_length(513))
192
- assert_raise(InvalidLength) { encode_length(-1) }
193
- end
194
-
195
- def test_encode_integer
196
- assert_equal("\002\001\000", encode_integer(0))
197
- assert_equal("\002\001\001", encode_integer(1))
198
- assert_equal("\002\001\177", encode_integer(127))
199
- assert_equal("\002\002\000\200", encode_integer(128))
200
- assert_equal("\002\002\000\377", encode_integer(255))
201
- assert_equal("\002\002\001\000", encode_integer(256))
202
-
203
- assert_equal("\002\001\377", encode_integer(-1))
204
- assert_equal("\002\001\200", encode_integer(-128))
205
- assert_equal("\002\002\377\177", encode_integer(-129))
206
- end
207
-
208
- def test_encode_octet_string
209
- assert_equal("\004\015Dave was here", encode_octet_string("Dave was here"))
210
- assert_equal("\004\000", encode_octet_string(""))
211
- end
212
-
213
- def test_encode_sequence
214
- assert_equal("0\015Dave was here", encode_sequence("Dave was here"))
215
- assert_equal("0\000", encode_sequence(""))
216
- end
217
-
218
- def test_encode_null
219
- assert_equal("\005\000", encode_null)
220
- end
221
-
222
- def test_encode_exception
223
- assert_equal("\200\000", encode_exception(0x80))
224
- end
225
-
226
- def test_encode_object_id
227
- assert_equal("\006\001" << 80.chr, encode_object_id([2]))
228
- assert_equal("\006\001\000", encode_object_id([0,0]))
229
- assert_equal("\006\001+", encode_object_id([1,3]))
230
- assert_equal("\006\002+\006", encode_object_id([1,3,6]))
231
- assert_equal("\006\003+\202\001", encode_object_id([1,3,257]))
232
- assert_equal("\006\003" << 82.chr << "\202\001", encode_object_id([2,2,257]))
233
- assert_raise(InvalidObjectId) { encode_object_id([3,2,257]) }
234
- assert_raise(InvalidObjectId) { encode_object_id([]) }
235
-
236
- assert_equal("\006\a+\203\377\177\203\377\177",
237
- encode_object_id(SNMP::ObjectId.new("1.3.65535.65535")))
238
- end
7
+ include SNMP::BER
8
+
9
+ def test_decode_tlv_empty
10
+ tag, value, data = decode_tlv("\001\000")
11
+ assert_equal(1, tag)
12
+ assert_equal("", value)
13
+ assert_equal("", data)
14
+
15
+ tag, value, data = decode_tlv("\001\000\111")
16
+ assert_equal(1, tag)
17
+ assert_equal("", value)
18
+ assert_equal("\111", data)
19
+ end
20
+
21
+ # Decode TLV data with the short-format length field.
22
+ def test_decode_tlv_short
23
+ tag, value, data = decode_tlv("\001\002\023\044")
24
+ assert_equal(1, tag)
25
+ assert_equal("\023\044", value)
26
+ assert_equal("", data)
27
+ end
28
+
29
+ # Extra bytes of data are returned.
30
+ def test_decode_tlv_short_extra
31
+ tag, value, data = decode_tlv("\001\002\023\044\000")
32
+ assert_equal(1, tag)
33
+ assert_equal("\023\044", value)
34
+ assert_equal("\000", data)
35
+ end
36
+
37
+ # Decode TLV data with long-format length field
38
+ def test_decode_tlv_long
39
+ long_data = ""; 128.times { |i| long_data << i.chr }
40
+ tag, value, data = decode_tlv("\001\201\200" + long_data)
41
+ assert_equal(1, tag)
42
+ assert_equal(long_data, value)
43
+ assert_equal("", data)
44
+ end
45
+
46
+ # Long format with extra bytes - use four bytes for length
47
+ def test_decode_tlv_long_extra
48
+ long_data = ""; 129.times { |i| long_data << i.chr }
49
+ tag, value, data = decode_tlv("\001\204\000\000\000\201" + long_data + "\123\123\123")
50
+ assert_equal(1, tag)
51
+ assert_equal(long_data, value)
52
+ assert_equal("\123\123\123", data)
53
+ end
54
+
55
+ # Check invalid length - ASN.1 says that first length octet can't be 255.
56
+ def test_bad_length
57
+ assert_raise(InvalidLength) {
58
+ decode_tlv("\001\377\001")
59
+ }
60
+ end
61
+
62
+ # Check if input data is too short
63
+ def test_out_of_data
64
+ assert_raise(OutOfData) {
65
+ decode_tlv("\001\001")
66
+ }
67
+ assert_raise(OutOfData) {
68
+ decode_tlv("\001")
69
+ }
70
+ assert_raise(OutOfData) {
71
+ decode_tlv("")
72
+ }
73
+ end
74
+
75
+ # Decode single-octet ASN.1 integer.
76
+ # Number is negative (2's complement) if high order bit is 1.
77
+ def test_decode_integer_octet
78
+ i, data = decode_integer("\002\001\042")
79
+ assert_equal(34, i)
80
+ assert_equal("", data)
81
+ i, data = decode_integer("\002\001\377")
82
+ assert_equal(-1, i)
83
+ assert_equal("", data)
84
+ end
85
+
86
+ # Decode multi-octet ASN.1 integer.
87
+ def test_decode_integer
88
+ i, data = decode_integer("\002\004\001\002\003\004")
89
+ assert_equal(16909060, i)
90
+ assert_equal("", data)
91
+
92
+ i, data = decode_integer("\002\004\377\377\377\376")
93
+ assert_equal(-2, i)
94
+ assert_equal("", data)
95
+
96
+ i, data = decode_integer("\002\003\000\377\376")
97
+ assert_equal(65534, i)
98
+ assert_equal("", data)
99
+
100
+ i, data = decode_integer("\002\002\000\377")
101
+ assert_equal(255, i)
102
+ assert_equal("", data)
103
+
104
+ assert_raise(InvalidTag) {
105
+ decode_integer("\001\004\001\002\003\004")
106
+ }
107
+ end
108
+
109
+ def test_decode_timeticks
110
+ i, data = decode_timeticks("\103\004\001\002\003\004")
111
+ assert_equal(16909060, i)
112
+ assert_equal("", data)
113
+
114
+ assert_raise(InvalidTag) {
115
+ decode_timeticks("\002\004\001\002\003\004")
116
+ }
117
+ end
118
+
119
+ # Decode ASN.1 octet string
120
+ def test_decode_octet_string
121
+ s, data = decode_octet_string("\004\202\000\005hello")
122
+ assert_equal("hello",s)
123
+ assert_raise(InvalidTag) {
124
+ decode_octet_string("\005\202\000\005hello")
125
+ }
126
+ end
127
+
128
+ def test_decode_ip_address
129
+ ip, data = decode_ip_address("@\004\001\002\003\004")
130
+ assert_equal(ip, "\001\002\003\004")
131
+ assert_raise(InvalidTag) {
132
+ decode_ip_address("\004\004\001\002\003\004")
133
+ }
134
+ assert_raise(InvalidLength) {
135
+ decode_ip_address("@\005\001\002\003\004\005")
136
+ }
137
+ end
138
+
139
+ # Decode ASN.1 sequence
140
+ def test_decode_sequence
141
+ seq, data = decode_sequence("\060\003\002\001\077")
142
+ assert_equal("\002\001\077", seq)
143
+ assert_equal("", data)
144
+
145
+ seq, data = decode_sequence("\060\003\002\001\077\002\001\001")
146
+ assert_equal("\002\001\077", seq)
147
+ assert_equal("\002\001\001", data)
148
+
149
+ assert_raise(InvalidTag) {
150
+ decode_sequence("\061\003\002\001\077")
151
+ }
152
+ end
153
+
154
+ def test_decode_object_id
155
+ # Handle an empty object identifier because net-snmp does it and
156
+ # they probably had a good reason.
157
+ object_id, remainder = decode_object_id("\006\000")
158
+ assert_equal([], object_id)
159
+ assert_equal("", remainder)
160
+
161
+ object_id, remainder = decode_object_id("\006\001+")
162
+ assert_equal([1,3], object_id);
163
+ assert_equal("", remainder)
164
+
165
+ object_id, remainder = decode_object_id("\006\002+\006")
166
+ assert_equal([1,3,6], object_id);
167
+ assert_equal("", remainder)
168
+
169
+ object_id, remainder = decode_object_id("\006\003+\202\001")
170
+ assert_equal([1,3,257], object_id);
171
+ assert_equal("", remainder)
172
+
173
+ object_id, remainder = decode_object_id("\006\003S\202\001")
174
+ assert_equal([2,3,257], object_id);
175
+ assert_equal("", remainder)
176
+
177
+ object_id, remainder = decode_object_id("\006\001\000")
178
+ assert_equal([0,0], object_id);
179
+ assert_equal("", remainder)
180
+
181
+ assert_raise(InvalidTag) do
182
+ decode_object_id("\007\001+")
183
+ end
184
+ end
185
+
186
+ def test_encode_length
187
+ assert_equal("\000", encode_length(0))
188
+ assert_equal("\001", encode_length(1))
189
+ assert_equal("\177", encode_length(127))
190
+ assert_equal("\201\200", encode_length(128))
191
+ assert_equal("\202\002\001", encode_length(513))
192
+ assert_raise(InvalidLength) { encode_length(-1) }
193
+ end
194
+
195
+ def test_encode_integer
196
+ assert_equal("\002\001\000", encode_integer(0))
197
+ assert_equal("\002\001\001", encode_integer(1))
198
+ assert_equal("\002\001\177", encode_integer(127))
199
+ assert_equal("\002\002\000\200", encode_integer(128))
200
+ assert_equal("\002\002\000\377", encode_integer(255))
201
+ assert_equal("\002\002\001\000", encode_integer(256))
202
+
203
+ assert_equal("\002\001\377", encode_integer(-1))
204
+ assert_equal("\002\001\200", encode_integer(-128))
205
+ assert_equal("\002\002\377\177", encode_integer(-129))
206
+ end
207
+
208
+ def test_encode_octet_string
209
+ assert_equal("\004\015Dave was here", encode_octet_string("Dave was here"))
210
+ assert_equal("\004\000", encode_octet_string(""))
211
+ end
212
+
213
+ def test_encode_sequence
214
+ assert_equal("0\015Dave was here", encode_sequence("Dave was here"))
215
+ assert_equal("0\000", encode_sequence(""))
216
+ end
217
+
218
+ def test_encode_null
219
+ assert_equal("\005\000", encode_null)
220
+ end
221
+
222
+ def test_encode_exception
223
+ assert_equal("\200\000", encode_exception(0x80))
224
+ end
225
+
226
+ def test_encode_object_id
227
+ assert_equal("\006\001" << 80.chr, encode_object_id([2]))
228
+ assert_equal("\006\001\000", encode_object_id([0,0]))
229
+ assert_equal("\006\001+", encode_object_id([1,3]))
230
+ assert_equal("\006\002+\006", encode_object_id([1,3,6]))
231
+ assert_equal("\006\003+\202\001", encode_object_id([1,3,257]))
232
+ assert_equal("\006\003" << 82.chr << "\202\001", encode_object_id([2,2,257]))
233
+ assert_raise(InvalidObjectId) { encode_object_id([3,2,257]) }
234
+ assert_raise(InvalidObjectId) { encode_object_id([]) }
235
+
236
+ assert_equal("\006\a+\203\377\177\203\377\177",
237
+ encode_object_id(SNMP::ObjectId.new("1.3.65535.65535")))
238
+ end
239
239
  end
240
-