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