smilint output for ./ACME-HOUSECTL-MIB


Message Severities
SeverityCount
severe1
error1
warning3
Message Types
TypeCount
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: