smilint output for ./CABH-CAP-MIB


Message Severities
SeverityCount
severe4
error4
warning5
Message Types
TypeCount
char-illegal-string (error)2
hyphen-in-object (warning)1
integer-misuse (warning)2
internal-flushing (warning)2
internal-other (severe)2
object-identifier-not-prefix (error)1
object-identifier-unknown (severe)2
type-unknown (error)1

Messages:

CABH-CAP-MIB

   1: -- extracted from draft-jones-cable-gateway-addressing-mib-02.txt
   2: -- at Sun Mar  9 06:12:37 2003
   3: 
   4:    CABH-CAP-MIB DEFINITIONS ::= BEGIN 
   5:    IMPORTS 
   6:        MODULE-IDENTITY, 
   7:        OBJECT-TYPE, 
   8:        Unsigned32           FROM SNMPv2-SMI 
   9:        TEXTUAL-CONVENTION, 
  10:        TruthValue, 
  11:        RowStatus,  
  12:        PhysAddress          FROM SNMPv2-TC 
  13:        OBJECT-GROUP, 
  14:        MODULE-COMPLIANCE    FROM SNMPv2-CONF 
  15:        InetAddressType, 
  16:        InetAddress, 
  17:        InetPortNumber       FROM INET-ADDRESS-MIB; 
  18:     
  19:    cabhCapMib MODULE-IDENTITY 
  20:        LAST-UPDATED    "200303010000Z" -- March 1, 2003 
  21:        ORGANIZATION    "CableLabs Broadband Access Department" 
  22:        CONTACT-INFO 
  23:               "Kevin Luehrs 
  24:                Postal: Cable Television Laboratories, Inc. 
  25:                400 Centennial Parkway 
  26:                Louisville, Colorado 80027-1266 
  27:                U.S.A. 
  28:                Phone:  +1 303-661-9100 
  29:                Fax:    +1 303-661-9199 
  30:                E-mail: k.luehrs@cablelabs.com; mibs@cablelabs.com" 
  31:        DESCRIPTION 
  32:               "This MIB module supplies the basic management objects 
  33:                for the CableHome Addressing Portal (CAP) portion of 
  34:                the PS database."  
  35:     
  36:           REVISION "200303010000Z" -- March 1, 2003 
  37:           DESCRIPTION 
  38:              "Initial version, published as RFC xxxx." 
  39:              -- RFC editor to assign xxxx 
  40:     
  41:           ::= { mib-2 xx }   -- xx to be assigned by IANA 
  41: error - Object identifier element `xx' name only allowed as first element
  41: severe - unknown object identifier label `mib-2'
  42:       
  43:    -- Textual conventions 
  44:     
  45:    CabhCapPacketMode ::= TEXTUAL-CONVENTION 
  46:       STATUS   current 
  47:       DESCRIPTION 
  48:            "The data type established when 
  49:             a binding/mapping is established." 
  50:       SYNTAX   INTEGER { 
  51:                napt        (1),   -- NAT with port translation 
  52:                nat         (2),   -- Basic NAT 
  53:                passthrough (3)   -- Pass Through External Address 
  54:                } 
  55:     
  56:     
  57:    cabhCapObjects      OBJECT IDENTIFIER ::= { cabhCapMib 1 } 
  58:    cabhCapBase         OBJECT IDENTIFIER ::= { cabhCapObjects 1 } 
  59:    cabhCapMap          OBJECT IDENTIFIER ::= { cabhCapObjects 2 } 
  60:     
  61:     
  62:    --============================================================== 
  63:    -- 
  64:    -- General CAP Parameters 
  65:    -- 
  66:    --============================================================== 
  67:     
  68:    cabhCapTcpTimeWait OBJECT-TYPE 
  69:        SYNTAX Unsigned32 
  70:        UNITS "seconds" 
  71:        MAX-ACCESS read-write 
  72:        STATUS current 
  73:        DESCRIPTION 
  74:                "This object is the maximum inactivity time to wait 
  75:                 before assuming TCP session is terminated. It has no 
  76:                 relation to the TCP session TIME_WAIT state referred 
  77:                 to in [RFC793]" 
  78:        DEFVAL { 300 }  
  79:        ::= { cabhCapBase 1 } 
  80:     
  81:     
  82:     
  83:    cabhCapUdpTimeWait OBJECT-TYPE 
  84:       SYNTAX      Unsigned32 
  85:    UNITS    "seconds" 
  86:       MAX-ACCESS  read-write 
  87:       STATUS      current 
  88:        DESCRIPTION 
  89:                "The inactivity time to wait before destroying   
  90:                CAP mappings for UDP." 
  91:        DEFVAL  { 300 }  -- 5 minutes 
  92:        ::={ cabhCapBase 2 } 
  93:     
  94:    cabhCapIcmpTimeWait OBJECT-TYPE 
  95:          SYNTAX      Unsigned32 
  96:       UNITS "seconds" 
  97:        MAX-ACCESS read-write 
  98:        STATUS current 
  99:        DESCRIPTION 
 100:                "The inactivty time to wait before destroying  
 101:                CAP mappings for ICMP." 
 102:        DEFVAL { 300 }  --  5 minutes 
 103:        ::= { cabhCapBase 3 } 
 104:     
 105:     
 106:     
 107:     
 108:    cabhCapPrimaryMode OBJECT-TYPE 
 109:        SYNTAX  CabhCapPacketMode 
 110:        MAX-ACCESS  read-write 
 111:        STATUS      current 
 112:        DESCRIPTION 
 113:                "The Primary Packet Handling Mode to be used." 
 114:        DEFVAL { napt } 
 115:        ::= { cabhCapBase 4 } 
 116:         
 117:    cabhCapSetToFactory OBJECT-TYPE 
 118:        SYNTAX      TruthValue 
 119:        MAX-ACCESS  read-write 
 120:        STATUS      current 
 121:        DESCRIPTION 
 122:                "Setting this object to true(1) causes the all the 
 123:                 tables in the CAP to be cleared, and all CAP objects 
 124:                 with defaults to be reset back to their default values.   
 125:     
 126:                The objects to set to factory default values when this 
 127:                object is set to 'true' are listed below: 
 128:                cabhCapTcpTimeWait, 
 129:                cabhCapUdpTimeWait, 
 130:                cabhCapIcmpTimeWait, 
 131:                cabhCapPrimaryMode, 
 132:                cabhCapMappingWanAddrType,  
 133:                cabhCapMappingWanPort, 
 134:                cabhCapMappingLanAddrType, 
 135:                cabhCapMappingLanPort" 
 136:        ::= { cabhCapBase 5 } 
 137:     
 138:     
 139:    --============================================================== 
 140:    -- 
 141:    --  cabhCapMappingTable (CAP Mapping Table) 
 142:    -- 
 143:    --  The cabhCapMappingTable contains the mappings for all CAP 
 144:    --  mappings.    
 145:    -- 
 146:    --============================================================== 
 147:     
 148:    cabhCapMappingTable OBJECT-TYPE 
 149:        SYNTAX      SEQUENCE OF CabhCapMappingEntry 
 150:        MAX-ACCESS  not-accessible 
 151:        STATUS      current 
 152:        DESCRIPTION 
 153:                "This table contains IP address mappings between private 
 154:                 network addresses, or network addresses and port 
 155:                 numbers/ICMP sequence numbers, assigned to devices on 
 156:                 the subscriberÆs home LAN, and network addresses, or 
 156: error - illegal character `Æ' (0xc6) in quoted string
 157:                 network addresses and port numbers/ICMP sequence number, 
 158:                 assigned by the cable operator, presumed to be on a 
 159:                 separate subnetwork than the private IP addresses. The 
 160:                 CAP Mapping Table is used by the CableHome Address 
 161:                 Portal (CAP) function of the PS to make packet 
 162:                 forwarding decisions." 
 163:        ::= {  cabhCapMap 1 } 
 164:     
 165:    cabhCapMappingEntry OBJECT-TYPE 
 166:        SYNTAX      CabhCapMappingEntry 
 167:        MAX-ACCESS  not-accessible 
 168:        STATUS      current 
 169:        DESCRIPTION 
 170:            "List of the private IP (LAN) address - to - cable operator 
 171:             assigned IP (WAN) address mappings stored in the PS and 
 172:             used by the PS to make packet forwarding decisions." 
 173:        INDEX { cabhCapMappingIndex } 
 174:        ::= { cabhCapMappingTable 1 } 
 175:     
 176:        CabhCapMappingEntry ::= SEQUENCE { 
 177:        cabhCapMappingIndex           INTEGER, 
 178:        cabhCapMappingWanAddrType     InetAddressType, 
 179:        cabhCapMappingWanAddr         InetAddress, 
 180:        cabhCapMappingWanPort         InetPortNumber, 
 181:        cabhCapMappingLanAddrType     InetAddressType, 
 182:        cabhCapMappingLanAddr         InetAddress, 
 183:        cabhCapMappingLanPort         InetPortNumber, 
 184:        cabhCapMappingMethod          INTEGER, 
 185:        cabhCapMappingProtocol        INTEGER, 
 186:        cabhCapMappingRowStatus       RowStatus 
 187:        } 
 188:     
 189:     
 190:    cabhCapMappingIndex    OBJECT-TYPE 
 191:        SYNTAX              INTEGER   (1..65535) 
 191: warning - warning: use Integer32 instead of INTEGER in SMIv2
 192:        MAX-ACCESS  not-accessible 
 193:        STATUS      current 
 194:        DESCRIPTION 
 195:           "The Index into the CAP Mapping Table." 
 196:        ::= { cabhCapMappingEntry 1 } 
 197:     
 198:    cabhCapMappingWanAddrType OBJECT-TYPE 
 199:        SYNTAX      InetAddressType 
 200:        MAX-ACCESS  read-create 
 201:        STATUS      current 
 202:        DESCRIPTION 
 203:           "The IP address type assigned on the WAN side." 
 204:        DEFVAL { ipv4 } 
 205:        ::= { cabhCapMappingEntry 2 } 
 206:     
 207:    cabhCapMappingWanAddr OBJECT-TYPE 
 208:        SYNTAX      InetAddress 
 209:        MAX-ACCESS  read-create 
 210:        STATUS      current 
 211:        DESCRIPTION 
 212:           "The IP address assigned by the cable operatorÆs address 
 212: error - illegal character `Æ' (0xc6) in quoted string
 213:            (DHCP) server, and comprising the WAN-side IP address of 
 214:            the CAP Mapping tuple. This object is populated either 
 215:            dynamically by LAN-to-WAN outbound traffic or statically 
 216:            by the cable operator." 
 217:        ::= { cabhCapMappingEntry 3 } 
 218:     
 219:    cabhCapMappingWanPort OBJECT-TYPE 
 220:        SYNTAX      InetPortNumber 
 221:        MAX-ACCESS  read-create 
 222:        STATUS      current 
 223:        DESCRIPTION 
 224:           "The TCP/UDP port number or ICMP sequence number on the 
 225:            WAN side. A port number of 0 indicates a NAT mapping. A 
 226:            non-zero port number indicates a NAPT mapping." 
 227:            DEFVAL { 0 } 
 228:        ::= { cabhCapMappingEntry 4 } 
 229:     
 230:    cabhCapMappingLanAddrType OBJECT-TYPE 
 231:        SYNTAX      InetAddressType 
 232:        MAX-ACCESS  read-create 
 233:        STATUS      current 
 234:        DESCRIPTION 
 235:           "The IP address type assigned on the LAN side." 
 236:        DEFVAL { ipv4 } 
 237:        ::= { cabhCapMappingEntry 5 } 
 238:     
 239:    cabhCapMappingLanAddr OBJECT-TYPE 
 240:        SYNTAX      InetAddress 
 241:        MAX-ACCESS  read-create 
 242:        STATUS      current 
 243:        DESCRIPTION 
 244:           "The IP address assigned by the DHCP server function of 
 245:            the PS (CableHome DHCP Server, CDS), and comprising the 
 246:            LAN-side IP address of the CAP Mapping tuple.  This object 
 247:            is populated either dynamically as a result of LAN-to-WAN 
 248:            outbound traffic or statically by the cable operator." 
 249:        ::= { cabhCapMappingEntry 6 } 
 250:     
 251:    cabhCapMappingLanPort OBJECT-TYPE 
 252:        SYNTAX      InetPortNumber 
 253:        MAX-ACCESS  read-create 
 254:        STATUS      current 
 255:        DESCRIPTION 
 256:           "The TCP/UDP port number or ICMP sequence number on the 
 257:            LAN side. A port number/sequence number of 0 indicates  
 258:            a NAT mapping.  A non-zero port number/sequence number 
 259:            indicates an NAPT mapping." 
 260:        DEFVAL { 0 } 
 261:        ::= { cabhCapMappingEntry 7 } 
 262:     
 263:    cabhCapMappingMethod OBJECT-TYPE 
 264:        SYNTAX      INTEGER { 
 265:          static   (1),   
 266:          dynamic (2) 
 267:          } 
 268:        MAX-ACCESS  read-only 
 269:        STATUS      current 
 270:        DESCRIPTION 
 271:           "Indicates how this mapping was created.  Static means that 
 272:            it was provisioned, and dynamic means that it was handled 
 273:            by the PS itself." 
 274:        ::= { cabhCapMappingEntry 8 } 
 275:         
 276:    cabhCapMappingProtocol OBJECT-TYPE 
 277:        SYNTAX      INTEGER { 
 278:          other     (1), -- not specified 
 279:          icmp      (2), 
 280:          udp       (3), 
 281:          tcp       (4) 
 282:                } 
 283:        MAX-ACCESS  read-create 
 284:        STATUS      current 
 285:        DESCRIPTION 
 286:           "The protocol for this mapping." 
 287:        ::= { cabhCapMappingEntry 9 } 
 288:     
 289:    cabhCapMappingRowStatus OBJECT-TYPE 
 290:        SYNTAX      RowStatus 
 291:        MAX-ACCESS  read-create 
 292:        STATUS      current 
 293:        DESCRIPTION 
 294:            "The RowStatus interlock for the creation and deletion of 
 295:             a cabhCapMappingTable entry. Changing the value of the IP 
 296:             address or port number columns of the CAP Mapping Table 
 297:             may have an effect on active traffic, so the PS will prevent 
 298:             modification of this table's columns and return an 
 299:             inconsistentValue error when cabhCapMappingRowStatus object 
 300:             is active(1). The PS must not allow RowStatus to be set to 
 301:             notInService(2) by a manager. A newly created row cannot be 
 302:             set to active(1) until the corresponding instances of 
 303:             cabhCapMappingWanAddrType, cabhCapMappingWanAddr, 
 304:             cabhCapMappingLanAddrType, cabhCapMappingLanAddr, and 
 305:             cabhCapMappingProtocol have been set. If Primary Packet- 
 306:             handling Mode is NAPT (cabhCapPrimaryMode is napt(1)), a 
 307:             newly created row can not be set to active(1) until a 
 308:             non-zero value of cabhCapMappingWanPort and 
 309:             cabhCapMappingLanPort have been set. If Primary Packet- 
 310:             handling Mode is NAT (cabhCapPrimaryMode is nat(2)), a 
 311:             newly created row can not be set to active(1) if a non-zero 
 312:             value of cabhCapMappingWanPort and cabhCapMappingLanPort 
 313:             have been set." 
 314:        ::={ cabhCapMappingEntry 10 } 
 315:     
 316:     
 317:    --============================================================== 
 318:    -- 
 319:    --  cabhCapPassthroughTable (CAP Passthrough Table) 
 320:    -- 
 321:    --  The cabhCapPassthroughTable contains the MAC Addresses for all 
 322:    --  LAN-IP Devices which will be configured as passthrough. 
 323:    -- 
 324:    --============================================================== 
 325:     
 326:    cabhCapPassthroughTable OBJECT-TYPE 
 327:        SYNTAX      SEQUENCE OF CabhCapPassthroughEntry 
 327: error - unknown type `CabhCapPassthroughEntry'
 328:        MAX-ACCESS  not-accessible 
 329:        STATUS      current 
 330:        DESCRIPTION 
 331:            "This table contains MAC addresses for LAN-IP Devices which 
 332:             are configured as passthrough mode."  
 333:        ::= {  cabhCapMap 2 } 
 334:     
 335:    cabhCapPassthroughEntry OBJECT-TYPE 
 336:        SYNTAX  CabhCapPassthroughEntry 
 337:        MAX-ACCESS not-accessible 
 338:        STATUS  current 
 339:        DESCRIPTION 
 340:                "List of hardware addresses of LAN IP Devices 
 341:                 which are configured for passthrough mode." 
 342:        INDEX {cabhCapPassthroughIndex} 
 343:    ::= {cabhCapPassthroughTable 1} 
 344:     
 345:    CabhCapPassthroughEntry::=SEQUENCE { 
 346:       cabhCapPassthroughIndex    INTEGER, 
 347:       cabhCapPassthroughMacAddr  PhysAddress, 
 348:       cabhCapPassthroughRowStatusRowStatus 
 349:       } 
 349: severe - syntax error, unexpected '}'
 349: warning - warning: flushing recent incorrect declaration, see previous error(s)
 350:     
 351:    cabhCapPassthroughIndex    OBJECT-TYPE 
 352:        SYNTAX  INTEGER (1..65535) 
 352: warning - warning: use Integer32 instead of INTEGER in SMIv2
 353:        MAX-ACCESS not-accessible 
 354:        STATUS  current 
 355:        DESCRIPTION 
 356:                "The index into the CAP Passthrough Table." 
 357:        ::= { cabhCapPassthroughEntry 1 } 
 358:     
 359:    cabhCapPassthroughMacAddr     OBJECT-TYPE 
 360:        SYNTAX  PhysAddress (SIZE (0..16)) 
 361:        MAX-ACCESS read-create 
 362:        STATUS  current 
 363:        DESCRIPTION 
 364:                "Hardware address of the LAN-IP Device to be configured 
 365:                 as passthrough  mode." 
 366:        ::={cabhCapPassthroughEntry 2} 
 367:     
 368:    cabhCapPassthroughRowStatusOBJECT-TYPE 
 369:        SYNTAX  RowStatus 
 369: warning - warning: object identifier name `cabhCapPassthroughRowStatusOBJECT-TYPE' should not include hyphens in SMIv2 MIB
 369: severe - syntax error, unexpected SYNTAX, expecting OBJECT
 370:        MAX-ACCESS read-create 
 371:        STATUS     current 
 372:        DESCRIPTION  
 373:                "The RowStatus interlock for the creation and deletion 
 374:                 of a cabhCapPassthroughTable entry. Any writable object 
 375:                 in each row can be modified at any time while the row 
 376:                 is active(1)." 
 377:        ::= { cabhCapPassthroughEntry 3 } 
 377: warning - warning: flushing recent incorrect declaration, see previous error(s)
 378:     
 379:    -- 
 380:    -- notification group is for future extension. 
 381:    --  
 382:     
 383:    cabhCapNotification   OBJECT IDENTIFIER ::= { cabhCapMib 2 } 
 384:    cabhCapNotifications  OBJECT IDENTIFIER ::= { cabhCapNotification 0 } 
 385:    cabhCapConformance    OBJECT IDENTIFIER ::= { cabhCapMib 3 } 
 386:    cabhCapCompliances    OBJECT IDENTIFIER ::= { cabhCapConformance 1 } 
 387:    cabhCapGroups         OBJECT IDENTIFIER ::= { cabhCapConformance 2 } 
 388:     
 389:    -- 
 390:    --    Notification Group 
 391:    -- 
 392:     
 393:     
 394:    -- compliance statements 
 395:     
 396:    cabhCapBasicCompliance MODULE-COMPLIANCE 
 397:        STATUS     current 
 398:        DESCRIPTION 
 399:                "The compliance statement for devices that implement  
 400:                 MTA feature." 
 401:        MODULE   --cabhCapMib 
 402:     
 403:     
 404:     
 405:     
 406:     
 407:    -- unconditionally mandatory groups 
 408:     
 409:    MANDATORY-GROUPS { 
 410:        cabhCapGroup 
 411:        } 
 412:     
 413:    ::= { cabhCapCompliances 1 } 
 414:     
 415:     
 416:    cabhCapGroup OBJECT-GROUP 
 417:        OBJECTS { 
 418:            cabhCapTcpTimeWait, 
 419:            cabhCapUdpTimeWait, 
 420:            cabhCapIcmpTimeWait, 
 421:            cabhCapPrimaryMode, 
 422:            cabhCapSetToFactory, 
 423:            cabhCapMappingWanAddrType, 
 424:            cabhCapMappingWanAddr, 
 425:            cabhCapMappingWanPort, 
 426:            cabhCapMappingLanAddrType, 
 427:            cabhCapMappingLanAddr, 
 428:            cabhCapMappingLanPort, 
 429:            cabhCapMappingMethod, 
 430:            cabhCapMappingProtocol, 
 431:            cabhCapMappingRowStatus, 
 432:            cabhCapPassthroughMacAddr, 
 433:            cabhCapPassthroughRowStatus 
 434:          } 
 434: severe - unknown object identifier label `cabhCapPassthroughRowStatus'
 435:        STATUS    current 
 436:        DESCRIPTION 
 437:            "Group of objects for CableHome CAP MIB." 
 438:        ::= { cabhCapGroups 1 }  
 439:     
 440:     
 441:     
 442:    END 
 443: 
 444: --  
 445: --    Copyright (C) The Internet Society (2003). All Rights Reserved. 
 446: --     
 447: --    This document and translations of it may be copied and furnished to 
 448: --    others, and derivative works that comment on or otherwise explain it 
 449: --    or assist in its implementation may be prepared, copied, published 
 450: --    and distributed, in whole or in part, without restriction of any 
 451: --    kind, provided that the above copyright notice and this paragraph are 
 452: --    included on all such copies and derivative works.  However, this 
 453: --    document itself may not be modified in any way, such as by removing 
 454: --    the copyright notice or references to the Internet Society or other 
 455: --    Internet organizations, except as needed for the purpose of 
 456: --    developing Internet standards in which case the procedures for 
 457: --    copyrights defined in the Internet Standards process must be 
 458: --    followed, or as required to translate it into languages other than 
 459: --    English. 
 460: --     
 461: --    The limited permissions granted above are perpetual and will not be 
 462: --    revoked by the Internet Society or its successors or assigns. 
 463: --     
 464: --    This document and the information contained herein is provided on an 
 465: --    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 
 466: --    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 
 467: --    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 
 468: --    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 
 469: --    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 
 470: