smilint output for ./ACME-HOUSECTL-MIB
Message Severities |
Severity | Count |
severe | 1 |
error | 1 |
warning | 3 |
Message Types |
Type | Count |
bad-identifier-case (error) | 1 |
group-unref (warning) | 1 |
index-exceeds-too-large (warning) | 1 |
object-identifier-unknown (severe) | 1 |
type-without-format (warning) | 1 |
Messages:
ACME-HOUSECTL-MIB
1: -- extracted from draft-ietf-snmpconf-bcp-03.txt
2: -- at Tue Dec 5 10:05:26 2000
3:
4: ACME-HOUSECTL-MIB DEFINITIONS ::= BEGIN
5: IMPORTS
6: MODULE-IDENTITY, OBJECT-IDENTITY, Counter32, Gauge32,
7: OBJECT-TYPE, TimeTicks, Integer32, NOTIFICATION-TYPE
8: FROM SNMPv2-SMI
9: MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
10: FROM SNMPv2-CONF
11: TruthValue, TEXTUAL-CONVENTION, TimeStamp
12: FROM SNMPv2-TC
13: SnmpAdminString
14: FROM SNMP-FRAMEWORK-MIB;
15:
16: acmeHouseCtlMIB MODULE-IDENTITY
17: LAST-UPDATED "200007090000Z"
18: ORGANIZATION "Acme, Inc"
19: CONTACT-INFO
20: "Acme, Inc
21: 1 Main Street
22: Anytown, Anywhere"
23: DESCRIPTION
24: "This mib module defines a sample mib module
25: that contains status/inventory, configuration and
26: diagnostic
27: management objects for items in a single family home."
28: REVISION "200007090000Z"
29: DESCRIPTION
30: "Initial version of ACME-HOUSECTRL-MIB."
31: ::= { XXX 55 }
31: error -
`XXX' should start with a lower case letter
31: severe -
unknown object identifier label `XXX'
32:
33: --
34: -- Textual Conventions
35: --
36:
37: AcmeCfgVersion ::= TEXTUAL-CONVENTION
37: warning -
warning: type `AcmeCfgVersion' has no format specification
38: STATUS current
39: DESCRIPTION
40: "A value that starts at 0 and increases monotonically
41: until the Max value is reached at which point the value
42: returns to 0."
43: SYNTAX Gauge32
44:
45:
46: AcmeDeviceAdminStatus ::= TEXTUAL-CONVENTION
47: STATUS current
48: DESCRIPTION
49: "The operational state of a device. Setting a device to
50: testing invokes diagnostic routines which may or may not
51: bring a device out of service."
52: SYNTAX INTEGER {
53: up(1),
54: down(2),
55: testing(3)
56: }
57:
58: AcmeDeviceOperStatus ::= TEXTUAL-CONVENTION
59: STATUS current
60: DESCRIPTION
61: "The current general state of the device. A failed state
62: indicates the device is not responding to management
63: control"
64: SYNTAX INTEGER {
65: up(1),
66: down(2),
67: testing(3),
68: failed(4)
69: }
70:
71: --
72: -- Top level delegations
73: --
74:
75: acmeHouseInventory OBJECT-IDENTITY
76: STATUS current
77: DESCRIPTION
78: "Inventory of the controls in the home over which
79: operations can be made."
80: ::= { acmeHouseCtlMIB 1 }
81:
82: acmeHouseGlobals OBJECT-IDENTITY
83: STATUS current
84: DESCRIPTION
85: "Objects of global scope over a given home."
86: ::= { acmeHouseCtlMIB 2 }
87:
88: acmeHouseConfig OBJECT-IDENTITY
89: STATUS current
90: DESCRIPTION
91: "Configuration of devices managed by this MIB
92: or subsidiary MIB modules."
93: ::= { acmeHouseCtlMIB 3 }
94:
95: acmeHouseCtlExceptions OBJECT-IDENTITY
96: STATUS current
97: DESCRIPTION
98: "Exceptions of global scope to this mib defined here."
99: ::= { acmeHouseCtlMIB 9 }
100:
101: acmeHouseCtlConformance OBJECT-IDENTITY
102: STATUS current
103: DESCRIPTION
104: "Conformance details kept here for this MIB."
105: ::= { acmeHouseCtlMIB 10 }
106:
107: --
108: -- Inventory Group
109: --
110: acmeHouseInvenLastUpdated OBJECT-TYPE
111: SYNTAX TimeTicks
112: MAX-ACCESS read-only
113: STATUS current
114: DESCRIPTION
115: "Timestamp when inventory report was last updated. A value of
116: zero indicates never."
117: ::= { acmeHouseInventory 1 }
118:
119:
120: acmeHouseInvenNumber OBJECT-TYPE
121: SYNTAX Integer32
122: MAX-ACCESS read-only
123: STATUS current
124: DESCRIPTION
125: "Number of rows in acmeHouseInvenTable."
126: ::= { acmeHouseInventory 2 }
127:
128: acmeHouseInvenTable OBJECT-TYPE
129: SYNTAX SEQUENCE OF AcmeHouseInvenEntry
130: MAX-ACCESS not-accessible
131: STATUS current
132: DESCRIPTION
133: "This table presents a list of devices found
134: in a given home.
135: Rows are added and deleted by the agent as discovered."
136: ::= { acmeHouseInventory 3 }
137:
138: acmeHouseInvenEntry OBJECT-TYPE
138: warning -
warning: index of row `acmeHouseInvenEntry' can exceed OID size limit by 134 subidentifier(s)
139: SYNTAX AcmeHouseInvenEntry
140: MAX-ACCESS not-accessible
141: STATUS current
142: DESCRIPTION
143: "Each row represents a particular device managed
144: by this agent."
145: INDEX { acmeHouseInvenId }
146: ::= { acmeHouseInvenTable 1 }
147:
148: AcmeHouseInvenEntry ::= SEQUENCE {
149: acmeHouseInvenId SnmpAdminString,
150: acmeHouseInvenDevice OBJECT IDENTIFIER,
151: acmeHouseInvenKey Integer32,
152: acmeHouseInvenAdminStatus AcmeDeviceAdminStatus,
153: acmeHouseInvenOperStatus AcmeDeviceOperStatus,
154: acmeHouseInvenLastContact TimeStamp
155: }
156:
157:
158: acmeHouseInvenId OBJECT-TYPE
159: SYNTAX SnmpAdminString
160: MAX-ACCESS not-accessible
161: STATUS current
162: DESCRIPTION
163: "A persistent identifier that identifies
164: a device uniquely within a single domain."
165: ::= { acmeHouseInvenEntry 1 }
166:
167:
168: acmeHouseInvenDevice OBJECT-TYPE
169: SYNTAX OBJECT IDENTIFIER
170: MAX-ACCESS read-only
171: STATUS current
172: DESCRIPTION
173: "The object identifier that uniquely identifies
174: the type of device. A registration mib maintains
175: the mappings to text. A vaue of 0.0 represents
176: an unknown or unmanageable device."
177: ::= { acmeHouseInvenEntry 2 }
178:
179: acmeHouseInvenKey OBJECT-TYPE
180: SYNTAX Integer32
181: MAX-ACCESS read-only
182: STATUS current
183: DESCRIPTION
184: "A unique value within a given set of device
185: with the same acmeHouseInvenDevice object identifier.
186: Can be used for a short-hand indexing
187: to other tables and notifications."
188: ::= { acmeHouseInvenEntry 3 }
189:
190:
191: acmeHouseInvenAdminStatus OBJECT-TYPE
192: SYNTAX AcmeDeviceAdminStatus
193: MAX-ACCESS read-write
194: STATUS current
195: DESCRIPTION
196: "The desired administrative status of this device.
197: Setting the value to down(2) has the effect of
198: changing acmeHouseInvenOperStatus to down(2) as well."
199: ::= { acmeHouseInvenEntry 4 }
200:
201: acmeHouseInvenOperStatus OBJECT-TYPE
202: SYNTAX AcmeDeviceOperStatus
203: MAX-ACCESS read-only
204: STATUS current
205: DESCRIPTION
206: "The curent operational state of the device."
207: ::= { acmeHouseInvenEntry 5 }
208:
209: acmeHouseInvenLastContact OBJECT-TYPE
210: SYNTAX TimeStamp
211: MAX-ACCESS read-only
212: STATUS current
213: DESCRIPTION
214: "The value of sysUpTime when the device last responded
215: to any management request or last poll."
216: ::= { acmeHouseInvenEntry 6 }
217: --
218: -- Configuration Globals Group
219: --
220: acmeHouseGlobalSysActive OBJECT-TYPE
221: SYNTAX TruthValue
222: MAX-ACCESS read-write
223: STATUS current
224: DESCRIPTION
225: "State of house control system. A value of true(1) represents
226: the system is actively monitoring state and will
227: accept valid configuration requests. A value of false(2)
228: indicates this the master system is not maintaining
229: state of systems found in the inventory component."
230: ::= { acmeHouseGlobals 1 }
231:
232: acmeSysActiveLastChanged OBJECT-TYPE
233: SYNTAX TimeStamp
234: MAX-ACCESS read-only
235: STATUS current
236: DESCRIPTION
237: "sysUpTime when acmeHouseGlobalSysActive last changed state."
238: ::= { acmeHouseGlobals 2 }
239:
240:
241: acmeSysActiveConfigId OBJECT-TYPE
242: SYNTAX AcmeCfgVersion
243: MAX-ACCESS read-only
244: STATUS current
245: DESCRIPTION
246: "Current value of configuration information. This value remains
247: persistent across reboots and increases when configuration
248: changes are made to any object in this MIB."
249: ::= { acmeHouseGlobals 3 }
250:
251:
252: acmeSysDevicesActive OBJECT-TYPE
253: SYNTAX Gauge32
254: MAX-ACCESS read-only
255: STATUS current
256: DESCRIPTION
257: "Number of active devices in the system according to last poll."
258: ::= { acmeHouseGlobals 4 }
259:
260:
261: acmeSysDevicesLastFailed OBJECT-TYPE
262: SYNTAX TimeStamp
263: MAX-ACCESS read-only
264: STATUS current
265: DESCRIPTION
266: "sysUpTime when last device failed poll or admin request."
267: ::= { acmeHouseGlobals 5 }
268:
269: acmeSysDeviceErrors OBJECT-TYPE
270: SYNTAX Counter32
271: MAX-ACCESS read-only
272: STATUS current
273: DESCRIPTION
274: "Number of devices that this manager lost contact, timed out
275: with."
276: ::= { acmeHouseGlobals 6 }
277:
278: acmeSysDeviceLastErr OBJECT-TYPE
279: SYNTAX SnmpAdminString
280: MAX-ACCESS read-only
281: STATUS current
282: DESCRIPTION
283: "A description of the last error that occured in this mib due
284: to configuration errors or status error presentable to user
285: interface."
286: ::= { acmeHouseGlobals 7 }
287:
288: --
289: -- Notification Section
290: --
291:
292: acmeHouseCtlGlobalErrs OBJECT IDENTIFIER
293: ::= { acmeHouseCtlExceptions 0 }
294:
295: acmeHouseCtlDeviceLost NOTIFICATION-TYPE
296: OBJECTS { acmeHouseInvenDevice, acmeHouseInvenKey,
297: acmeHouseInvenAdminStatus,
298: acmeHouseInvenOperStatus}
299: STATUS current
300: DESCRIPTION
301: "This notification is generated whenever the invocation
302: of a scheduled action fails. If there is a failure of
303: many devices such that sending single notifications
304: would be resource and time prohibitive, send the
305: acmeHouseCtrlManyDevicesLost notification."
306: ::= { acmeHouseCtlGlobalErrs 1 }
307:
308:
309: acmeHouseCtlManyDevicesLost NOTIFICATION-TYPE
310: OBJECTS { acmeSysDevicesLastFailed, acmeSysDeviceErrors }
311: STATUS current
312: DESCRIPTION
313: "This notification is generated whenever the invocation
314: of a scheduled action fails. If there is a failure of
315: many devices such that sending single notifications
316: would be resource and time prohibitive, send the
317: acmeHouseCtrlManyDevicesLost notification."
318: ::= { acmeHouseCtlGlobalErrs 2 }
319:
320:
321: --
322: -- Compliance Section
323: --
324:
325: acmeHouseCtlGroups OBJECT IDENTIFIER
326: ::= { acmeHouseCtlConformance 1 }
327:
328: acmeHouseCtlCompliances OBJECT IDENTIFIER
329: ::= { acmeHouseCtlConformance 2 }
330:
331:
332: acmeHouseInventoryGroup OBJECT-GROUP
333: OBJECTS {
334: acmeHouseInvenLastUpdated,
335: acmeHouseInvenNumber,
336: acmeHouseInvenDevice,
337: acmeHouseInvenKey,
338: acmeHouseInvenAdminStatus,
339: acmeHouseInvenOperStatus,
340: acmeHouseInvenLastContact
341: }
342: STATUS current
343: DESCRIPTION
344: "A collection of objects providing
345: inventory and general status of all home objects controlled
346: by this MIB module."
347: ::= { acmeHouseCtlGroups 1 }
348:
349:
350:
351: acmeHouseGlobalsGroup OBJECT-GROUP
352: OBJECTS {
353: acmeHouseGlobalSysActive,
354: acmeSysActiveLastChanged,
355: acmeSysActiveConfigId,
356: acmeSysDevicesActive,
357: acmeSysDevicesLastFailed,
358: acmeSysDeviceErrors,
359: acmeSysDeviceLastErr
360: }
361: STATUS current
362: DESCRIPTION
363: "A collection of objects providing
364: overall feature configuration state status."
365: ::= { acmeHouseCtlGroups 2 }
366:
367:
368: acmeHouseCtlNotificationGroup NOTIFICATION-GROUP
368: warning -
warning: current group `acmeHouseCtlNotificationGroup' is not referenced in this module
369: NOTIFICATIONS {
370: acmeHouseCtlDeviceLost,
371: acmeHouseCtlManyDevicesLost
372: }
373: STATUS current
374: DESCRIPTION
375: "The notifications used by this MIB module to denote
376: exceptional conditions."
377: ::= { acmeHouseCtlGroups 3 }
378:
379: acmeHouseCtrlMibCompliance MODULE-COMPLIANCE
380: STATUS current
381: DESCRIPTION
382: "The set of groups that make up the mandatory
383: and optional groups
384: required for MIB module implementation."
385: MODULE
386: MANDATORY-GROUPS { acmeHouseInventoryGroup,
387: acmeHouseGlobalsGroup }
388: ::= { acmeHouseCtlCompliances 1 }
389: END
390:
391: --
392: --
393: --
394: -- Copyright (C) The Internet Society (2000). All Rights Reserved.
395: --
396: --
397: --
398: -- This document and translations of it may be copied and furnished to others,
399: -- and derivative works that comment on or otherwise explain it or assist in
400: -- its implementation may be prepared, copied, published and distributed, in
401: -- whole or in part, without restriction of any kind, provided that the above
402: -- copyright notice and this paragraph are included on all such copies and
403: -- derivative works. However, this document itself may not be modified in any
404: -- way, such as by removing the copyright notice or references to the Internet
405: -- Society or other Internet organizations, except as needed for the purpose
406: -- of developing Internet standards in which case the procedures for
407: -- copyrights defined in the Internet Standards process must be followed, or
408: -- as required to translate it into languages other than English.
409: --
410: --
411: --
412: -- The limited permissions granted above are perpetual and will not be revoked
413: -- by the Internet Society or its successors or assigns.
414: --
415: --
416: --
417: -- This document and the information contained herein is provided on an "AS
418: -- IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
419: -- DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
420: -- ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
421: -- RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
422: -- PARTICULAR PURPOSE.
423: