telemetry-snmp 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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,145 @@
1
+ SNMP-MPD-MIB DEFINITIONS ::= BEGIN
2
+
3
+ IMPORTS
4
+ MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
5
+ MODULE-IDENTITY, OBJECT-TYPE,
6
+ snmpModules, Counter32 FROM SNMPv2-SMI;
7
+
8
+ snmpMPDMIB MODULE-IDENTITY
9
+ LAST-UPDATED "200210140000Z"
10
+ ORGANIZATION "SNMPv3 Working Group"
11
+ CONTACT-INFO "WG-EMail: snmpv3@lists.tislabs.com
12
+ Subscribe: snmpv3-request@lists.tislabs.com
13
+
14
+ Co-Chair: Russ Mundy
15
+ Network Associates Laboratories
16
+ postal: 15204 Omega Drive, Suite 300
17
+ Rockville, MD 20850-4601
18
+ USA
19
+
20
+ EMail: mundy@tislabs.com
21
+ phone: +1 301-947-7107
22
+
23
+ Co-Chair &
24
+ Co-editor: David Harrington
25
+ Enterasys Networks
26
+ postal: 35 Industrial Way
27
+ P. O. Box 5005
28
+ Rochester NH 03866-5005
29
+ USA
30
+ EMail: dbh@enterasys.com
31
+ phone: +1 603-337-2614
32
+
33
+ Co-editor: Jeffrey Case
34
+ SNMP Research, Inc.
35
+ postal: 3001 Kimberlin Heights Road
36
+ Knoxville, TN 37920-9716
37
+ USA
38
+ EMail: case@snmp.com
39
+ phone: +1 423-573-1434
40
+
41
+ Co-editor: Randy Presuhn
42
+ BMC Software, Inc.
43
+ postal: 2141 North First Street
44
+ San Jose, CA 95131
45
+ USA
46
+ EMail: randy_presuhn@bmc.com
47
+ phone: +1 408-546-1006
48
+
49
+ Co-editor: Bert Wijnen
50
+ Lucent Technologies
51
+ postal: Schagen 33
52
+ 3461 GL Linschoten
53
+ Netherlands
54
+ EMail: bwijnen@lucent.com
55
+ phone: +31 348-680-485
56
+ "
57
+ DESCRIPTION "The MIB for Message Processing and Dispatching
58
+
59
+ Copyright (C) The Internet Society (2002). This
60
+ version of this MIB module is part of RFC 3412;
61
+ see the RFC itself for full legal notices.
62
+ "
63
+ REVISION "200210140000Z" -- 14 October 2002
64
+ DESCRIPTION "Updated addresses, published as RFC 3412."
65
+ REVISION "199905041636Z" -- 4 May 1999
66
+ DESCRIPTION "Updated addresses, published as RFC 2572."
67
+
68
+ REVISION "199709300000Z" -- 30 September 1997
69
+ DESCRIPTION "Original version, published as RFC 2272."
70
+ ::= { snmpModules 11 }
71
+
72
+ -- Administrative assignments ***************************************
73
+
74
+ snmpMPDAdmin OBJECT IDENTIFIER ::= { snmpMPDMIB 1 }
75
+ snmpMPDMIBObjects OBJECT IDENTIFIER ::= { snmpMPDMIB 2 }
76
+ snmpMPDMIBConformance OBJECT IDENTIFIER ::= { snmpMPDMIB 3 }
77
+
78
+ -- Statistics for SNMP Messages *************************************
79
+
80
+ snmpMPDStats OBJECT IDENTIFIER ::= { snmpMPDMIBObjects 1 }
81
+
82
+ snmpUnknownSecurityModels OBJECT-TYPE
83
+ SYNTAX Counter32
84
+ MAX-ACCESS read-only
85
+ STATUS current
86
+ DESCRIPTION "The total number of packets received by the SNMP
87
+ engine which were dropped because they referenced a
88
+ securityModel that was not known to or supported by
89
+ the SNMP engine.
90
+ "
91
+ ::= { snmpMPDStats 1 }
92
+
93
+ snmpInvalidMsgs OBJECT-TYPE
94
+ SYNTAX Counter32
95
+ MAX-ACCESS read-only
96
+ STATUS current
97
+ DESCRIPTION "The total number of packets received by the SNMP
98
+ engine which were dropped because there were invalid
99
+ or inconsistent components in the SNMP message.
100
+ "
101
+ ::= { snmpMPDStats 2 }
102
+
103
+ snmpUnknownPDUHandlers OBJECT-TYPE
104
+ SYNTAX Counter32
105
+ MAX-ACCESS read-only
106
+ STATUS current
107
+ DESCRIPTION "The total number of packets received by the SNMP
108
+ engine which were dropped because the PDU contained
109
+ in the packet could not be passed to an application
110
+ responsible for handling the pduType, e.g. no SNMP
111
+ application had registered for the proper
112
+ combination of the contextEngineID and the pduType.
113
+ "
114
+ ::= { snmpMPDStats 3 }
115
+
116
+ -- Conformance information ******************************************
117
+
118
+ snmpMPDMIBCompliances OBJECT IDENTIFIER ::= {snmpMPDMIBConformance 1}
119
+ snmpMPDMIBGroups OBJECT IDENTIFIER ::= {snmpMPDMIBConformance 2}
120
+
121
+ -- Compliance statements
122
+
123
+ snmpMPDCompliance MODULE-COMPLIANCE
124
+ STATUS current
125
+ DESCRIPTION "The compliance statement for SNMP entities which
126
+ implement the SNMP-MPD-MIB.
127
+ "
128
+ MODULE -- this module
129
+ MANDATORY-GROUPS { snmpMPDGroup }
130
+ ::= { snmpMPDMIBCompliances 1 }
131
+
132
+ snmpMPDGroup OBJECT-GROUP
133
+ OBJECTS {
134
+ snmpUnknownSecurityModels,
135
+ snmpInvalidMsgs,
136
+ snmpUnknownPDUHandlers
137
+ }
138
+ STATUS current
139
+ DESCRIPTION "A collection of objects providing for remote
140
+ monitoring of the SNMP Message Processing and
141
+ Dispatching process.
142
+ "
143
+ ::= { snmpMPDMIBGroups 1 }
144
+
145
+ END
@@ -0,0 +1,589 @@
1
+ SNMP-NOTIFICATION-MIB DEFINITIONS ::= BEGIN
2
+
3
+ IMPORTS
4
+ MODULE-IDENTITY,
5
+ OBJECT-TYPE,
6
+ snmpModules
7
+ FROM SNMPv2-SMI
8
+
9
+ RowStatus,
10
+ StorageType
11
+ FROM SNMPv2-TC
12
+
13
+ SnmpAdminString
14
+ FROM SNMP-FRAMEWORK-MIB
15
+
16
+ SnmpTagValue,
17
+ snmpTargetParamsName
18
+ FROM SNMP-TARGET-MIB
19
+
20
+ MODULE-COMPLIANCE,
21
+ OBJECT-GROUP
22
+ FROM SNMPv2-CONF;
23
+
24
+ snmpNotificationMIB MODULE-IDENTITY
25
+ LAST-UPDATED "200210140000Z"
26
+ ORGANIZATION "IETF SNMPv3 Working Group"
27
+ CONTACT-INFO
28
+ "WG-email: snmpv3@lists.tislabs.com
29
+ Subscribe: majordomo@lists.tislabs.com
30
+ In message body: subscribe snmpv3
31
+
32
+ Co-Chair: Russ Mundy
33
+ Network Associates Laboratories
34
+ Postal: 15204 Omega Drive, Suite 300
35
+ Rockville, MD 20850-4601
36
+ USA
37
+ EMail: mundy@tislabs.com
38
+ Phone: +1 301-947-7107
39
+
40
+ Co-Chair: David Harrington
41
+ Enterasys Networks
42
+ Postal: 35 Industrial Way
43
+ P. O. Box 5004
44
+ Rochester, New Hampshire 03866-5005
45
+ USA
46
+ EMail: dbh@enterasys.com
47
+ Phone: +1 603-337-2614
48
+
49
+ Co-editor: David B. Levi
50
+ Nortel Networks
51
+ Postal: 3505 Kesterwood Drive
52
+ Knoxville, Tennessee 37918
53
+ EMail: dlevi@nortelnetworks.com
54
+ Phone: +1 865 686 0432
55
+
56
+ Co-editor: Paul Meyer
57
+ Secure Computing Corporation
58
+ Postal: 2675 Long Lake Road
59
+ Roseville, Minnesota 55113
60
+ EMail: paul_meyer@securecomputing.com
61
+ Phone: +1 651 628 1592
62
+
63
+ Co-editor: Bob Stewart
64
+ Retired"
65
+ DESCRIPTION
66
+ "This MIB module defines MIB objects which provide
67
+ mechanisms to remotely configure the parameters
68
+ used by an SNMP entity for the generation of
69
+ notifications.
70
+
71
+ Copyright (C) The Internet Society (2002). This
72
+ version of this MIB module is part of RFC 3413;
73
+ see the RFC itself for full legal notices.
74
+ "
75
+ REVISION "200210140000Z" -- 14 October 2002
76
+ DESCRIPTION "Clarifications, published as
77
+ RFC 3413."
78
+ REVISION "199808040000Z" -- 4 August 1998
79
+ DESCRIPTION "Clarifications, published as
80
+ RFC 2573."
81
+ REVISION "199707140000Z" -- 14 July 1997
82
+ DESCRIPTION "The initial revision, published as RFC2273."
83
+ ::= { snmpModules 13 }
84
+
85
+ snmpNotifyObjects OBJECT IDENTIFIER ::=
86
+ { snmpNotificationMIB 1 }
87
+ snmpNotifyConformance OBJECT IDENTIFIER ::=
88
+ { snmpNotificationMIB 3 }
89
+
90
+ --
91
+ --
92
+ -- The snmpNotifyObjects group
93
+ --
94
+ --
95
+
96
+ snmpNotifyTable OBJECT-TYPE
97
+ SYNTAX SEQUENCE OF SnmpNotifyEntry
98
+ MAX-ACCESS not-accessible
99
+ STATUS current
100
+ DESCRIPTION
101
+ "This table is used to select management targets which should
102
+ receive notifications, as well as the type of notification
103
+ which should be sent to each selected management target."
104
+ ::= { snmpNotifyObjects 1 }
105
+
106
+ snmpNotifyEntry OBJECT-TYPE
107
+ SYNTAX SnmpNotifyEntry
108
+ MAX-ACCESS not-accessible
109
+ STATUS current
110
+ DESCRIPTION
111
+ "An entry in this table selects a set of management targets
112
+ which should receive notifications, as well as the type of
113
+
114
+ notification which should be sent to each selected
115
+ management target.
116
+
117
+ Entries in the snmpNotifyTable are created and
118
+ deleted using the snmpNotifyRowStatus object."
119
+ INDEX { IMPLIED snmpNotifyName }
120
+ ::= { snmpNotifyTable 1 }
121
+
122
+ SnmpNotifyEntry ::= SEQUENCE {
123
+ snmpNotifyName SnmpAdminString,
124
+ snmpNotifyTag SnmpTagValue,
125
+ snmpNotifyType INTEGER,
126
+ snmpNotifyStorageType StorageType,
127
+ snmpNotifyRowStatus RowStatus
128
+ }
129
+
130
+ snmpNotifyName OBJECT-TYPE
131
+ SYNTAX SnmpAdminString (SIZE(1..32))
132
+ MAX-ACCESS not-accessible
133
+ STATUS current
134
+ DESCRIPTION
135
+ "The locally arbitrary, but unique identifier associated
136
+ with this snmpNotifyEntry."
137
+ ::= { snmpNotifyEntry 1 }
138
+
139
+ snmpNotifyTag OBJECT-TYPE
140
+ SYNTAX SnmpTagValue
141
+ MAX-ACCESS read-create
142
+ STATUS current
143
+ DESCRIPTION
144
+ "This object contains a single tag value which is used
145
+ to select entries in the snmpTargetAddrTable. Any entry
146
+ in the snmpTargetAddrTable which contains a tag value
147
+ which is equal to the value of an instance of this
148
+ object is selected. If this object contains a value
149
+ of zero length, no entries are selected."
150
+ DEFVAL { "" }
151
+ ::= { snmpNotifyEntry 2 }
152
+
153
+ snmpNotifyType OBJECT-TYPE
154
+ SYNTAX INTEGER {
155
+ trap(1),
156
+ inform(2)
157
+ }
158
+ MAX-ACCESS read-create
159
+ STATUS current
160
+ DESCRIPTION
161
+ "This object determines the type of notification to
162
+
163
+ be generated for entries in the snmpTargetAddrTable
164
+ selected by the corresponding instance of
165
+ snmpNotifyTag. This value is only used when
166
+ generating notifications, and is ignored when
167
+ using the snmpTargetAddrTable for other purposes.
168
+
169
+ If the value of this object is trap(1), then any
170
+ messages generated for selected rows will contain
171
+ Unconfirmed-Class PDUs.
172
+
173
+ If the value of this object is inform(2), then any
174
+ messages generated for selected rows will contain
175
+ Confirmed-Class PDUs.
176
+
177
+ Note that if an SNMP entity only supports
178
+ generation of Unconfirmed-Class PDUs (and not
179
+ Confirmed-Class PDUs), then this object may be
180
+ read-only."
181
+ DEFVAL { trap }
182
+ ::= { snmpNotifyEntry 3 }
183
+
184
+ snmpNotifyStorageType OBJECT-TYPE
185
+ SYNTAX StorageType
186
+ MAX-ACCESS read-create
187
+ STATUS current
188
+ DESCRIPTION
189
+ "The storage type for this conceptual row.
190
+ Conceptual rows having the value 'permanent' need not
191
+ allow write-access to any columnar objects in the row."
192
+ DEFVAL { nonVolatile }
193
+ ::= { snmpNotifyEntry 4 }
194
+
195
+ snmpNotifyRowStatus OBJECT-TYPE
196
+ SYNTAX RowStatus
197
+ MAX-ACCESS read-create
198
+ STATUS current
199
+ DESCRIPTION
200
+ "The status of this conceptual row.
201
+
202
+ To create a row in this table, a manager must
203
+ set this object to either createAndGo(4) or
204
+ createAndWait(5)."
205
+ ::= { snmpNotifyEntry 5 }
206
+
207
+ snmpNotifyFilterProfileTable OBJECT-TYPE
208
+ SYNTAX SEQUENCE OF SnmpNotifyFilterProfileEntry
209
+ MAX-ACCESS not-accessible
210
+ STATUS current
211
+ DESCRIPTION
212
+ "This table is used to associate a notification filter
213
+ profile with a particular set of target parameters."
214
+ ::= { snmpNotifyObjects 2 }
215
+
216
+ snmpNotifyFilterProfileEntry OBJECT-TYPE
217
+ SYNTAX SnmpNotifyFilterProfileEntry
218
+ MAX-ACCESS not-accessible
219
+ STATUS current
220
+ DESCRIPTION
221
+ "An entry in this table indicates the name of the filter
222
+ profile to be used when generating notifications using
223
+ the corresponding entry in the snmpTargetParamsTable.
224
+
225
+ Entries in the snmpNotifyFilterProfileTable are created
226
+ and deleted using the snmpNotifyFilterProfileRowStatus
227
+ object."
228
+ INDEX { IMPLIED snmpTargetParamsName }
229
+ ::= { snmpNotifyFilterProfileTable 1 }
230
+
231
+ SnmpNotifyFilterProfileEntry ::= SEQUENCE {
232
+ snmpNotifyFilterProfileName SnmpAdminString,
233
+ snmpNotifyFilterProfileStorType StorageType,
234
+ snmpNotifyFilterProfileRowStatus RowStatus
235
+ }
236
+
237
+ snmpNotifyFilterProfileName OBJECT-TYPE
238
+ SYNTAX SnmpAdminString (SIZE(1..32))
239
+ MAX-ACCESS read-create
240
+ STATUS current
241
+ DESCRIPTION
242
+ "The name of the filter profile to be used when generating
243
+ notifications using the corresponding entry in the
244
+ snmpTargetAddrTable."
245
+ ::= { snmpNotifyFilterProfileEntry 1 }
246
+
247
+ snmpNotifyFilterProfileStorType OBJECT-TYPE
248
+ SYNTAX StorageType
249
+ MAX-ACCESS read-create
250
+ STATUS current
251
+ DESCRIPTION
252
+ "The storage type for this conceptual row.
253
+ Conceptual rows having the value 'permanent' need not
254
+ allow write-access to any columnar objects in the row."
255
+ DEFVAL { nonVolatile }
256
+ ::= { snmpNotifyFilterProfileEntry 2 }
257
+
258
+ snmpNotifyFilterProfileRowStatus OBJECT-TYPE
259
+ SYNTAX RowStatus
260
+ MAX-ACCESS read-create
261
+ STATUS current
262
+ DESCRIPTION
263
+ "The status of this conceptual row.
264
+
265
+ To create a row in this table, a manager must
266
+ set this object to either createAndGo(4) or
267
+ createAndWait(5).
268
+
269
+ Until instances of all corresponding columns are
270
+ appropriately configured, the value of the
271
+ corresponding instance of the
272
+ snmpNotifyFilterProfileRowStatus column is 'notReady'.
273
+
274
+ In particular, a newly created row cannot be made
275
+ active until the corresponding instance of
276
+ snmpNotifyFilterProfileName has been set."
277
+ ::= { snmpNotifyFilterProfileEntry 3 }
278
+
279
+ snmpNotifyFilterTable OBJECT-TYPE
280
+ SYNTAX SEQUENCE OF SnmpNotifyFilterEntry
281
+ MAX-ACCESS not-accessible
282
+ STATUS current
283
+ DESCRIPTION
284
+ "The table of filter profiles. Filter profiles are used
285
+ to determine whether particular management targets should
286
+ receive particular notifications.
287
+
288
+ When a notification is generated, it must be compared
289
+ with the filters associated with each management target
290
+ which is configured to receive notifications, in order to
291
+ determine whether it may be sent to each such management
292
+ target.
293
+
294
+ A more complete discussion of notification filtering
295
+ can be found in section 6. of [SNMP-APPL]."
296
+ ::= { snmpNotifyObjects 3 }
297
+
298
+ snmpNotifyFilterEntry OBJECT-TYPE
299
+ SYNTAX SnmpNotifyFilterEntry
300
+ MAX-ACCESS not-accessible
301
+ STATUS current
302
+ DESCRIPTION
303
+ "An element of a filter profile.
304
+
305
+ Entries in the snmpNotifyFilterTable are created and
306
+ deleted using the snmpNotifyFilterRowStatus object."
307
+ INDEX { snmpNotifyFilterProfileName,
308
+ IMPLIED snmpNotifyFilterSubtree }
309
+ ::= { snmpNotifyFilterTable 1 }
310
+
311
+ SnmpNotifyFilterEntry ::= SEQUENCE {
312
+ snmpNotifyFilterSubtree OBJECT IDENTIFIER,
313
+ snmpNotifyFilterMask OCTET STRING,
314
+ snmpNotifyFilterType INTEGER,
315
+ snmpNotifyFilterStorageType StorageType,
316
+ snmpNotifyFilterRowStatus RowStatus
317
+ }
318
+
319
+ snmpNotifyFilterSubtree OBJECT-TYPE
320
+ SYNTAX OBJECT IDENTIFIER
321
+ MAX-ACCESS not-accessible
322
+ STATUS current
323
+ DESCRIPTION
324
+ "The MIB subtree which, when combined with the corresponding
325
+ instance of snmpNotifyFilterMask, defines a family of
326
+ subtrees which are included in or excluded from the
327
+ filter profile."
328
+ ::= { snmpNotifyFilterEntry 1 }
329
+
330
+ snmpNotifyFilterMask OBJECT-TYPE
331
+ SYNTAX OCTET STRING (SIZE(0..16))
332
+ MAX-ACCESS read-create
333
+ STATUS current
334
+ DESCRIPTION
335
+ "The bit mask which, in combination with the corresponding
336
+ instance of snmpNotifyFilterSubtree, defines a family of
337
+ subtrees which are included in or excluded from the
338
+ filter profile.
339
+
340
+ Each bit of this bit mask corresponds to a
341
+ sub-identifier of snmpNotifyFilterSubtree, with the
342
+ most significant bit of the i-th octet of this octet
343
+ string value (extended if necessary, see below)
344
+ corresponding to the (8*i - 7)-th sub-identifier, and
345
+ the least significant bit of the i-th octet of this
346
+ octet string corresponding to the (8*i)-th
347
+ sub-identifier, where i is in the range 1 through 16.
348
+
349
+ Each bit of this bit mask specifies whether or not
350
+ the corresponding sub-identifiers must match when
351
+ determining if an OBJECT IDENTIFIER matches this
352
+ family of filter subtrees; a '1' indicates that an
353
+ exact match must occur; a '0' indicates 'wild card',
354
+ i.e., any sub-identifier value matches.
355
+
356
+ Thus, the OBJECT IDENTIFIER X of an object instance
357
+ is contained in a family of filter subtrees if, for
358
+ each sub-identifier of the value of
359
+ snmpNotifyFilterSubtree, either:
360
+
361
+ the i-th bit of snmpNotifyFilterMask is 0, or
362
+
363
+ the i-th sub-identifier of X is equal to the i-th
364
+ sub-identifier of the value of
365
+ snmpNotifyFilterSubtree.
366
+
367
+ If the value of this bit mask is M bits long and
368
+ there are more than M sub-identifiers in the
369
+ corresponding instance of snmpNotifyFilterSubtree,
370
+ then the bit mask is extended with 1's to be the
371
+ required length.
372
+
373
+ Note that when the value of this object is the
374
+ zero-length string, this extension rule results in
375
+ a mask of all-1's being used (i.e., no 'wild card'),
376
+ and the family of filter subtrees is the one
377
+ subtree uniquely identified by the corresponding
378
+ instance of snmpNotifyFilterSubtree."
379
+ DEFVAL { ''H }
380
+ ::= { snmpNotifyFilterEntry 2 }
381
+
382
+ snmpNotifyFilterType OBJECT-TYPE
383
+ SYNTAX INTEGER {
384
+ included(1),
385
+ excluded(2)
386
+ }
387
+ MAX-ACCESS read-create
388
+ STATUS current
389
+ DESCRIPTION
390
+ "This object indicates whether the family of filter subtrees
391
+ defined by this entry are included in or excluded from a
392
+ filter. A more detailed discussion of the use of this
393
+ object can be found in section 6. of [SNMP-APPL]."
394
+ DEFVAL { included }
395
+ ::= { snmpNotifyFilterEntry 3 }
396
+
397
+ snmpNotifyFilterStorageType OBJECT-TYPE
398
+ SYNTAX StorageType
399
+ MAX-ACCESS read-create
400
+ STATUS current
401
+ DESCRIPTION
402
+ "The storage type for this conceptual row.
403
+ Conceptual rows having the value 'permanent' need not
404
+
405
+ allow write-access to any columnar objects in the row."
406
+ DEFVAL { nonVolatile }
407
+ ::= { snmpNotifyFilterEntry 4 }
408
+
409
+ snmpNotifyFilterRowStatus OBJECT-TYPE
410
+ SYNTAX RowStatus
411
+ MAX-ACCESS read-create
412
+ STATUS current
413
+ DESCRIPTION
414
+ "The status of this conceptual row.
415
+
416
+ To create a row in this table, a manager must
417
+ set this object to either createAndGo(4) or
418
+ createAndWait(5)."
419
+ ::= { snmpNotifyFilterEntry 5 }
420
+
421
+ --
422
+ --
423
+ -- Conformance information
424
+ --
425
+ --
426
+
427
+ snmpNotifyCompliances OBJECT IDENTIFIER ::=
428
+ { snmpNotifyConformance 1 }
429
+ snmpNotifyGroups OBJECT IDENTIFIER ::=
430
+ { snmpNotifyConformance 2 }
431
+
432
+ --
433
+ --
434
+ -- Compliance statements
435
+ --
436
+ --
437
+
438
+ snmpNotifyBasicCompliance MODULE-COMPLIANCE
439
+ STATUS current
440
+ DESCRIPTION
441
+ "The compliance statement for minimal SNMP entities which
442
+ implement only SNMP Unconfirmed-Class notifications and
443
+ read-create operations on only the snmpTargetAddrTable."
444
+ MODULE SNMP-TARGET-MIB
445
+ MANDATORY-GROUPS { snmpTargetBasicGroup }
446
+
447
+ OBJECT snmpTargetParamsMPModel
448
+ MIN-ACCESS read-only
449
+ DESCRIPTION
450
+ "Create/delete/modify access is not required."
451
+
452
+ OBJECT snmpTargetParamsSecurityModel
453
+ MIN-ACCESS read-only
454
+ DESCRIPTION
455
+ "Create/delete/modify access is not required."
456
+
457
+ OBJECT snmpTargetParamsSecurityName
458
+ MIN-ACCESS read-only
459
+ DESCRIPTION
460
+ "Create/delete/modify access is not required."
461
+
462
+ OBJECT snmpTargetParamsSecurityLevel
463
+ MIN-ACCESS read-only
464
+ DESCRIPTION
465
+ "Create/delete/modify access is not required."
466
+
467
+ OBJECT snmpTargetParamsStorageType
468
+ SYNTAX INTEGER {
469
+ readOnly(5)
470
+ }
471
+ MIN-ACCESS read-only
472
+ DESCRIPTION
473
+ "Create/delete/modify access is not required.
474
+ Support of the values other(1), volatile(2),
475
+ nonVolatile(3), and permanent(4) is not required."
476
+
477
+ OBJECT snmpTargetParamsRowStatus
478
+ SYNTAX INTEGER {
479
+ active(1)
480
+ }
481
+ MIN-ACCESS read-only
482
+ DESCRIPTION
483
+ "Create/delete/modify access to the
484
+ snmpTargetParamsTable is not required.
485
+ Support of the values notInService(2), notReady(3),
486
+ createAndGo(4), createAndWait(5), and destroy(6) is
487
+ not required."
488
+
489
+ MODULE -- This Module
490
+ MANDATORY-GROUPS { snmpNotifyGroup }
491
+
492
+ OBJECT snmpNotifyTag
493
+ MIN-ACCESS read-only
494
+ DESCRIPTION
495
+ "Create/delete/modify access is not required."
496
+
497
+ OBJECT snmpNotifyType
498
+ SYNTAX INTEGER {
499
+ trap(1)
500
+ }
501
+ MIN-ACCESS read-only
502
+ DESCRIPTION
503
+ "Create/delete/modify access is not required.
504
+ Support of the value notify(2) is not required."
505
+
506
+ OBJECT snmpNotifyStorageType
507
+ SYNTAX INTEGER {
508
+ readOnly(5)
509
+ }
510
+ MIN-ACCESS read-only
511
+ DESCRIPTION
512
+ "Create/delete/modify access is not required.
513
+ Support of the values other(1), volatile(2),
514
+ nonVolatile(3), and permanent(4) is not required."
515
+
516
+ OBJECT snmpNotifyRowStatus
517
+ SYNTAX INTEGER {
518
+ active(1)
519
+ }
520
+ MIN-ACCESS read-only
521
+ DESCRIPTION
522
+ "Create/delete/modify access to the
523
+ snmpNotifyTable is not required.
524
+ Support of the values notInService(2), notReady(3),
525
+ createAndGo(4), createAndWait(5), and destroy(6) is
526
+ not required."
527
+ ::= { snmpNotifyCompliances 1 }
528
+
529
+ snmpNotifyBasicFiltersCompliance MODULE-COMPLIANCE
530
+ STATUS current
531
+ DESCRIPTION
532
+ "The compliance statement for SNMP entities which implement
533
+ SNMP Unconfirmed-Class notifications with filtering, and
534
+ read-create operations on all related tables."
535
+ MODULE SNMP-TARGET-MIB
536
+ MANDATORY-GROUPS { snmpTargetBasicGroup }
537
+ MODULE -- This Module
538
+ MANDATORY-GROUPS { snmpNotifyGroup,
539
+ snmpNotifyFilterGroup }
540
+ ::= { snmpNotifyCompliances 2 }
541
+
542
+ snmpNotifyFullCompliance MODULE-COMPLIANCE
543
+ STATUS current
544
+ DESCRIPTION
545
+ "The compliance statement for SNMP entities which either
546
+ implement only SNMP Confirmed-Class notifications, or both
547
+ SNMP Unconfirmed-Class and Confirmed-Class notifications,
548
+ plus filtering and read-create operations on all related
549
+ tables."
550
+ MODULE SNMP-TARGET-MIB
551
+ MANDATORY-GROUPS { snmpTargetBasicGroup,
552
+ snmpTargetResponseGroup }
553
+ MODULE -- This Module
554
+ MANDATORY-GROUPS { snmpNotifyGroup,
555
+ snmpNotifyFilterGroup }
556
+ ::= { snmpNotifyCompliances 3 }
557
+
558
+ snmpNotifyGroup OBJECT-GROUP
559
+ OBJECTS {
560
+ snmpNotifyTag,
561
+ snmpNotifyType,
562
+ snmpNotifyStorageType,
563
+ snmpNotifyRowStatus
564
+ }
565
+ STATUS current
566
+ DESCRIPTION
567
+ "A collection of objects for selecting which management
568
+ targets are used for generating notifications, and the
569
+ type of notification to be generated for each selected
570
+ management target."
571
+ ::= { snmpNotifyGroups 1 }
572
+
573
+ snmpNotifyFilterGroup OBJECT-GROUP
574
+ OBJECTS {
575
+ snmpNotifyFilterProfileName,
576
+ snmpNotifyFilterProfileStorType,
577
+ snmpNotifyFilterProfileRowStatus,
578
+ snmpNotifyFilterMask,
579
+ snmpNotifyFilterType,
580
+ snmpNotifyFilterStorageType,
581
+ snmpNotifyFilterRowStatus
582
+ }
583
+ STATUS current
584
+ DESCRIPTION
585
+ "A collection of objects providing remote configuration
586
+ of notification filters."
587
+ ::= { snmpNotifyGroups 2 }
588
+
589
+ END