smilint output for ./RFC1229-MIB
Message Severities |
Severity | Count |
error | 3 |
minor error | 1 |
warning | 1 |
Message Types |
Type | Count |
index-element-no-range (error) | 3 |
index-element-no-size (minor error) | 1 |
index-exceeds-too-large (warning) | 1 |
Messages:
RFC1229-MIB
1: -- extracted from rfc1229.txt
2: -- at Mon Nov 15 17:12:01 1999
3:
4: RFC1229-MIB DEFINITIONS ::= BEGIN
5:
6:
7: -- Extensions to MIB-II's Generic Interface Table
8:
9: IMPORTS
10: experimental, Counter FROM RFC1155-SMI
11: DisplayString, PhysAddress FROM RFC1213-MIB
12: OBJECT-TYPE FROM RFC-1212;
13:
14:
15:
16: ifExtensions OBJECT IDENTIFIER ::= { experimental 6 }
17:
18:
19: -- Generic Interface Extension Table
20: --
21: -- This group of objects is mandatory for all types of
22: -- subnetwork interface.
23:
24: ifExtnsTable OBJECT-TYPE
25: SYNTAX SEQUENCE OF IfExtnsEntry
26: ACCESS not-accessible
27: STATUS mandatory
28: DESCRIPTION
29: "A list of interfaces extension entries.
30: The number of entries is given by the value
31: of ifNumber, defined in [4,6]."
32: ::= { ifExtensions 1 }
33:
34: ifExtnsEntry OBJECT-TYPE
35: SYNTAX IfExtnsEntry
36: ACCESS not-accessible
37: STATUS mandatory
38: DESCRIPTION
39: "An extension to the interfaces entry,
40: defined in [4,6], containing additional
41: objects at the subnetwork layer and below
42: for a particular interface."
43: INDEX { ifExtnsIfIndex }
44: ::= { ifExtnsTable 1 }
45:
46: IfExtnsEntry ::=
47: SEQUENCE {
48: ifExtnsIfIndex
49: INTEGER,
50: ifExtnsChipSet
51: OBJECT IDENTIFIER,
52: ifExtnsRevWare
53: DisplayString,
54: ifExtnsMulticastsTransmittedOks
55: Counter,
56: ifExtnsBroadcastsTransmittedOks
57: Counter,
58: ifExtnsMulticastsReceivedOks
59: Counter,
60: ifExtnsBroadcastsReceivedOks
61: Counter,
62: ifExtnsPromiscuous
63: INTEGER
64: }
65:
66: ifExtnsIfIndex OBJECT-TYPE
66: error -
index element `ifExtnsIfIndex' of row `ifExtnsEntry' must have a range restriction
67: SYNTAX INTEGER
68: ACCESS read-only
69: STATUS mandatory
70: DESCRIPTION
71: "The value of this object identifies the
72: interface for which this entry contains
73: extended management information. The value
74: of this object for a particular interface
75: has the same value as the ifIndex object,
76: defined in [4,6], for the same interface."
77: ::= { ifExtnsEntry 1 }
78:
79: ifExtnsChipSet OBJECT-TYPE
80: SYNTAX OBJECT IDENTIFIER
81: ACCESS read-only
82: STATUS mandatory
83: DESCRIPTION
84: "This object identifies the hardware chip
85: set being used in the interface. The
86: assignment of OBJECT IDENTIFIERs to various
87: types of hardware chip sets is managed
88: by the IANA. If the hardware chip set is
89: unknown, the object identifier
90:
91: unknownChipSet OBJECT IDENTIFIER ::= { 0 0 }
92:
93: is returned. Note that unknownChipSet is a
94: syntactically valid object identifier, and
95: any conformant implementation of ASN.1 and
96: the BER must be able to generate and
97: recognize this value."
98: ::= { ifExtnsEntry 2 }
99:
100: ifExtnsRevWare OBJECT-TYPE
101: SYNTAX DisplayString (SIZE (0..255))
102: ACCESS read-only
103: STATUS mandatory
104: DESCRIPTION
105: "An arbitrary octet string that describes
106: the firmware version of this interface.
107: It is intended that this should be human
108: readable. It must only contain ASCII
109: printable characters. Typically this
110: will be the firmware version of the main
111: interface software."
112: ::= { ifExtnsEntry 3 }
113:
114: ifExtnsMulticastsTransmittedOks OBJECT-TYPE
115: SYNTAX Counter
116: ACCESS read-only
117: STATUS mandatory
118: DESCRIPTION
119: "The count of frames successfully
120: transmitted to a subnetwork or link-layer
121: multicast destination address other than a
122: broadcast address. For a MAC layer protocol,
123: this includes both Group and Functional
124: addresses."
125: ::= { ifExtnsEntry 4 }
126:
127: ifExtnsBroadcastsTransmittedOks OBJECT-TYPE
128: SYNTAX Counter
129: ACCESS read-only
130: STATUS mandatory
131: DESCRIPTION
132: "The count of frames successfully
133: transmitted to a subnetwork or link-layer
134: broadcast addresses. It does not include
135: frames sent to a multicast address."
136: ::= { ifExtnsEntry 5 }
137:
138: ifExtnsMulticastsReceivedOks OBJECT-TYPE
139: SYNTAX Counter
140: ACCESS read-only
141: STATUS mandatory
142: DESCRIPTION
143: "The count of frames successfully received
144: that are directed to an active subnetwork
145: or link-layer multicast address (for a MAC
146: layer protocol, this includes both Group and
147: Functional addresses). This does not include
148: frames directed to a broadcast address, nor
149: frames received with errors."
150: ::= { ifExtnsEntry 6 }
151:
152: ifExtnsBroadcastsReceivedOks OBJECT-TYPE
153: SYNTAX Counter
154: ACCESS read-only
155: STATUS mandatory
156: DESCRIPTION
157: "The count of frames successfully received
158: that are directed to a subnetwork or
159: link-layer broadcast address. This does not
160: include frames received with errors."
161: ::= { ifExtnsEntry 7 }
162:
163: ifExtnsPromiscuous OBJECT-TYPE
164: SYNTAX INTEGER {
165: true(1),
166: false(2)
167: }
168: ACCESS read-only -- Note: agent implementors are
169: -- encouraged to extend this
170: -- access to read-write if that
171: -- makes sense in their agent.
172: STATUS mandatory
173: DESCRIPTION
174: "This object has a value of false(2) if
175: this interface only accepts packets/frames
176: that are addressed to this station. This
177: object has a value of true(1) when the
178: station accepts all packets/frames
179: transmitted on the media. The value
180: true(1) is only legal on certain types of
181: media. If legal, setting this object to a
182: value of true(1) may require the interface
183: to be reset before becoming effective."
184: ::= { ifExtnsEntry 8 }
185:
186: --
187: -- Generic Interface Test Table
188: --
189: -- This group of objects is optional, but if the table is
190: -- implemented, all objects in the table must be implemented.
191: ifExtnsTestTable OBJECT-TYPE
192:
193: SYNTAX SEQUENCE OF IfExtnsTestEntry
194: ACCESS not-accessible
195: STATUS mandatory
196: DESCRIPTION
197: "This table contains one entry per interface."
198: ::= { ifExtensions 2 }
199:
200: ifExtnsTestEntry OBJECT-TYPE
201: SYNTAX IfExtnsTestEntry
202: ACCESS not-accessible
203: STATUS mandatory
204: DESCRIPTION
205: "An entry containing objects for invoking
206: tests on an interface."
207: INDEX { ifExtnsTestIfIndex }
208: ::= { ifExtnsTestTable 1 }
209:
210: IfExtnsTestEntry ::=
211: SEQUENCE {
212: ifExtnsTestIfIndex
213: INTEGER,
214: ifExtnsTestCommunity
215: OCTET STRING,
216: ifExtnsTestRequestId
217: INTEGER,
218: ifExtnsTestType
219: OBJECT IDENTIFIER,
220: ifExtnsTestResult
221: INTEGER,
222: ifExtnsTestCode
223: OBJECT IDENTIFIER
224: }
225:
226: ifExtnsTestIfIndex OBJECT-TYPE
226: error -
index element `ifExtnsTestIfIndex' of row `ifExtnsTestEntry' must have a range restriction
227: SYNTAX INTEGER
228: ACCESS read-only
229: STATUS mandatory
230: DESCRIPTION
231: "The value of this object identifies the
232: interface for which this entry contains
233: information on interface tests. The value
234: of this object for a particular interface
235: has the same value as the ifIndex object,
236: defined in [4,6], for the same interface."
237: ::= { ifExtnsTestEntry 1 }
238:
239: ifExtnsTestCommunity OBJECT-TYPE
240: SYNTAX OCTET STRING
241: ACCESS read-only
242: STATUS mandatory
243: DESCRIPTION
244: "This object contains the name of the SNMP
245: authentication community [5] which was used
246: to authenticate the SNMP Message which invoked
247: the current or most recent test on this
248: interface. If the authentication community
249: is unknown or undefined, this value contains
250: the zero-length string."
251: ::= { ifExtnsTestEntry 2 }
252:
253: ifExtnsTestRequestId OBJECT-TYPE
254: SYNTAX INTEGER
255: ACCESS read-only
256: STATUS mandatory
257: DESCRIPTION
258: "This object contains the value of the
259: request-id field in the SNMP PDU [5] which
260: invoked the current or most recent test on
261: this interface. If the request-id is
262: unknown or undefined, this value contains
263: the value zero."
264: ::= { ifExtnsTestEntry 3 }
265:
266: ifExtnsTestType OBJECT-TYPE
267: SYNTAX OBJECT IDENTIFIER
268: ACCESS read-write
269: STATUS mandatory
270: DESCRIPTION
271: "A control variable used to start and stop
272: operator-initiated interface tests.
273: Most OBJECT IDENTIFIER values assigned
274: to tests are defined elsewhere, in associ-
275: ation with specific types of interface.
276: However, this document assigns a value for
277: a full-duplex loopback test, and defines the
278: special meanings of the subject identifier:
279:
280: noTest OBJECT IDENTIFIER ::= { 0 0 }
281:
282: When the value noTest is written to this
283: object, no action is taken unless a test is
284: in progress, in which case the test is
285: aborted. Writing any other value to this
286: object is only valid when no test is
287: currently in progress, in which case the
288: indicated test is initiated.
289: Note that noTest is a syntactically valid
290: object identifier, and any conformant
291: implementation of ASN.1 and BER must be able
292: to generate and recognize this value.
293: When read, this object always returns
294: the most recent value that ifExtnsTestType
295: was set to. If it has not been set since
296: the last initialization of the network
297: management subsystem on the agent, a value
298: of noTest is returned."
299: ::= { ifExtnsTestEntry 4 }
300:
301: wellKnownTests OBJECT IDENTIFIER ::= { ifExtensions 4 }
302:
303: -- full-duplex loopback test
304: testFullDuplexLoopBack OBJECT IDENTIFIER ::=
305: { wellKnownTests 1 }
306:
307: ifExtnsTestResult OBJECT-TYPE
308: SYNTAX INTEGER {
309: none(1), -- no test yet requested
310: success(2),
311: inProgress(3),
312: notSupported(4),
313: unAbleToRun(5), -- due to state of system
314: aborted(6),
315: failed(7)
316: }
317: ACCESS read-only
318: STATUS mandatory
319: DESCRIPTION
320: "This object contains the result of the most
321: recently requested test, or the value
322: none(1) if no tests have been requested since
323: the last reset. Note that this facility
324: provides no provision for saving the results
325: of one test when starting another, as could
326: be required if used by multiple managers
327: concurrently."
328: ::= { ifExtnsTestEntry 5 }
329:
330: ifExtnsTestCode OBJECT-TYPE
331: SYNTAX OBJECT IDENTIFIER
332: ACCESS read-only
333: STATUS mandatory
334: DESCRIPTION
335: "This object contains a code which contains
336: more specific information on the test result,
337: for example an error-code after a failed
338: test. Error codes and other values this
339: object may take are specific to the type of
340: interface and/or test. However, one subject
341: identifier:
342:
343: testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
344:
345: for use if no additional result code is
346: available.
347: Note that testCodeUnknown is a
348: syntactically valid object identifier, and
349: any conformant implementation of ASN.1 and
350: the BER must be able to generate and
351: recognize this value."
352: ::= { ifExtnsTestEntry 6 }
353:
354:
355: -- Generic Receive Address Table
356: --
357: -- This group of objects is mandatory for all types of
358: -- interfaces which can receive packets/frames addressed to
359: -- more than one address.
360:
361: ifExtnsRcvAddrTable OBJECT-TYPE
362: SYNTAX SEQUENCE OF IfExtnsRcvAddrEntry
363: ACCESS not-accessible
364: STATUS mandatory
365: DESCRIPTION
366: "This table contains an entry for each
367: address (broadcast, multicast, or uni-cast)
368: for which the system will receive packets/
369: frames on a particular interface. When an
370: interface is operating in promiscuous mode,
371: entries are only required for those addresses
372: for which the system would receive frames
373: were it not operating in promiscuous mode."
374: ::= { ifExtensions 3 }
375:
376: ifExtnsRcvAddrEntry OBJECT-TYPE
376: warning -
warning: index of row `ifExtnsRcvAddrEntry' can exceed OID size limit by 65418 subidentifier(s)
377: SYNTAX IfExtnsRcvAddrEntry
378: ACCESS not-accessible
379: STATUS mandatory
380: DESCRIPTION
381: "A list of objects identifying an address
382: for which the system will accept packets/
383: frames on a particular interface."
384: INDEX { ifExtnsRcvAddrIfIndex, ifExtnsRcvAddress }
385: ::= { ifExtnsRcvAddrTable 1 }
386:
387: IfExtnsRcvAddrEntry ::=
388: SEQUENCE {
389: ifExtnsRcvAddrIfIndex
390: INTEGER,
391: ifExtnsRcvAddress
392: PhysAddress,
393: ifExtnsRcvAddrStatus
394: INTEGER
395: }
396:
397: ifExtnsRcvAddrIfIndex OBJECT-TYPE
397: error -
index element `ifExtnsRcvAddrIfIndex' of row `ifExtnsRcvAddrEntry' must have a range restriction
398: SYNTAX INTEGER
399: ACCESS read-only
400: STATUS mandatory
401: DESCRIPTION
402: "The value of ifIndex, defined in [4,6], of an
403: interface which recognizes this entry's
404: address."
405: ::= { ifExtnsRcvAddrEntry 1 }
406:
407: ifExtnsRcvAddress OBJECT-TYPE
407: minor error -
index element `ifExtnsRcvAddress' of row `ifExtnsRcvAddrEntry' must have a size restriction
408: SYNTAX PhysAddress
409: ACCESS read-only
410: STATUS mandatory
411: DESCRIPTION
412: "An address for which the system will accept
413: packets/frames on this entry's interface."
414: ::= { ifExtnsRcvAddrEntry 2 }
415:
416: ifExtnsRcvAddrStatus OBJECT-TYPE
417: SYNTAX INTEGER {
418: other(1),
419: invalid(2),
420: volatile(3),
421: nonVolatile(4)
422: }
423: ACCESS read-write
424: STATUS mandatory
425: DESCRIPTION
426: "This object has the value nonVolatile(4)
427: for those entries in the table which are
428: valid and will not be deleted by the next
429: restart of the managed system. Entries
430: having the value volatile(3) are valid
431: and exist, but have not been saved, so
432: that will not exist after the next
433: restart of the managed system. Entries
434: having the value other(1) are valid and
435: exist but are not classified as to whether
436: they will continue to exist after the next
437: restart. Entries having the value invalid(2)
438: are invalid and do not represent an address
439: for which an interface accepts frames.
440: Setting an object instance to one of
441: the values other(1), volatile(3), or
442: nonVolatile(4) causes the corresponding
443: entry to exist or continue to exist, and
444: to take on the respective status as regards
445: the next restart of the managed system.
446: Setting an object instance to the value
447: invalid(2) causes the corresponding entry
448: to become invalid or cease to exist.
449: It is an implementation-specific matter
450: as to whether the agent removes an
451: invalidated entry from the table.
452: Accordingly, management stations must be
453: prepared to receive tabular information
454: from agents that corresponds to entries not
455: currently in use. Proper interpretation of
456: such entries requires examination of the
457: relevant ifExtnsRcvAddrStatus object
458: instance."
459: DEFVAL { volatile }
460: ::= { ifExtnsRcvAddrEntry 3 }
461:
462: END