telemetry-snmp 0.1.0

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 (131) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rspec.yml +44 -0
  3. data/.github/workflows/rubocop.yml +28 -0
  4. data/.github/workflows/sourcehawk-scan.yml +20 -0
  5. data/.gitignore +14 -0
  6. data/.rspec +4 -0
  7. data/.rubocop.yml +26 -0
  8. data/CHANGELOG.md +4 -0
  9. data/CODE_OF_CONDUCT.md +75 -0
  10. data/CONTRIBUTING.md +54 -0
  11. data/Gemfile +10 -0
  12. data/INDIVIDUAL_CONTRIBUTOR_LICENSE.md +30 -0
  13. data/LICENSE +201 -0
  14. data/NOTICE.txt +9 -0
  15. data/README.md +54 -0
  16. data/attribution.txt +1 -0
  17. data/config.ru +15 -0
  18. data/exe/snmp_collector +55 -0
  19. data/lib/telemetry/snmp.rb +23 -0
  20. data/lib/telemetry/snmp/api.rb +55 -0
  21. data/lib/telemetry/snmp/auth.rb +54 -0
  22. data/lib/telemetry/snmp/auth/defaults.rb +41 -0
  23. data/lib/telemetry/snmp/client.rb +104 -0
  24. data/lib/telemetry/snmp/controllers/device_creds.rb +105 -0
  25. data/lib/telemetry/snmp/controllers/devices.rb +94 -0
  26. data/lib/telemetry/snmp/controllers/oid_groups.rb +71 -0
  27. data/lib/telemetry/snmp/controllers/oids.rb +80 -0
  28. data/lib/telemetry/snmp/controllers/users.rb +81 -0
  29. data/lib/telemetry/snmp/controllers/walks.rb +89 -0
  30. data/lib/telemetry/snmp/data.rb +69 -0
  31. data/lib/telemetry/snmp/data/default_opts.rb +73 -0
  32. data/lib/telemetry/snmp/data/migrations/001_device_creds.rb +19 -0
  33. data/lib/telemetry/snmp/data/migrations/002_create_devices_table.rb +31 -0
  34. data/lib/telemetry/snmp/data/migrations/003_create_oids_tables.rb +16 -0
  35. data/lib/telemetry/snmp/data/migrations/004_create_oid_groups.rb +15 -0
  36. data/lib/telemetry/snmp/data/migrations/005_create_oids_oid_groups.rb +17 -0
  37. data/lib/telemetry/snmp/data/migrations/006_device_to_oid_group.rb +15 -0
  38. data/lib/telemetry/snmp/data/migrations/007_create_users.rb +20 -0
  39. data/lib/telemetry/snmp/data/migrations/008_create_walks_table.rb +14 -0
  40. data/lib/telemetry/snmp/data/migrations/009_create_tag_name_column.rb +7 -0
  41. data/lib/telemetry/snmp/data/migrations/010_create_user_audit_table.rb +18 -0
  42. data/lib/telemetry/snmp/data/models/device.rb +11 -0
  43. data/lib/telemetry/snmp/data/models/device_cred.rb +11 -0
  44. data/lib/telemetry/snmp/data/models/oid.rb +10 -0
  45. data/lib/telemetry/snmp/data/models/oid_group.rb +10 -0
  46. data/lib/telemetry/snmp/data/models/oid_oid_groups.rb +10 -0
  47. data/lib/telemetry/snmp/data/models/oid_walk.rb +10 -0
  48. data/lib/telemetry/snmp/data/models/user.rb +10 -0
  49. data/lib/telemetry/snmp/data/models/user_audit_log.rb +19 -0
  50. data/lib/telemetry/snmp/mibs/AGENTX-MIB.txt +527 -0
  51. data/lib/telemetry/snmp/mibs/AIRPORT-BASESTATION-3-MIB.txt +461 -0
  52. data/lib/telemetry/snmp/mibs/BRIDGE-MIB.txt +1472 -0
  53. data/lib/telemetry/snmp/mibs/DISMAN-EVENT-MIB.txt +1882 -0
  54. data/lib/telemetry/snmp/mibs/DISMAN-SCHEDULE-MIB.txt +699 -0
  55. data/lib/telemetry/snmp/mibs/DISMAN-SCRIPT-MIB.txt +1764 -0
  56. data/lib/telemetry/snmp/mibs/EtherLike-MIB.txt +1862 -0
  57. data/lib/telemetry/snmp/mibs/HCNUM-TC.txt +118 -0
  58. data/lib/telemetry/snmp/mibs/HOST-RESOURCES-MIB.txt +1540 -0
  59. data/lib/telemetry/snmp/mibs/HOST-RESOURCES-TYPES.txt +389 -0
  60. data/lib/telemetry/snmp/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt +123 -0
  61. data/lib/telemetry/snmp/mibs/IANA-LANGUAGE-MIB.txt +123 -0
  62. data/lib/telemetry/snmp/mibs/IANA-RTPROTO-MIB.txt +91 -0
  63. data/lib/telemetry/snmp/mibs/IANAifType-MIB.txt +619 -0
  64. data/lib/telemetry/snmp/mibs/IF-INVERTED-STACK-MIB.txt +149 -0
  65. data/lib/telemetry/snmp/mibs/IF-MIB.txt +1814 -0
  66. data/lib/telemetry/snmp/mibs/INET-ADDRESS-MIB.txt +402 -0
  67. data/lib/telemetry/snmp/mibs/IP-FORWARD-MIB.txt +1277 -0
  68. data/lib/telemetry/snmp/mibs/IP-MIB.txt +4993 -0
  69. data/lib/telemetry/snmp/mibs/IPV6-FLOW-LABEL-MIB.txt +58 -0
  70. data/lib/telemetry/snmp/mibs/IPV6-ICMP-MIB.txt +529 -0
  71. data/lib/telemetry/snmp/mibs/IPV6-MIB.txt +1443 -0
  72. data/lib/telemetry/snmp/mibs/IPV6-TC.txt +67 -0
  73. data/lib/telemetry/snmp/mibs/IPV6-TCP-MIB.txt +211 -0
  74. data/lib/telemetry/snmp/mibs/IPV6-UDP-MIB.txt +141 -0
  75. data/lib/telemetry/snmp/mibs/NET-SNMP-AGENT-MIB.txt +554 -0
  76. data/lib/telemetry/snmp/mibs/NET-SNMP-EXAMPLES-MIB.txt +285 -0
  77. data/lib/telemetry/snmp/mibs/NET-SNMP-EXTEND-MIB.txt +325 -0
  78. data/lib/telemetry/snmp/mibs/NET-SNMP-MIB.txt +67 -0
  79. data/lib/telemetry/snmp/mibs/NET-SNMP-PASS-MIB.txt +124 -0
  80. data/lib/telemetry/snmp/mibs/NET-SNMP-TC.txt +128 -0
  81. data/lib/telemetry/snmp/mibs/NET-SNMP-VACM-MIB.txt +154 -0
  82. data/lib/telemetry/snmp/mibs/NOTIFICATION-LOG-MIB.txt +753 -0
  83. data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.md5 +1 -0
  84. data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.my +2293 -0
  85. data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.md5 +1 -0
  86. data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.my +293 -0
  87. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.md5 +1 -0
  88. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.my +84 -0
  89. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.md5 +1 -0
  90. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.my +68 -0
  91. data/lib/telemetry/snmp/mibs/PAN-LC-MIB.md5 +1 -0
  92. data/lib/telemetry/snmp/mibs/PAN-LC-MIB.my +204 -0
  93. data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.md5 +1 -0
  94. data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.my +305 -0
  95. data/lib/telemetry/snmp/mibs/PAN-TRAPS.md5 +1 -0
  96. data/lib/telemetry/snmp/mibs/PAN-TRAPS.my +7809 -0
  97. data/lib/telemetry/snmp/mibs/RFC-1215.txt +38 -0
  98. data/lib/telemetry/snmp/mibs/RFC1155-SMI.txt +119 -0
  99. data/lib/telemetry/snmp/mibs/RFC1213-MIB.txt +2613 -0
  100. data/lib/telemetry/snmp/mibs/RMON-MIB.txt +3980 -0
  101. data/lib/telemetry/snmp/mibs/SCTP-MIB.txt +1342 -0
  102. data/lib/telemetry/snmp/mibs/SMUX-MIB.txt +160 -0
  103. data/lib/telemetry/snmp/mibs/SNMP-COMMUNITY-MIB.txt +429 -0
  104. data/lib/telemetry/snmp/mibs/SNMP-FRAMEWORK-MIB.txt +526 -0
  105. data/lib/telemetry/snmp/mibs/SNMP-MPD-MIB.txt +145 -0
  106. data/lib/telemetry/snmp/mibs/SNMP-NOTIFICATION-MIB.txt +589 -0
  107. data/lib/telemetry/snmp/mibs/SNMP-PROXY-MIB.txt +294 -0
  108. data/lib/telemetry/snmp/mibs/SNMP-TARGET-MIB.txt +660 -0
  109. data/lib/telemetry/snmp/mibs/SNMP-USER-BASED-SM-MIB.txt +912 -0
  110. data/lib/telemetry/snmp/mibs/SNMP-USM-AES-MIB.txt +62 -0
  111. data/lib/telemetry/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.txt +532 -0
  112. data/lib/telemetry/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.txt +830 -0
  113. data/lib/telemetry/snmp/mibs/SNMPv2-CONF.txt +322 -0
  114. data/lib/telemetry/snmp/mibs/SNMPv2-MIB.txt +854 -0
  115. data/lib/telemetry/snmp/mibs/SNMPv2-SMI.txt +344 -0
  116. data/lib/telemetry/snmp/mibs/SNMPv2-TC.txt +772 -0
  117. data/lib/telemetry/snmp/mibs/SNMPv2-TM.txt +176 -0
  118. data/lib/telemetry/snmp/mibs/TCP-MIB.txt +785 -0
  119. data/lib/telemetry/snmp/mibs/TRANSPORT-ADDRESS-MIB.txt +421 -0
  120. data/lib/telemetry/snmp/mibs/TUNNEL-MIB.txt +738 -0
  121. data/lib/telemetry/snmp/mibs/UCD-DEMO-MIB.txt +74 -0
  122. data/lib/telemetry/snmp/mibs/UCD-DISKIO-MIB.txt +171 -0
  123. data/lib/telemetry/snmp/mibs/UCD-DLMOD-MIB.txt +124 -0
  124. data/lib/telemetry/snmp/mibs/UCD-IPFWACC-MIB.txt +327 -0
  125. data/lib/telemetry/snmp/mibs/UCD-SNMP-MIB.txt +1712 -0
  126. data/lib/telemetry/snmp/mibs/UDP-MIB.txt +549 -0
  127. data/lib/telemetry/snmp/publisher.rb +130 -0
  128. data/lib/telemetry/snmp/version.rb +7 -0
  129. data/sourcehawk.yml +4 -0
  130. data/telemetry-snmp.gemspec +48 -0
  131. metadata +456 -0
@@ -0,0 +1,67 @@
1
+ NET-SNMP-MIB DEFINITIONS ::= BEGIN
2
+
3
+ --
4
+ -- Top-level infrastructure of the Net-SNMP project enterprise MIB tree
5
+ --
6
+
7
+ IMPORTS
8
+ MODULE-IDENTITY, enterprises FROM SNMPv2-SMI;
9
+
10
+ netSnmp MODULE-IDENTITY
11
+ LAST-UPDATED "200201300000Z"
12
+ ORGANIZATION "www.net-snmp.org"
13
+ CONTACT-INFO
14
+ "postal: Wes Hardaker
15
+ P.O. Box 382
16
+ Davis CA 95617
17
+
18
+ email: net-snmp-coders@lists.sourceforge.net"
19
+ DESCRIPTION
20
+ "Top-level infrastructure of the Net-SNMP project enterprise MIB tree"
21
+ REVISION "200201300000Z"
22
+ DESCRIPTION
23
+ "First draft"
24
+ ::= { enterprises 8072}
25
+
26
+
27
+ --
28
+ -- Net-SNMP enterprise-specific management objects
29
+ --
30
+
31
+ netSnmpObjects OBJECT IDENTIFIER ::= {netSnmp 1}
32
+ -- netSnmpExamples OBJECT IDENTIFIER ::= {netSnmp 2}
33
+ netSnmpEnumerations OBJECT IDENTIFIER ::= {netSnmp 3}
34
+ netSnmpModuleIDs OBJECT IDENTIFIER ::= {netSnmpEnumerations 1}
35
+ netSnmpAgentOIDs OBJECT IDENTIFIER ::= {netSnmpEnumerations 2}
36
+ netSnmpDomains OBJECT IDENTIFIER ::= {netSnmpEnumerations 3}
37
+ netSnmpExperimental OBJECT IDENTIFIER ::= {netSnmp 9999}
38
+
39
+ --
40
+ -- A subtree specifically designed for private testing purposes.
41
+ -- No "public" management objects should ever be defined within this tree.
42
+ --
43
+ -- It is provided for private experimentation, prior to transferring a MIB
44
+ -- structure to another part of the overall OID tree
45
+ --
46
+ netSnmpPlaypen OBJECT IDENTIFIER ::= {netSnmpExperimental 9999}
47
+
48
+
49
+ --
50
+ -- Notifications
51
+ --
52
+
53
+ netSnmpNotificationPrefix OBJECT IDENTIFIER ::= {netSnmp 4}
54
+ netSnmpNotifications OBJECT IDENTIFIER ::= {netSnmpNotificationPrefix 0}
55
+ netSnmpNotificationObjects OBJECT IDENTIFIER ::= {netSnmpNotificationPrefix 1}
56
+
57
+
58
+ --
59
+ -- Conformance
60
+ -- (No laughing at the back!)
61
+ --
62
+
63
+ netSnmpConformance OBJECT IDENTIFIER ::= {netSnmp 5}
64
+ netSnmpCompliances OBJECT IDENTIFIER ::= {netSnmpConformance 1}
65
+ netSnmpGroups OBJECT IDENTIFIER ::= {netSnmpConformance 2}
66
+
67
+ END
@@ -0,0 +1,124 @@
1
+ NET-SNMP-PASS-MIB DEFINITIONS ::= BEGIN
2
+
3
+ --
4
+ -- Example MIB objects for "pass" and "pass-persist" extension script
5
+ --
6
+
7
+ IMPORTS
8
+ MODULE-IDENTITY, OBJECT-TYPE, TimeTicks, IpAddress,
9
+ Counter32, Gauge32, Integer32 FROM SNMPv2-SMI
10
+ SnmpAdminString FROM SNMP-FRAMEWORK-MIB
11
+ netSnmpExamples FROM NET-SNMP-EXAMPLES-MIB
12
+ ;
13
+
14
+ netSnmpPassExamples MODULE-IDENTITY
15
+ LAST-UPDATED "200905280000Z"
16
+ ORGANIZATION "www.net-snmp.org"
17
+ CONTACT-INFO
18
+ "postal: Wes Hardaker
19
+ P.O. Box 382
20
+ Davis CA 95617
21
+
22
+ email: net-snmp-coders@lists.sourceforge.net"
23
+ DESCRIPTION
24
+ "Example MIB objects for pass/pass-persist extension script"
25
+ ::= { netSnmpExamples 255 }
26
+
27
+ --
28
+ -- Example scalars
29
+ --
30
+
31
+ netSnmpPassString OBJECT-TYPE
32
+ SYNTAX SnmpAdminString
33
+ MAX-ACCESS read-write
34
+ STATUS current
35
+ DESCRIPTION "Example string scalar object."
36
+ DEFVAL { "Life, the Universe, and Everything" }
37
+ ::= { netSnmpPassExamples 1 }
38
+
39
+ netSnmpPassTimeTicks OBJECT-TYPE
40
+ SYNTAX TimeTicks
41
+ MAX-ACCESS read-write
42
+ STATUS current
43
+ DESCRIPTION "Example timetick object."
44
+ DEFVAL { 363136200 } -- 42 days, 0:42:42.00
45
+ ::= { netSnmpPassExamples 3 }
46
+
47
+ netSnmpPassIpAddress OBJECT-TYPE
48
+ SYNTAX IpAddress
49
+ MAX-ACCESS read-write
50
+ STATUS current
51
+ DESCRIPTION "Example IP Address object."
52
+ DEFVAL { '7f000001'H } -- 127.0.0.1
53
+ ::= { netSnmpPassExamples 4 }
54
+
55
+ netSnmpPassCounter OBJECT-TYPE
56
+ SYNTAX Counter32
57
+ MAX-ACCESS read-only
58
+ STATUS current
59
+ DESCRIPTION "Example counter object.
60
+ Note that this object will always return the value '42'."
61
+ ::= { netSnmpPassExamples 5 }
62
+
63
+ netSnmpPassGauge OBJECT-TYPE
64
+ SYNTAX Gauge32
65
+ MAX-ACCESS read-write
66
+ STATUS current
67
+ DESCRIPTION "Example Gauge object."
68
+ DEFVAL { 42 }
69
+ ::= { netSnmpPassExamples 6 }
70
+
71
+
72
+ netSnmpPassOIDValue OBJECT IDENTIFIER
73
+ ::= { netSnmpPassExamples 99 }
74
+
75
+ --
76
+ -- Example Table
77
+ --
78
+
79
+ netSnmpPassTable OBJECT-TYPE
80
+ SYNTAX SEQUENCE OF NetSnmpPassEntry
81
+ MAX-ACCESS not-accessible
82
+ STATUS current
83
+ DESCRIPTION "Example table"
84
+ ::= { netSnmpPassExamples 2 }
85
+
86
+ netSnmpPassEntry OBJECT-TYPE
87
+ SYNTAX NetSnmpPassEntry
88
+ MAX-ACCESS not-accessible
89
+ STATUS current
90
+ DESCRIPTION "Conceptual row in the example table."
91
+ INDEX { netSnmpPassIndex }
92
+ ::= {netSnmpPassTable 1 }
93
+
94
+ NetSnmpPassEntry ::= SEQUENCE {
95
+ netSnmpPassIndex Integer32,
96
+ netSnmpPassInteger Integer32,
97
+ netSnmpPassOID OBJECT IDENTIFIER
98
+ }
99
+
100
+ netSnmpPassIndex OBJECT-TYPE
101
+ SYNTAX Integer32
102
+ MAX-ACCESS not-accessible
103
+ STATUS current
104
+ DESCRIPTION "Arbitrary index into the netSnmpPassTable.
105
+ Note that there will always be one row, with index 1"
106
+ ::= { netSnmpPassEntry 1 }
107
+
108
+ netSnmpPassInteger OBJECT-TYPE
109
+ SYNTAX Integer32
110
+ MAX-ACCESS read-write
111
+ STATUS current
112
+ DESCRIPTION "Example Integer (table) object."
113
+ DEFVAL { 42 }
114
+ ::= { netSnmpPassEntry 2 }
115
+
116
+ netSnmpPassOID OBJECT-TYPE
117
+ SYNTAX OBJECT IDENTIFIER
118
+ MAX-ACCESS read-write
119
+ STATUS current
120
+ DESCRIPTION "Example OID (table) object."
121
+ DEFVAL { netSnmpPassOIDValue }
122
+ ::= { netSnmpPassEntry 3 }
123
+
124
+ END
@@ -0,0 +1,128 @@
1
+ NET-SNMP-TC DEFINITIONS ::= BEGIN
2
+
3
+ --
4
+ -- Textual conventions and enumerations for the Net-SNMP project
5
+ --
6
+
7
+ IMPORTS
8
+ netSnmpModuleIDs, netSnmpAgentOIDs, netSnmpDomains FROM NET-SNMP-MIB
9
+
10
+ MODULE-IDENTITY, Opaque FROM SNMPv2-SMI
11
+
12
+ TEXTUAL-CONVENTION FROM SNMPv2-TC;
13
+
14
+ netSnmpTCs MODULE-IDENTITY
15
+ LAST-UPDATED "200510140000Z"
16
+ ORGANIZATION "www.net-snmp.org"
17
+ CONTACT-INFO
18
+ "postal: Wes Hardaker
19
+ P.O. Box 382
20
+ Davis CA 95617
21
+
22
+ email: net-snmp-coders@lists.sourceforge.net"
23
+ DESCRIPTION
24
+ "Textual conventions and enumerations for the Net-SNMP project"
25
+ REVISION "200202120000Z"
26
+ DESCRIPTION
27
+ "First draft"
28
+ ::= { netSnmpModuleIDs 1}
29
+
30
+
31
+ -- =====================
32
+ --
33
+ -- Textual Conventions
34
+ --
35
+ -- =====================
36
+
37
+ --
38
+ -- Define the Float Textual Convention
39
+ -- This definition was written by David Perkins.
40
+ --
41
+
42
+ Float ::= TEXTUAL-CONVENTION
43
+ STATUS current
44
+ DESCRIPTION
45
+ "A single precision floating-point number. The semantics
46
+ and encoding are identical for type 'single' defined in
47
+ IEEE Standard for Binary Floating-Point,
48
+ ANSI/IEEE Std 754-1985.
49
+ The value is restricted to the BER serialization of
50
+ the following ASN.1 type:
51
+ FLOATTYPE ::= [120] IMPLICIT FloatType
52
+ (note: the value 120 is the sum of '30'h and '48'h)
53
+ The BER serialization of the length for values of
54
+ this type must use the definite length, short
55
+ encoding form.
56
+
57
+ For example, the BER serialization of value 123
58
+ of type FLOATTYPE is '9f780442f60000'h. (The tag
59
+ is '9f78'h; the length is '04'h; and the value is
60
+ '42f60000'h.) The BER serialization of value
61
+ '9f780442f60000'h of data type Opaque is
62
+ '44079f780442f60000'h. (The tag is '44'h; the length
63
+ is '07'h; and the value is '9f780442f60000'h.)"
64
+ SYNTAX Opaque (SIZE (7))
65
+
66
+
67
+ -- =====================
68
+ --
69
+ -- Enumerations
70
+ --
71
+ -- =====================
72
+
73
+ --
74
+ -- System Object ID values
75
+ --
76
+ -- XXX - do we want to distinguish between O/S versions ?
77
+ -- (as is currently done with HP-UX)
78
+ --
79
+
80
+ hpux9 OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 1 }
81
+ sunos4 OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 2 }
82
+ solaris OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 3 }
83
+ osf OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 4 }
84
+ ultrix OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 5 }
85
+ hpux10 OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 6 }
86
+ netbsd OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 7 }
87
+ freebsd OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 8 }
88
+ irix OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 9 }
89
+ linux OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 10 }
90
+ bsdi OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 11 }
91
+ openbsd OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 12 }
92
+ win32 OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 13 } -- unlucky
93
+ hpux11 OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 14 }
94
+ aix OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 15 }
95
+ macosx OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 16 }
96
+ dragonfly OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 17 }
97
+ unknown OBJECT IDENTIFIER ::= { netSnmpAgentOIDs 255 }
98
+
99
+
100
+
101
+ --
102
+ -- Transport Domains
103
+ --
104
+ -- Object identifiers for the non-standard transports that UCD/Net-SNMP
105
+ -- supports. Note that snmpTCPDomain is the subject of Internet Draft
106
+ -- draft-irtf-nmrg-snmp-tcp-06.txt, which defines the OID
107
+ -- .iso.org.dod.internet.experimental.nmrg.nmrgSnmpDomains.snmpTCPDomain
108
+ -- (.1.3.6.1.3.91.1.1) for the SNMP over TCP over IPv4 transport domain.
109
+ -- This draft (or its successor) is available from the Network Management
110
+ -- Research Group web page at http://www.ibr.cs.tu-bs.de/projects/nmrg/
111
+ --
112
+ -- The NMRG OID for snmpTCPDomain is currently used by the code, but in case
113
+ -- this is thought to be a Bad Idea, we define a private transport domain here
114
+ -- that we could use instead. The Unix domain, AAL5 PVC domain and
115
+ -- the IPv6 domains are also defined privately here (for now).
116
+
117
+ netSnmpTCPDomain OBJECT IDENTIFIER ::= { netSnmpDomains 1 } -- obsolete
118
+ netSnmpUnixDomain OBJECT IDENTIFIER ::= { netSnmpDomains 2 } -- obsolete
119
+ netSnmpAAL5PVCDomain OBJECT IDENTIFIER ::= { netSnmpDomains 3 }
120
+ netSnmpUDPIPv6Domain OBJECT IDENTIFIER ::= { netSnmpDomains 4 } -- obsolete
121
+ netSnmpTCPIPv6Domain OBJECT IDENTIFIER ::= { netSnmpDomains 5 } -- obsolete
122
+ netSnmpCallbackDomain OBJECT IDENTIFIER ::= { netSnmpDomains 6 }
123
+ netSnmpAliasDomain OBJECT IDENTIFIER ::= { netSnmpDomains 7 }
124
+ netSnmpDTLSUDPDomain OBJECT IDENTIFIER ::= { netSnmpDomains 8 }
125
+ netSnmpDTLSSCTPDomain OBJECT IDENTIFIER ::= { netSnmpDomains 9 }
126
+ netSnmpTLSTCPDomain OBJECT IDENTIFIER ::= { netSnmpDomains 10 }
127
+
128
+ END
@@ -0,0 +1,154 @@
1
+ NET-SNMP-VACM-MIB DEFINITIONS ::= BEGIN
2
+
3
+ --
4
+ -- Defines Net-SNMP extensions to the standard VACM view table.
5
+ --
6
+
7
+ IMPORTS
8
+ SnmpAdminString
9
+ FROM SNMP-FRAMEWORK-MIB
10
+
11
+ netSnmpObjects, netSnmpGroups
12
+ FROM NET-SNMP-MIB
13
+
14
+ vacmGroupName, vacmAccessContextPrefix, vacmAccessSecurityModel,
15
+ vacmAccessSecurityLevel
16
+ FROM SNMP-VIEW-BASED-ACM-MIB
17
+
18
+ OBJECT-TYPE, MODULE-IDENTITY
19
+ FROM SNMPv2-SMI
20
+
21
+ OBJECT-GROUP, NOTIFICATION-GROUP
22
+ FROM SNMPv2-CONF
23
+
24
+ TEXTUAL-CONVENTION, DisplayString, RowStatus, StorageType
25
+ FROM SNMPv2-TC;
26
+
27
+
28
+ netSnmpVacmMIB MODULE-IDENTITY
29
+ LAST-UPDATED "200608270000Z"
30
+ ORGANIZATION "www.net-snmp.org"
31
+ CONTACT-INFO
32
+ "postal: Wes Hardaker
33
+ P.O. Box 382
34
+ Davis CA 95617
35
+
36
+ email: net-snmp-coders@lists.sourceforge.net"
37
+ DESCRIPTION
38
+ "Defines Net-SNMP extensions to the standard VACM view table."
39
+ REVISION "200608270000Z"
40
+ DESCRIPTION
41
+ "First draft"
42
+ ::= { netSnmpObjects 9 }
43
+
44
+
45
+ nsVacmAccessTable OBJECT-TYPE
46
+ SYNTAX SEQUENCE OF NsVacmAccessEntry
47
+ MAX-ACCESS not-accessible
48
+ STATUS current
49
+ DESCRIPTION "Net-SNMP extensions to vacmAccessTable."
50
+ ::= { netSnmpVacmMIB 1 }
51
+
52
+ nsVacmAccessEntry OBJECT-TYPE
53
+ SYNTAX NsVacmAccessEntry
54
+ MAX-ACCESS not-accessible
55
+ STATUS current
56
+ DESCRIPTION "Net-SNMP extensions to vacmAccessTable."
57
+ INDEX { vacmGroupName,
58
+ vacmAccessContextPrefix,
59
+ vacmAccessSecurityModel,
60
+ vacmAccessSecurityLevel,
61
+ nsVacmAuthType
62
+ }
63
+ ::= { nsVacmAccessTable 1 }
64
+
65
+ NsVacmAccessEntry ::= SEQUENCE
66
+ {
67
+ nsVacmAuthType SnmpAdminString,
68
+ nsVacmContextMatch INTEGER,
69
+ nsVacmViewName SnmpAdminString,
70
+ nsVacmStorageType StorageType,
71
+ nsVacmStatus RowStatus
72
+ }
73
+
74
+ nsVacmAuthType OBJECT-TYPE
75
+ SYNTAX SnmpAdminString (SIZE(0..32))
76
+ MAX-ACCESS not-accessible
77
+ STATUS current
78
+ DESCRIPTION "The type of processing that the specified view
79
+ should be applied to. See 'snmpd.conf(5)' and
80
+ 'snmptrapd.conf(5)' for details."
81
+ ::= { nsVacmAccessEntry 1 }
82
+
83
+ nsVacmContextMatch OBJECT-TYPE
84
+ SYNTAX INTEGER
85
+ { exact (1), -- exact match of prefix and contextName
86
+ prefix (2) -- Only match to the prefix
87
+ }
88
+ MAX-ACCESS read-create
89
+ STATUS current
90
+ DESCRIPTION "If the value of this object is exact(1), then all
91
+ rows where the contextName exactly matches
92
+ vacmAccessContextPrefix are selected.
93
+
94
+ If the value of this object is prefix(2), then all
95
+ rows where the contextName whose starting octets
96
+ exactly match vacmAccessContextPrefix are selected.
97
+ This allows for a simple form of wildcarding.
98
+
99
+ The value of this object should be consistent across
100
+ all nsVacmAccessEntries corresponding to a single
101
+ row of the vacmAccessTable.
102
+ "
103
+ DEFVAL { exact }
104
+ ::= { nsVacmAccessEntry 2 }
105
+
106
+ nsVacmViewName OBJECT-TYPE
107
+ SYNTAX SnmpAdminString (SIZE(0..32))
108
+ MAX-ACCESS read-create
109
+ STATUS current
110
+ DESCRIPTION "The MIB view authorised for the appropriate style
111
+ of processing (as indicated by nsVacmToken).
112
+
113
+ The interpretation of this value is the same as for
114
+ the standard VACM ViewName objects."
115
+ DEFVAL { ''H } -- the empty string
116
+ ::= { nsVacmAccessEntry 3 }
117
+
118
+
119
+ nsVacmStorageType OBJECT-TYPE
120
+ SYNTAX StorageType
121
+ MAX-ACCESS read-create
122
+ STATUS current
123
+ DESCRIPTION "The storage type for this (group of) conceptual rows.
124
+
125
+ Conceptual rows having the value 'permanent' need not
126
+ allow write-access to any columnar objects in the row.
127
+
128
+ The value of this object should be consistent across
129
+ all nsVacmAccessEntries corresponding to a single
130
+ row of the vacmAccessTable.
131
+ "
132
+ DEFVAL { nonVolatile }
133
+ ::= { nsVacmAccessEntry 4 }
134
+
135
+ nsVacmStatus OBJECT-TYPE
136
+ SYNTAX RowStatus
137
+ MAX-ACCESS read-create
138
+ STATUS current
139
+ DESCRIPTION "The status of this (group of) conceptual rows.
140
+
141
+ The RowStatus TC [RFC2579] requires that this
142
+ DESCRIPTION clause states under which circumstances
143
+ other objects in this row can be modified:
144
+
145
+ The value of this object has no effect on whether
146
+ other objects in this conceptual row can be modified.
147
+
148
+ The value of this object should be consistent across
149
+ all nsVacmAccessEntries corresponding to a single
150
+ row of the vacmAccessTable.
151
+ "
152
+ ::= { nsVacmAccessEntry 5 }
153
+
154
+ END