smilint output for ./midcom-MIB

Unknown messages from smilint:


smilint: cannot locate module `./midcom-MIB'
(exit status 256)


Message Severities
SeverityCount
severe1
Message Types
TypeCount
internal-other (severe)1

Messages:

midcom-MIB

   1: -- extracted from draft-srisuresh-micom-mib-00.txt
   2: -- at Thu Oct 23 06:15:14 2003
   3: 
   4: midcom-MIB DEFINITIONS ::= BEGIN
   4: severe - syntax error, unexpected LOWERCASE_IDENTIFIER, expecting $end
   5: 
   6: IMPORTS
   7:      MODULE-IDENTITY,
   8:      OBJECT-TYPE,
   9:      NOTIFICATION-TYPE,
  10:      Integer32,
  11:      Unsigned32,
  12:      Gauge32,
  13:      Counter64,
  14:      TimeTicks,
  15:      mib-2
  16:              FROM SNMPv2-SMI             -- RFC 2578
  17: 
  18:      TEXTUAL-CONVENTION,
  19:      StorageType, RowStatus,
  20:      TimeInterval
  21:              FROM SNMPv2-TC              -- RFC 2579 
  22: 
  23:      MODULE-COMPLIANCE,
  24:      NOTIFICATION-GROUP,
  25:      OBJECT-GROUP
  26:              FROM SNMPv2-CONF            -- RFC 2580
  27: 
  28:      ifIndex,
  29:      InterfaceIndex
  30:              FROM IF-MIB                 -- RFC 2863
  31: 
  32:      SnmpAdminString
  33:              FROM SNMP-FRAMEWORK-MIB     -- RFC 3411
  34: 
  35:      InetAddressType,
  36:      InetAddress,
  37:      InetPortNumber
  38:              FROM INET-ADDRESS-MIB;      -- RFC 3291
  39: 
  40:      NatTranslationEntity,
  41:      NatBindIdOrZero,
  42:      NatSessionId,
  43:              FROM NAT-MIB;
  44: 
  45: midcomMIB MODULE-IDENTITY
  46:      LAST-UPDATED "200310200000Z"
  47:      ORGANIZATION "IETF Midcom Working Group"
  48:      CONTACT-INFO
  49:           "WG charter:
  50:              http://www.ietf.org/html.charters/midcom-charter.html
  51: 
  52:            Mailing Lists:
  53:              General Discussion: midcom@ietf.org
  54:              To Subscribe: midcom-request@ietf.org
  55:              In Body: subscribe your_email_address
  56: 
  57:            Author:
  58:              Pyda Srisuresh
  59:              1179-A North McDowell Blvd.
  60:              Petaluma, CA 94954
  61:              Tel: (707) 283-5063
  62:              Email: srisuresh@yahoo.com
  63:           "
  64:      DESCRIPTION
  65:              "This MIB module defines the managed objects
  66:               for midcom.
  67:              "
  68: 
  69:      REVISION     "200310200000Z"  -- 20th Sept. 2003 
  70:  
  71:      DESCRIPTION
  72:              "Initial version of this MIB module."
  73:      ::= { mib-2 XXX } -- RFC Ed.: replace XXX with IANA-assigned 
  74:                        -- number & remove this note
  75: 
  76: 
  77: midcomMIBObjects OBJECT IDENTIFIER ::= { midcomMIB 1 }
  78: 
  79: --
  80: -- Four Groups
  81: --
  82: -- o midcomConfig       - Configuration of a middlebox for 
  83: --                        midcom access.
  84: -- o midcomAgentInfo    - Active agent info, including the info
  85: --                        necessary for asynchronous notification.
  86: -- o midcomTables       - Results of agent initiated transactions
  87: --                        are saved into relevant tables for later
  88: --                        reference and parameter modification by
  89: --                        the agents. 
  90: -- o midcomTransactions - Midcom agent initiated transactions.
  91: --
  92: 
  93: midcomConfig        OBJECT IDENTIFIER ::= 
  94:                                     { midcomMIBObjects 1 }
  95: midcomAgentInfo     OBJECT IDENTIFIER ::= 
  96:                                     { midcomMIBObjects 2 }
  97: midcomTables        OBJECT IDENTIFIER ::= 
  98:                                     { midcomMIBObjects 3 }
  99: midcomTransactions  OBJECT IDENTIFIER ::= 
 100:                                     { midcomMIBObjects 4 }
 101: 
 102: --
 103: -- Textual conventions used 
 104: --
 105: MidcomMBFunctionEnum ::= TEXTUAL-CONVENTION
 106:        STATUS       current
 107:        DESCRIPTION
 108:                "An enumeration of Middlebox functions that are
 109:                 supported by the midcom protocol. Inclusion of
 110:                 values is not intended to imply that those 
 111:                 functions need to be supported. Any change
 112:                 in this TEXTUAL-CONVENTION should also be 
 113:                 reflected in the definition of 
 114:                 midcomConfMBFunctionType object which is
 115:                 a BITS representation of this 
 116:                 TEXTUAL-CONVENTION."
 117:        SYNTAX   INTEGER {
 118:                      none (1),  -- not specified
 119:                      nat  (2),
 120:                      firewall (3)
 121:                   }
 122: 
 123: MidcomMBFunctionBITS ::= TEXTUAL-CONVENTION
 124:        STATUS       current
 125:        DESCRIPTION
 126:                "A BITS representation of Middlebox functions 
 127:                 for which MIDCOM is enabled on a middlebox. 
 128:                 Any change in this TEXTUAL-CONVENTION should
 129:                 also be reflected in the definition of 
 130:                 midcomConfMBFunctionEnum object which is
 131:                 an enumeration of the middlebox functions
 132:                 summported"
 133:        SYNTAX  BITS {
 134:                 nat (0),      
 135:                 firewall (1)
 136:             }
 137: 
 138: MidcomMBResource ::= TEXTUAL-CONVENTION
 139:        STATUS       current
 140:        DESCRIPTION
 141:                "An enumeration of Middlebox function specific 
 142:                 resource types that are supported by the midcom 
 143:                 protocol. Inclusion of values is not intended
 144:                 to imply that those functions need to be 
 145:                 supported. "
 146:        SYNTAX   INTEGER {
 147:                      none (1),  -- not specified
 148:                      natBind(2),
 149:                      natSession(3),
 150:                      firewallFilter(4)
 151:                   }
 152: 
 153: MidcomAgentIndex ::= TEXTUAL-CONVENTION
 154:        STATUS current
 155:        DESCRIPTION
 156:                "A unique id that is assigned to each midcom
 157:                 session by the middlebox."
 158:        SYNTAX   Unsigned32 (1..4294967295)
 159: 
 160: 
 161: MidcomBindMode ::= TEXTUAL-CONVENTION
 162:        STATUS       current
 163:        DESCRIPTION
 164:                "An indication of whether a bind is address bind
 165:                 or port bind.
 166:                "
 167:        SYNTAX   INTEGER {
 168:                      addressBind (1),
 169:                      portBind    (2)
 170:                   }
 171: --
 172: -- midcomConfig 
 173: --   The Configuration Group
 174: --   The per-interface Midcom Configuration Table
 175: --
 176: 
 177: midcomConfInterfaceTable OBJECT-TYPE
 178:     SYNTAX      SEQUENCE OF MidcomConfInterfaceEntry    
 179:     MAX-ACCESS  not-accessible
 180:     STATUS      current
 181:     DESCRIPTION
 182:             "This table specifies the midcom configuration 
 183:              attributes per interface on a device supporting 
 184:              midcom access." 
 185:     ::= { midcomConfig 1 }
 186:     
 187: 
 188: midcomConfInterfaceEntry OBJECT-TYPE
 189:     SYNTAX      MidcomConfInterfaceEntry
 190:     MAX-ACCESS  not-accessible
 191:     STATUS      current
 192:     DESCRIPTION
 193:             "Each entry in the midcomConfInterfaceTable 
 194:              holds a set of Midcom configuration parameters
 195:              pertaining to an interface" 
 196:     INDEX   { ifIndex }
 197:     ::= { midcomConfInterfaceTable 1 }
 198: 
 199: MidcomConfInterfaceEntry ::= SEQUENCE {
 200:     midcomConfMBFunctionType       MidcomMBFunctionBITS,
 201:     midcomConfStorageType          StorageType,
 202:     midcomConfRowStatus            RowStatus
 203: }
 204: midcomConfMBFunctionType OBJECT-TYPE
 205:     SYNTAX      MidcomMBFunctionBITS 
 206:     MAX-ACCESS  read-create
 207:     STATUS      current             
 208:     DESCRIPTION
 209:             "Middlebox functions for which Midcom processing is
 210:              enabled."
 211:     ::= { midcomConfInterfaceEntry 1 }
 212: 
 213: midcomConfStorageType OBJECT-TYPE
 214:     SYNTAX      StorageType
 215:     MAX-ACCESS  read-create  
 216:     STATUS      current
 217:     DESCRIPTION
 218:             "The storage type for this conceptual row."  
 219:     REFERENCE
 220:             "Textual Conventions for SMIv2, Section 2."
 221:     DEFVAL { nonVolatile }
 222:     ::= { midcomConfInterfaceEntry 2 }
 223:     
 224: midcomConfRowStatus OBJECT-TYPE
 225:     SYNTAX      RowStatus
 226:     MAX-ACCESS  read-create
 227:     STATUS      current
 228:     DESCRIPTION
 229:             "The status of this conceptual row.
 230:              None of the objects in this row may be modified
 231:              while the value of this object is active(1)."
 232:     REFERENCE
 233:             "Textual Conventions for SMIv2, Section 2."
 234:     ::= { midcomConfInterfaceEntry 3 }
 235: 
 236: --
 237: --
 238: -- midcomAgentInfo
 239: --   Agent specific tables managed by the midcom MIB.
 240: --
 241: --
 242: 
 243: midcomAgentIndexNext OBJECT-TYPE
 244:        SYNTAX      MidcomAgentIndex 
 245:        MAX-ACCESS  read-only
 246:        STATUS      current
 247:        DESCRIPTION
 248:            "When retrieved, this object returns an unused index into
 249:             Agent table for the USM user that issued the read-request.
 250:             The returned value can be used for creating a new entry
 251:             in the midcomAgentTable. The same return value also serves
 252:             to create new entries in midcomTransGroup, midcomTransBind, 
 253:             midcomTransSession & midcomTransFilter tables. In all 
 254:             these tables, the first index would be set to the
 255:             AgentIndex returned here and is set to read-only.
 256: 
 257:             A value retuned when reading this object is not returned
 258:             again on subsequent read-requests as long as possible.
 259:             This ensures that the same USM user can engage in 
 260:             multiple independent midcom sessions with the middlebox. 
 261:             Each midcom agent might be responsible for a different
 262:             application."
 263:   ::=    { midcomAgentInfo 1 }
 264: 
 265: --
 266: -- midcomAgentTable 
 267: --      Agent Registration with Middlebox with
 268: --      all the requisite information for notification.
 269: --
 270: 
 271: midcomAgentTable OBJECT-TYPE
 272:      SYNTAX       SEQUENCE OF MidcomAgentEntry
 273:      MAX-ACCESS   read-only
 274:      STATUS       current
 275:      DESCRIPTION  "Lists the active Midcom agents."
 276:   ::=    { midcomAgentInfo 2 }
 277: 
 278: midcomAgentEntry OBJECT-TYPE
 279:     SYNTAX      MidcomAgentEntry
 280:     MAX-ACCESS  not-accessible
 281:     STATUS      current
 282:     DESCRIPTION
 283:             "Each entry in the midcomAgentTable pertains to
 284:              a midcom agent. Parameters associated with the
 285:              midcom agent are stored in this table.
 286: 
 287:              Each entry contains objects describing where
 288:              notifications are to be sent to the MIDCOM agent.
 289:             "
 290:     INDEX   { midcomAgentIndex }
 291:     ::= { midcomAgentTable 1 }
 292: 
 293: MidcomAgentEntry ::= SEQUENCE {
 294:      midcomAgentIndex       MidcomAgentIndex,
 295:      midcomAgentName        MidcomNameOrPassword,
 296:      midcomAgentMBId        Unsigned32,
 297:      midcomAgentAddrType    InetAddressType,
 298:      midcomAgentAddress     InetAddress,
 299:      midcomAgentPort        InetPortNumber,
 300:      midcomAgentEntryStatus RowStatus
 301:   }
 302: 
 303: midcomAgentIndex OBJECT-TYPE
 304:    SYNTAX       MidcomAgentIndex 
 305:    MAX-ACCESS   read-only
 306:    STATUS       current
 307:    DESCRIPTION  "A middlebox-unique index or Identifier for each
 308:                  midcom agent in the Table. This object allows the
 309:                  same USM user to engage in multiple midcom 
 310:                  sessions, perhaps one for each application. 
 311:                  Each midcom agent will have a unique agentIndex.
 312:                 "
 313:    ::= { midcomAgentEntry 1 }
 314: 
 315: 
 316: midcomAgentName OBJECT-TYPE
 317:        SYNTAX      SnmpAdminString (SIZE (1..32))
 318:        MAX-ACCESS  not-accessible
 319:        STATUS      current
 320:        DESCRIPTION
 321:            "The name of the SNMP manager that represents the midcom
 322:             agent in this midcomAgentTable.
 323:            "
 324:        ::= { midcomAgentEntry 2 }
 325: 
 326: midcomAgentMBId OBJECT-TYPE
 327:    SYNTAX       Unsigned32
 328:    MAX-ACCESS   read-only
 329:    STATUS       current
 330:    DESCRIPTION  "This is a agent-unique Identifier issued by
 331:                  agent to the middlebox.
 332:               
 333:                  This identifier is to be used by the middlebox
 334:                  during asynchronous notifications to the agent.
 335:                 "
 336:    ::= { midcomAgentEntry 3 }
 337: 
 338: midcomAgentAddrType OBJECT-TYPE
 339:     SYNTAX      InetAddressType
 340:     MAX-ACCESS  not-accessible
 341:     STATUS      current
 342:     DESCRIPTION
 343:             "This object specifies the address type used for
 344:              midcomAgentEntryAddress"
 345:     ::= { midcomAgentEntry 4 }
 346: 
 347: midcomAgentAddress OBJECT-TYPE
 348:     SYNTAX     InetAddress (SIZE (0..20))
 349:     MAX-ACCESS not-accessible
 350:     STATUS     current
 351:     DESCRIPTION
 352:             "This object represents the network layer 
 353:              address of the Midcom agent. This address, in 
 354:              conjunction with AddrType and the UDP port 
 355:              midcomAgentPort may be used by the middlebox
 356:              functions for asynchronous notification to the 
 357:              agent.
 358:             " 
 359:     ::= { midcomAgentEntry 5 }
 360: 
 361: midcomAgentPort OBJECT-TYPE
 362:     SYNTAX     InetPortNumber,
 363:     MAX-ACCESS not-accessible
 364:     STATUS     current
 365:     DESCRIPTION
 366:             "This object represents the UDP port of the
 367:              Midcom agent. The combinations of (AddressType, 
 368:              Address, Port) are to be used by the middlebox 
 369:              functions for asynchronous notification to the 
 370:              agent.
 371:             "
 372:     ::= { midcomAgentEntry 6 }
 373: 
 374: midcomAgentStatus  OBJECT-TYPE
 375:     SYNTAX      RowStatus
 376:     MAX-ACCESS  read-create
 377:     STATUS      current
 378:     DESCRIPTION
 379:             "The status of this conceptual row.
 380:              Objects in this row may be modified
 381:              while the value of this object is active(1)." 
 382:     REFERENCE
 383:             "Textual Conventions for SMIv2, Section 2
 384:    ::= { midcomAgentEntry 7 }
 385: 
 386: --
 387: -- midcomTables       - Results of agent initiated transactions
 388: --                      are saved into relevant tables for later
 389: --                      reference and parameter modification by
 390: --                      the agents. 
 391: --
 392: 
 393: --
 394: -- midcomGroupTable 
 395: --      group Ids per each agent.
 396: --
 397: midcomGroupTable OBJECT-TYPE
 398:      SYNTAX       SEQUENCE OF MidcomGroupEntry
 399:      MAX-ACCESS   read-only
 400:      STATUS       current
 401:      DESCRIPTION  "Lists the groups registered by each agent."
 402:   ::=    { midcomTables 1 }
 403: 
 404: midcomGroupEntry OBJECT-TYPE
 405:     SYNTAX      MidcomGroupEntry
 406:     MAX-ACCESS  read-only
 407:     STATUS      current
 408:     DESCRIPTION
 409:             "Each entry in the GroupTable holds a unique tuple
 410:              of parameters associated with a group Identifier.
 411:              Group identifiers are registered by an agent with
 412:              midcom."
 413: 
 414:     INDEX   { midcomGroupAgentIndex, 
 415:               midcomGroupMBResource,
 416:               midcomGroupId }
 417:     ::= { midcomGroupTable 1 }
 418: 
 419: MidcomGroupEntry ::= SEQUENCE {
 420:      midcomGroupAgentIndex  MidcomAgentIndex,
 421:      midcomGroupMBResource  MidcomMBResource,
 422:      midcomGroupGroupId     Unsigned32,
 423:      midcomGroupLifetime    TimeInterval,
 424:      midcomGroupMaxIdletime TimeInterval,
 425:      midcomGroupStatus      RowStatus
 426:   }
 427: 
 428: midcomGroupAgentIndex OBJECT-TYPE
 429:    SYNTAX       MidcomAgentIndex 
 430:    MAX-ACCESS   read-only
 431:    STATUS       current
 432:    DESCRIPTION  "Unique Identifier for an agent in the table"
 433:    ::= { midcomGroupEntry 1 }
 434: 
 435: midcomGroupMBResource OBJECT-TYPE
 436:    SYNTAX       MidcomMBResource
 437:    MAX-ACCESS   read-only
 438:    STATUS       current
 439:    DESCRIPTION  "Middlebox resource type for which the GroupId
 440:                  is registered by the agent.
 441:                 "
 442:    ::= { midcomGroupEntry 2 }
 443: 
 444: midcomGroupGroupId OBJECT-TYPE
 445:    SYNTAX       Unsigned32
 446:    MAX-ACCESS   read-only
 447:    STATUS       current
 448:    DESCRIPTION  "A unique Group Identifier registered by the 
 449:                  agent for the resource the agent owns.
 450:                 "
 451:    ::= { midcomGroupEntry 3 }
 452: 
 453: midcomGroupLifetime OBJECT-TYPE
 454:    SYNTAX       TimeInterval
 455:    MAX-ACCESS   read-create
 456:    STATUS       current
 457:    DESCRIPTION  "Default Lifetime of the resources that are 
 458:                  assigned this group Id."
 459:    ::= { midcomGroupEntry 4 }
 460:    
 461: midcomGroupMaxIdletime OBJECT-TYPE
 462:    SYNTAX       TimeInterval
 463:    MAX-ACCESS   read-create
 464:    STATUS       current
 465:    DESCRIPTION  "Default MaxIdletime of the resources that
 466:                  are assigned this group Id."
 467:    ::= { midcomGroupEntry 5 }
 468: 
 469: midcomGroupStatus  OBJECT-TYPE
 470:     SYNTAX      RowStatus
 471:     MAX-ACCESS  read-create
 472:     STATUS      current
 473:     DESCRIPTION
 474:             "The status of this conceptual row.
 475:              Objects in this row may be modified
 476:              while the value of this object is active(1)." 
 477:     REFERENCE
 478:             "Textual Conventions for SMIv2, Section 2
 479:    ::= { midcomGroupEntry 6 }
 480: 
 481: 
 482: --
 483: -- midcomBindTable 
 484: --      Bind Ids managed by each agent.
 485: --
 486: midcomBindTable OBJECT-TYPE
 487:      SYNTAX       SEQUENCE OF MidcomBindEntry
 488:      MAX-ACCESS   read-only
 489:      STATUS       current
 490:      DESCRIPTION  "Lists NAT binds owned by each agent."
 491:   ::=    { midcomTables 2 }
 492: 
 493: midcomBindEntry OBJECT-TYPE
 494:     SYNTAX      MidcomBindEntry
 495:     MAX-ACCESS  read-write
 496:     STATUS      current
 497:     DESCRIPTION
 498:             "Each entry in the BindTable holds a unique tuple
 499:              of parameters associated with a Bind.
 500:             "
 501: 
 502:     INDEX   { midcomBindAgentIndex,
 503:               midcomBindGroupId,
 504:               midcomBindId }
 505:     ::= { midcomBindTable 1 }
 506: 
 507: MidcomBindEntry ::= SEQUENCE {
 508:     midcomBindAgentIndex           MidcomAgentIndex,
 509:     midcomBindGroupId              Unsigned32,
 510:     midcomBindId                   NatBindId,
 511:     midcomBindLifetime             TimeInterval,
 512:     midcomBindMaxIdleTime          TimeInterval,
 513:     midcomBindIfIndex              InterfaceIndex,
 514:     midcomBindTranslationEntity    NatTranslationEntity,
 515:     midcomBindMBId                 NatBindId,    
 516:     midcomBindMode                 MidcomBindMode,
 517:     midcomBindStatus               RowStatus
 518: }
 519: 
 520: midcomBindAgentIndex OBJECT-TYPE
 521:    SYNTAX       MidcomAgentIndex 
 522:    MAX-ACCESS   read-only
 523:    STATUS       current
 524:    DESCRIPTION  "Unique Identifier for an agent in the table"
 525:    ::= { midcomBindEntry 1 }
 526: 
 527: midcomBindGroupId OBJECT-TYPE
 528:    SYNTAX       Unsigned32
 529:    MAX-ACCESS   read-create
 530:    STATUS       current
 531:    DESCRIPTION  "Group Identifier assigend to this bind 
 532:                  resource.
 533: 
 534:                  A value of 0 implies that the bind does
 535:                  not belong to a group membership.
 536:                 "
 537:    ::= { midcomBindEntry 2 }
 538: 
 539: midcomBindId OBJECT-TYPE
 540:    SYNTAX       NatBindId
 541:    MAX-ACCESS   read-only
 542:    STATUS       current
 543:    DESCRIPTION  "Unique Bind Identifier assigend to this midcom
 544:                  bind resource. This identifier is independent
 545:                  of the bind identifier midcomBindMBId that is
 546:                  managed by the NAT middlebox.
 547:                 "
 548:    ::= { midcomBindEntry 3 }
 549: 
 550: midcomBindLifetime OBJECT-TYPE
 551:    SYNTAX       TimeInterval
 552:    MAX-ACCESS   read-create
 553:    STATUS       current
 554:    DESCRIPTION  "Lifetime of the bind resource.
 555:                  When this is set to 0 and GroupId is
 556:                  set to non-zero, the Lifetime of the 
 557:                  GroupId is used to determine the 
 558:                  lifetime of this resource.
 559:                 "
 560:    ::= { midcomBindEntry 4 }
 561:    
 562: midcomBindMaxIdletime OBJECT-TYPE
 563:    SYNTAX       TimeInterval
 564:    MAX-ACCESS   read-create
 565:    STATUS       current
 566:    DESCRIPTION  "MaxIdletime of the Bind resource.
 567:                  When this is set to 0 and GroupId is
 568:                  set to non-zero, the MaxIdletime of the 
 569:                  GroupId is used to determine the 
 570:                  Maxidletime of this resource.
 571:                 "
 572:    ::= { midcomBindEntry 5 }
 573: 
 574: midcomBindIfIndex OBJECT-TYPE
 575:    SYNTAX       InterfaceIndex
 576:    MAX-ACCESS   read-only
 577:    STATUS       current
 578:    DESCRIPTION  "Interface Index for which the bind is defined. 
 579:     
 580:                  This value may be set to 0 to mean any 
 581:                  IP interface on the middlebox. This value
 582:                  may also be set to 0, when the middlebox has
 583:                  just one interface on which midcom is 
 584:                  configured.
 585:                 "
 586:    ::= { midcomBindEntry 6 }
 587: 
 588: midcomBindTranslationEntity OBJECT-TYPE
 589:     SYNTAX     NatTranslationEntity
 590:     MAX-ACCESS read-create
 591:     STATUS     current
 592:     DESCRIPTION
 593:             "This object represents the direction of the session
 594: 	     for which this BIND is applicable and entity within
 595:              the first packet that is subject to translation.
 596:             "
 597:     ::= { midcomBindEntry 7 }
 598: 
 599: midcomBindMBId OBJECT-TYPE
 600:    SYNTAX       NatBindId
 601:    MAX-ACCESS   read-only
 602:    STATUS       current
 603:    DESCRIPTION  "Unique Bind Identifier managed by the NAT
 604:                  middlebox function. This identifier is
 605:                  independent of the bind identifier 
 606:                  midcomBindId that is used in conjunction 
 607:                  with midcom. Multiple midcomBindIds may be
 608:                  associated with the same midcomBindMBId.
 609:                 "
 610:    ::= { midcomBindEntry 8 }
 611: 
 612: midcomBindMode  OBJECT-TYPE
 613:    SYNTAX       MidcomBindMode
 614:    MAX-ACCESS   read-only
 615:    STATUS       current
 616:    DESCRIPTION  "Indicates whethr the bind is address bind 
 617:                  or port bind.
 618:                 "
 619:    ::= { midcomBindEntry 9 }
 620: 
 621: midcomBindStatus  OBJECT-TYPE
 622:     SYNTAX      RowStatus
 623:     MAX-ACCESS  read-create
 624:     STATUS      current
 625:     DESCRIPTION
 626:             "The status of this conceptual row.
 627:              Objects in this row may be modified
 628:              while the value of this object is active(1)." 
 629:     REFERENCE
 630:             "Textual Conventions for SMIv2, Section 2
 631:    ::= { midcomBindEntry 6 }
 632: 
 633: --
 634: -- midcomNatSessionTable 
 635: --     NAT Session Ids per each agent.
 636: --
 637: midcomNatSessionTable OBJECT-TYPE
 638:      SYNTAX       SEQUENCE OF MidcomNatSessionEntry
 639:      MAX-ACCESS   read-only
 640:      STATUS       current
 641:      DESCRIPTION  "Lists NAT sessions owned by each agent."
 642:   ::=    { midcomTables 3 }
 643: 
 644: midcomNatSessionEntry OBJECT-TYPE
 645:     SYNTAX      MidcomNatSessionEntry
 646:     MAX-ACCESS  read-write
 647:     STATUS      current
 648:     DESCRIPTION
 649:             "Each entry in the NatSessionTable holds a 
 650:              unique tuple of parameters associated with
 651:              a NAT session.
 652:             "
 653:     INDEX   { midcomNatSessionAgentIndex,
 654:               midcomNatSessionGroupId,
 655:               midcomNatSessionId }
 656:     ::= { midcomNatSessionTable 1 }
 657: 
 658: MidcomNatSessionEntry ::= SEQUENCE {
 659:     midcomNatSessionAgentIndex           MidcomAgentIndex,
 660:     midcomNatSessionGroupId              Unsigned32,
 661:     midcomNatSessionId                   NatSessionId,
 662:     midcomNatSessionLifetime             TimeInterval,
 663:     midcomNatSessionMaxIdleTime          TimeInterval,
 664:     midcomNatSessionIfIndex              InterfaceIndex,   
 665:     midcomNatSessionRowStatus            RowStatus
 666: }
 667: 
 668: midcomNatSessionAgentIndex OBJECT-TYPE
 669:    SYNTAX       MidcomAgentIndex 
 670:    MAX-ACCESS   read-only
 671:    STATUS       current
 672:    DESCRIPTION  "Unique Identifier for an agent in the table"
 673:    ::= { midcomNatSessionEntry 1 }
 674: 
 675: midcomNatSessionGroupId OBJECT-TYPE
 676:    SYNTAX       Unsigned32
 677:    MAX-ACCESS   read-create
 678:    STATUS       current
 679:    DESCRIPTION  "Group Identifier assigend to this
 680:                  resource.
 681: 
 682:                  A value of 0 implies that the session does
 683:                  not belong to a group membership.
 684:                 "
 685:    ::= { midcomNatSessionEntry 2 }
 686: 
 687: midcomNatSessionId OBJECT-TYPE
 688:    SYNTAX       NatBindId
 689:    MAX-ACCESS   read-only
 690:    STATUS       current
 691:    DESCRIPTION  "Unique session Identifier assigend to this midcom
 692:                  bind resource. This identifier is same as the
 693:                  session identifier that is managed by the NAT
 694:                  middlebox.
 695:                 "
 696:    ::= { midcomNatSessionEntry 3 }
 697: 
 698: midcomNatSessionLifetime OBJECT-TYPE
 699:    SYNTAX       TimeInterval
 700:    MAX-ACCESS   read-create
 701:    STATUS       current
 702:    DESCRIPTION  "Lifetime of the session.
 703:                  When this is set to 0 and GroupId is
 704:                  set to non-zero, the Lifetime of the 
 705:                  GroupId is used to determine the 
 706:                  lifetime of this resource.
 707:                 "
 708:    ::= { midcomNatSessionEntry 4 }
 709:    
 710: midcomNatSessionMaxIdletime OBJECT-TYPE
 711:    SYNTAX       TimeInterval
 712:    MAX-ACCESS   read-create
 713:    STATUS       current
 714:    DESCRIPTION  "MaxIdletime of the session.
 715:                  When this is set to 0 and GroupId is
 716:                  set to non-zero, the MaxIdletime of the 
 717:                  GroupId is used to determine the 
 718:                  Maxidletime of this resource.
 719:                 "
 720:    ::= { midcomNatSessionEntry 5 }
 721: 
 722: midcomNatSessionIfIndex OBJECT-TYPE
 723:    SYNTAX       InterfaceIndex
 724:    MAX-ACCESS   read-only
 725:    STATUS       current
 726:    DESCRIPTION  "Interface Index on which the bind is defined. 
 727:     
 728:                  This value may be set to 0 to mean any 
 729:                  IP interface on the middlebox. This value
 730:                  may also be set to 0, when the middlebox has
 731:                  just one interface on which midcom is 
 732:                  configured.
 733:                 "
 734:    ::= { midcomNatSessionEntry 6 }
 735: 
 736: midcomNatSessionStatus  OBJECT-TYPE
 737:     SYNTAX      RowStatus
 738:     MAX-ACCESS  read-create
 739:     STATUS      current
 740:     DESCRIPTION
 741:             "The status of this conceptual row.
 742:              Objects in this row may be modified
 743:              while the value of this object is active(1)." 
 744:     REFERENCE
 745:             "Textual Conventions for SMIv2, Section 2
 746:    ::= { midcomNatSessionEntry 7 }
 747: 
 748: --
 749: -- midcomTransactions 
 750: --   The transaction Group
 751: --   Transactions issued by the midcom agents
 752: --   to the midcom MIB module.
 753: --
 754: 
 755: --
 756: --
 757: -- Textual conventions used
 758: --
 759: --
 760: 
 761: MidcomInvocationStatus ::= TEXTUAL-CONVENTION
 762:    STATUS current
 763:    DESCRIPTION
 764:       "Allows invocation and status queries."
 765:    SYNTAX INTEGER {
 766:       neverInvoked(1),
 767:       performOperation(2),
 768:       inProgress(3),
 769:       success(4),
 770:       failure(5)
 771:    }
 772: 
 773: MidcomGroupCommand ::= TEXTUAL-CONVENTION
 774:    STATUS current
 775:    DESCRIPTION
 776:       "The choice of operations on groups.
 777: 
 778:        add command:
 779:        Midcom agent uses the command to specify the
 780:        group-identifiers and associated parameters it 
 781:        wishes to use during the Midcom session.
 782:        In case of success, the GroupId is tracked by
 783:        the midcom Module midcomGroupTable. No ill effect
 784:        in case of failure.
 785:  
 786:        delete command:
 787:        Midcom agent uses the command to remove a 
 788:        group-identifier from its list of valid group-ids. 
 789:        In case of success, the GroupId is deleted from
 790:        the midcomGroupTable.
 791:       "
 792:    SYNTAX INTEGER {
 793:       add(1),
 794:       delete(2)
 795:    }
 796: 
 797: MidcomBindCommand ::= TEXTUAL-CONVENTION
 798:    STATUS current
 799:    DESCRIPTION
 800:       "The choice of operations on Nat Binds.
 801: 
 802:        reserveBindInboundSrc,
 803:        reserveBindInboundDst,
 804:        reserveBindOutboundSrc,
 805:        reserveBindOutboundDst
 806:        Reserve an address or port bind, given the interface 
 807:        and a src or dst endpoint in one of private address
 808:        realm or public address realm.
 809: 
 810:        reserveBindInboundSrcOrOutboundDst,
 811:        reserveBindInboundDstOrOutboundSrc
 812:        Reserve an address or portBind, given the interface
 813:        and a src or dst endpoint in one of private address
 814:        realm or public address realm. Set the Bind to be 
 815:        bi-directional.
 816:  
 817:        reserveBind2InboundSrc,
 818:        reserveBind2InboundDst,
 819:        reserveBind2OutboundSrc,
 820:        reserveBind2OutboundDst
 821:        Reserve two port binds, given the interface index
 822:        and a src or dst endpoint in one of private address
 823:        realm or public address realm. The two ports assigned
 824:        for the two port-binds are to be contiguous and assume
 825:        oddity as specified in an oddity parameter. If the bind
 826:        assigned turns out to be an address bind, one address 
 827:        bind suffices independent of the port oddity requirement.
 828:        
 829:        reserveBind2InboundSrcInboundDst,
 830:        reseverBind2OutboundSrcOutboundDst,
 831:        Reserve two binds as in a twice NAT, given the interface 
 832:        index and the session tuple in private realm or public
 833:        realm.
 834:       "
 835:    SYNTAX INTEGER {
 836:     reserveBindInboundSrc,
 837:     reserveBindInboundDst,
 838:     reserveBindOutboundSrc,
 839:     reserveBindOutboundDst,
 840:     reserveBindInboundSrcOrOutboundDst,
 841:     reserveBindInboundDstOrOutboundSrc,
 842:     reserveBind2InboundSrc,
 843:     reserveBind2InboundDst,
 844:     reserveBind2OutboundSrc,
 845:     reserveBind2OutboundDst,
 846:     reserveBind2InboundSrcInboundDst,
 847:     reseverBind2OutboundSrcOutboundDst,
 848:    }
 849: 
 850: MidcomNatSessionCommand ::= TEXTUAL-CONVENTION
 851:    STATUS current
 852:    DESCRIPTION
 853:       "The choice of commands on NAT sessions.
 854:       "
 855:    SYNTAX INTEGER {
 856:       createNatSession(1)
 857:    }
 858: 
 859: MidcomTransInOutFlags ::= TEXTUAL-CONVENTION
 860:        STATUS       current
 861:        DESCRIPTION
 862:                "A BITS representation used to specify the 
 863:                 relevant parameters for input during a 
 864:                 command request (or) during a command 
 865:                 response.  
 866:                "
 867:        SYNTAX  BITS {
 868:                 privateAddrType (0),      
 869:                 privateSrcAddr  (1),
 870:                 privateSrcPort  (2),
 871:                 privateDstAddr  (3),
 872:                 privateDstPort  (4),
 873:                 globalAddrType  (5),
 874:                 globalSrcAddr   (6),
 875:                 globalSrcPort   (7),
 876:                 globalDstAddr   (8),
 877:                 globalDstPort   (9),
 878:                 groupId         (10),
 879:                 lifetime        (11),
 880:                 maxIdletime     (12),
 881:                 PrivateSrcBind  (13),
 882:                 PrivateDstBind  (14)
 883:             }
 884: 
 885: MidcomSessionDirection ::= TEXTUAL-CONVENTION
 886:    STATUS current
 887:    DESCRIPTION
 888:       "Describes the direction of a session specific to an
 889:        interface.
 890:       "
 891:    SYNTAX INTEGER {
 892:       inbound(1),
 893:       outbound(2)
 894:    }
 895: 
 896: midcomTransGroupTable OBJECT-TYPE
 897:      SYNTAX       SEQUENCE OF MidcomTransGroupEntry
 898:      MAX-ACCESS   read-write
 899:      STATUS       current
 900:      DESCRIPTION  "This lists Group based transactions, 
 901:                    one per each agent."
 902:   ::=    { midcomTransactions  1 }
 903: 
 904: midcomTransGroupEntry OBJECT-TYPE
 905:     SYNTAX      MidcomTransGroupEntry
 906:     MAX-ACCESS  not-accessible
 907:     STATUS      current
 908:     DESCRIPTION
 909:             "Each entry pertains to a midcom agent carrying
 910:              out a group based transaction.
 911:              Midcom module will respond with Success or 
 912:              Failure, with an error code.
 913:              
 914:              In the case of success, the tuples specified in the 
 915:              transaction are entered into midcomGroupTable for
 916:              later reference and parameter modification by the
 917:              agent.
 918:             "
 919:     INDEX   { midcomTransGroupAgentIndex }
 920:     ::=    { midcomTransGroupTable 1 }
 921: 
 922: MidcomTransGroupEntry ::= SEQUENCE {
 923:      midcomTransGroupAgentIndex   MidcomAgentIndex,
 924:      midcomTransGroupMBResource   MidcomMBResource,
 925:      midcomTransGroupGroupId      Unsigned32,
 926:      midcomTransGroupLifetime     TimeInterval,
 927:      midcomTransGroupMaxIdletime  TimeInterval,
 928:      midcomTransGroupCommand      MidcomGroupCommand,
 929:      midcomTransGroupStatus       MidcomInvocationStatus
 930: }
 931: 
 932: midcomTransGroupAgentIndex OBJECT-TYPE
 933:    SYNTAX       MidcomAgentIndex 
 934:    MAX-ACCESS   read-only
 935:    STATUS       current
 936:    DESCRIPTION  "A unique Identifier for an Agent in the Table.
 937:                  This object is set when an agent reads the object
 938:                  midcomAgentIndexNext.
 939:                 "
 940:    ::= { midcomTransGroupEntry 1 }
 941: 
 942: midcomTransGroupMBResource OBJECT-TYPE
 943:    SYNTAX       MidcomMBResource
 944:    MAX-ACCESS   read-create
 945:    STATUS       current
 946:    DESCRIPTION  "Middlebox function specific resource type
 947:                  for which the GroupId is applicable."
 948:    ::= { midcomTransGroupEntry 2 }
 949: 
 950: midcomTransGroupGroupId OBJECT-TYPE
 951:    SYNTAX       Unsigned32
 952:    MAX-ACCESS   read-create
 953:    STATUS       current
 954:    DESCRIPTION  "Group Identifier for which the Group 
 955:                  operation is to be performed."
 956:    ::= { midcomTransGroupEntry 3 }
 957: 
 958: midcomTransGroupLifetime OBJECT-TYPE
 959:    SYNTAX       TimeInterval
 960:    MAX-ACCESS   read-create
 961:    STATUS       current
 962:    DESCRIPTION  "Default Lifetime of the resources that are 
 963:                  assigned this group Id. This field is 
 964:                  required only during the add operation.
 965:                  This field is ignored during the delete
 966:                  operation.
 967:                 "
 968:    ::= { midcomTransGroupEntry 4 }
 969:    
 970: midcomTransGroupMaxIdletime OBJECT-TYPE
 971:    SYNTAX       TimeInterval
 972:    MAX-ACCESS   read-create
 973:    STATUS       current
 974:    DESCRIPTION  "Default MaxIdletime of the resources that
 975:                  are assigned this group Id. This field
 976:                  is required to be filled only during the
 977:                  add operation. This field is ignored during
 978:                  the delete operation.
 979:                 "
 980:    ::= { midcomTransGroupEntry 5 }
 981: 
 982: midcomTransGroupCommand  OBJECT-TYPE
 983:    SYNTAX       MidcomGroupCommand
 984:    MAX-ACCESS   read-write
 985:    STATUS       current
 986:    DESCRIPTION  "This specifies the group command to be
 987:                  executed. 
 988:                 "
 989:    ::= { midcomTransGroupEntry 6 }
 990: 
 991: midcomTransGroupStatus   OBJECT-TYPE
 992:    SYNTAX       MidcomInvocationStatus
 993:    MAX-ACCESS   read-write
 994:    STATUS       current
 995:    DESCRIPTION  "Invocation status."
 996:    ::= { midcomTransGroupEntry 7 }
 997: 
 998: midcomTransBindTable OBJECT-TYPE
 999:      SYNTAX       SEQUENCE OF MidcomTransBindEntry
1000:      MAX-ACCESS   read-write
1001:      STATUS       current
1002:      DESCRIPTION  "This lists Bind based transactions, 
1003:                    one per each agent."
1004:   ::=    { midcomTransactions  2 }
1005: 
1006: midcomTransBindEntry OBJECT-TYPE
1007:     SYNTAX      MidcomTransBindEntry
1008:     MAX-ACCESS  not-accessible
1009:     STATUS      current
1010:     DESCRIPTION
1011:             "Each entry pertains to a midcom agent carrying
1012:              out a BIND based transaction.
1013:              Midcom module will respond with Success or 
1014:              Failure, with an error code.
1015: 
1016:              In the case of success, there can be a maximum 
1017:              of two address or port binds returned.
1018:              These binds are also entered into midcomBindTable
1019:              for later use by the midcom agents.
1020:             "
1021:     INDEX   { midcomTransBindAgentIndex }
1022:     ::=    { midcomTransBindTable 1 }
1023: 
1024: MidcomTransBindEntry ::= SEQUENCE {
1025:      midcomTransBindAgentIndex         MidcomAgentIndex,
1026:      midcomTransBindCommand            MidcomBindCommand,
1027:      midcomTransBindOddity             Unsigned32,
1028:      midcomTransBindProtocol           NATProtocolType,
1029:      midcomTransBindSessionDirection   MidcomSessionDirection,
1030:      midcomTransBindIfIndex            InterfaceIndex,
1031:      midcomTransBindInParms            MidcomTransInOutFlags, 
1032:      midcomTransBindOutParms           MidcomTransInOutFlags,
1033:      midcomTransBindGroupId            Unsigned32,
1034:      midcomTransBindLifetime           TimeInterval,
1035:      midcomTransBindMaxIdletime        TimeInterval,
1036: 
1037:      midcomTransBindPrivateAddrType    InetAddressType,
1038:      midcomTransBindPrivateSrcAddr     InetAddress,
1039:      midcomTransBindPrivateSrcPort     InetPortNumber,
1040:      midcomTransBindPrivateDstAddr     InetAddress,
1041:      midcomTransBindPrivateDstPort     InetPortNumber,
1042: 
1043:      midcomTransBindGlobalAddrType     InetAddressType,
1044:      midcomTransBindGlobalSrcAddr      InetAddress,
1045:      midcomTransBindGlobalSrcPort      InetPortNumber,
1046:      midcomTransBindGlobalDstAddr      InetAddress,
1047:      midcomTransBindGlobalDstPort      InetPortNumber,
1048: 
1049:      midcomTransBindPrivateSrcBindId   MidcomBindIdOrZero,
1050:      midcomTransBindPrivateSrcBindMode MidcomBindMode,
1051:      midcomTransBindPrivateDstBindId   MidcomBindIdOrZero,
1052:      midcomTransBindPrivateDstBindMode MidcomBindMode,
1053:      midcomTransBindStatus             MidcomInvocationStatus
1054: }
1055: 
1056: midcomTransBindAgentIndex OBJECT-TYPE
1057:    SYNTAX       MidcomAgentIndex 
1058:    MAX-ACCESS   read-only
1059:    STATUS       current
1060:    DESCRIPTION  "A unique Identifier for an Agent in the Table.
1061:                  This object is set when an agent reads the object
1062:                  midcomAgentIndexNext.
1063:                 "
1064:    ::= { midcomTransBindEntry 1 }
1065: 
1066: midcomTransBindCommand  OBJECT-TYPE
1067:    SYNTAX       MidcomBindCommand
1068:    MAX-ACCESS   read-write
1069:    STATUS       current
1070:    DESCRIPTION  "This specifies the bind command to be
1071:                  executed. 
1072:                 "
1073:    ::= { midcomTransBindEntry 2 }
1074: 
1075: midcomTransBindOddity  OBJECT-TYPE
1076:    MAX-ACCESS   read-write
1077:    STATUS       current
1078:    DESCRIPTION  "This specifies whether or not
1079:                  the bind should enforce oddity 
1080:                  to match that of the specified
1081:                  end point or end points.
1082:                 "
1083:    SYNTAX   INTEGER {
1084:                      oddityEnforce(1),  -- Enforce oddity
1085:                      oddityNotRequired (2) -- Oddity not required.
1086:                 }
1087:    ::= { midcomTransBindEntry 3 }
1088: 
1089: midcomTransBindProtocol  OBJECT-TYPE
1090:    SYNTAX       NATProtocolType
1091:    MAX-ACCESS   read-write
1092:    STATUS       current
1093:    DESCRIPTION  "This specifies the protocol (TCP/UDP) of the 
1094:                  session that requires the bind reservation.
1095:                 "
1096:    ::= { midcomTransBindEntry 4 }
1097: 
1098: midcomTransBindSessionDirection   OBJECT-TYPE
1099:    SYNTAX       MidcomSessionDirection
1100:    MAX-ACCESS   read-write
1101:    STATUS       current
1102:    DESCRIPTION  "This specifies the orientation of the 
1103:                  session that requires the bind reservation.
1104:                 "
1105:    ::= { midcomTransBindEntry 5 }
1106: 
1107: midcomTransBindIfIndex OBJECT-TYPE
1108:    SYNTAX       InterfaceIndex
1109:    MAX-ACCESS   read-create
1110:    STATUS       current
1111:    DESCRIPTION  "Interface Index for which the bind is 
1112:                  being requested. 
1113:     
1114:                  This value may be set to 0 to mean any 
1115:                  IP interface on the middlebox. This value
1116:                  may also be set to 0, when the middlebox has
1117:                  just one interface on which midcom is 
1118:                  configured.
1119:                 "
1120:    ::= { midcomTransBindEntry 6 }
1121: 
1122: midcomTransBindInParms    OBJECT-TYPE
1123:    SYNTAX       MidcomTransInOutFlags
1124:    MAX-ACCESS   read-write
1125:    STATUS       current
1126:    DESCRIPTION  "Lists the fields within the row that are
1127:                  filled by the requestor.
1128: 
1129:                  While the transaction allows for any or 
1130:                  all of the end-points to be specified,
1131:                  typically, no more than one end-point
1132:                  should be defined. For Twice-Nat alone,
1133:                  two end-points must be specified.
1134:                 "
1135:    ::= { midcomTransBindEntry 7 }
1136: 
1137: midcomTransBindOutParms    OBJECT-TYPE
1138:    SYNTAX       MidcomTransInOutFlags
1139:    MAX-ACCESS   read-write
1140:    STATUS       current
1141:    DESCRIPTION  "Lists the fields within the row that are
1142:                  filled by the middlebox in response to the
1143:                  bind request from agent.
1144: 
1145:                  While the transaction allows for any or 
1146:                  all of the end-points to be filled,
1147:                  typically, no more than one end-point
1148:                  should be filled. For Twice-Nat alone,
1149:                  two end-points must be specified.
1150: 
1151:                  For oddity based port binds, the second
1152:                  bind is used to specify the second port
1153:                  bind.
1154:                 "
1155:    ::= { midcomTransBindEntry 8 }
1156:          
1157: midcomTransBindGroupId OBJECT-TYPE
1158:    SYNTAX       Unsigned32
1159:    MAX-ACCESS   read-create
1160:    STATUS       current
1161:    DESCRIPTION  "Group Identifier assigend to this bind 
1162:                  resource.
1163:                  A value of 0 implies that the bind is not
1164:                  assigned a group membership.
1165:                 "
1166:    ::= { midcomTransBindEntry 9 }
1167: 
1168: midcomTransBindLifetime OBJECT-TYPE
1169:    SYNTAX       TimeInterval
1170:    MAX-ACCESS   read-create
1171:    STATUS       current
1172:    DESCRIPTION  "Individual Lifetime of the bind resource.
1173:                  When this is set to 0 and GroupId is
1174:                  set to non-zero, the Lifetime of the 
1175:                  GroupId is used to determine the 
1176:                  lifetime of this resource.
1177:                 "
1178:    ::= { midcomTransBindEntry 10 }
1179:    
1180: midcomTransBindMaxIdletime OBJECT-TYPE
1181:    SYNTAX       TimeInterval
1182:    MAX-ACCESS   read-create
1183:    STATUS       current
1184:    DESCRIPTION  "MaxIdletime of the Bind resource.
1185:                  When this is set to 0 and GroupId is
1186:                  set to non-zero, the MaxIdletime of the 
1187:                  GroupId is used to determine the 
1188:                  Maxidletime of this resource.
1189:                 "
1190:    ::= { midcomTransBindEntry 11 }
1191: 
1192: midcomTransBindPrivateAddrType   OBJECT-TYPE
1193:    SYNTAX       InetAddressType
1194:    MAX-ACCESS   read-create
1195:    STATUS       current
1196:    DESCRIPTION  "IP address type in the private realm.
1197:                 "
1198:    ::= { midcomTransBindEntry 12 }
1199: 
1200: midcomTransBindPrivateSrcAddr   OBJECT-TYPE
1201:    SYNTAX       InetAddress
1202:    MAX-ACCESS   read-create
1203:    STATUS       current
1204:    DESCRIPTION  "IP source address in the private realm.
1205:                  This is relevant if the agent refers a
1206:                  private realm address and the bind command
1207:                  is to find a bind for private realm 
1208:                  source end point.
1209:                 "
1210:    ::= { midcomTransBindEntry 13 }
1211: 
1212: midcomTransBindPrivateSrcPort   OBJECT-TYPE
1213:    SYNTAX       InetPortNumber
1214:    MAX-ACCESS   read-create
1215:    STATUS       current
1216:    DESCRIPTION  "IP source port in the private realm.
1217:                  This is relevant if the agent refers a
1218:                  private realm address and the bind command
1219:                  is to find a bind for private realm 
1220:                  source end point.
1221:                 "
1222:    ::= { midcomTransBindEntry 14 }
1223: 
1224: midcomTransBindPrivateDstAddr   OBJECT-TYPE
1225:    SYNTAX       InetAddress
1226:    MAX-ACCESS   read-create
1227:    STATUS       current
1228:    DESCRIPTION  "IP destination address in the private realm.
1229:                  This is relevant if the agent refers a
1230:                  private realm address and the bind command
1231:                  is to find a bind for private realm 
1232:                  destination end point.
1233:                 "
1234:    ::= { midcomTransBindEntry 15 }
1235: 
1236: midcomTransBindPrivateDstPort   OBJECT-TYPE
1237:    SYNTAX       InetPortNumber
1238:    MAX-ACCESS   read-create
1239:    STATUS       current
1240:    DESCRIPTION  "IP destination port in the private realm.
1241:                  This is relevant if the agent refers a
1242:                  private realm address and the bind command
1243:                  is to find a bind for private realm 
1244:                  destination end point.
1245:                 "
1246:    ::= { midcomTransBindEntry 16 }
1247: 
1248: midcomTransBindGlobalAddrType   OBJECT-TYPE
1249:    SYNTAX       InetAddressType
1250:    MAX-ACCESS   read-create
1251:    STATUS       current
1252:    DESCRIPTION  "IP address type in the global address realm.
1253:                 "
1254:    ::= { midcomTransBindEntry 17 }
1255: 
1256: midcomTransBindGlobalSrcAddr   OBJECT-TYPE
1257:    SYNTAX       InetAddress
1258:    MAX-ACCESS   read-create
1259:    STATUS       current
1260:    DESCRIPTION  "IP source address in the global realm.
1261:                  This is relevant if the agent refers a
1262:                  global realm address and the bind command
1263:                  is to find a bind for global realm 
1264:                  source end point.
1265:                 "
1266:    ::= { midcomTransBindEntry 18 }
1267: 
1268: midcomTransBindGlobalSrcPort   OBJECT-TYPE
1269:    SYNTAX       InetPortNumber
1270:    MAX-ACCESS   read-create
1271:    STATUS       current
1272:    DESCRIPTION  "IP source port in the global realm.
1273:                  This is relevant if the agent refers a
1274:                  global realm address and the bind command
1275:                  is to find a bind for global realm 
1276:                  source end point.
1277:                 "
1278:    ::= { midcomTransBindEntry 19 }
1279: 
1280: midcomTransBindGlobalDstAddr   OBJECT-TYPE
1281:    SYNTAX       InetAddress
1282:    MAX-ACCESS   read-create
1283:    STATUS       current
1284:    DESCRIPTION  "IP destination address in the global realm.
1285:                  This is relevant if the agent refers a
1286:                  global realm address and the bind command
1287:                  is to find a bind for global realm 
1288:                  destination end point.
1289:                 "
1290:    ::= { midcomTransBindEntry 20 }
1291: 
1292: midcomTransBindGlobalDstPort   OBJECT-TYPE
1293:    SYNTAX       InetPortNumber
1294:    MAX-ACCESS   read-create
1295:    STATUS       current
1296:    DESCRIPTION  "IP destination port in the private realm.
1297:                  This is relevant if the agent refers a
1298:                  global realm address and the bind command
1299:                  is to find a bind for global realm 
1300:                  destination end point.
1301:                 "
1302:    ::= { midcomTransBindEntry 21 }
1303: 
1304: midcomTransBindPrivateSrcBindId   OBJECT-TYPE
1305:    SYNTAX       MidcomBindIdOrZero
1306:    MAX-ACCESS   read-only
1307:    STATUS       current
1308:    DESCRIPTION  "This is the first Bind that will be generated
1309:                 in majority of the cases.
1310:                 This will be set to 0 in the case of symmetric 
1311:                 NAT.
1312:                 "
1313:    ::= { midcomTransBindEntry 22 }
1314: 
1315: midcomTransBindPrivateSrcBindMode   OBJECT-TYPE
1316:    SYNTAX       MidcomBindMode,
1317:    MAX-ACCESS   read-only
1318:    STATUS       current
1319:    DESCRIPTION  "This indicates whether PrivateSrcBind is 
1320:                  address bind or port bind. 
1321:                 "
1322:    ::= { midcomTransBindEntry 23 }
1323: 
1324: midcomTransBindPrivateDstBindId   OBJECT-TYPE
1325:    SYNTAX       MidcomBindIdOrZero
1326:    MAX-ACCESS   read-only
1327:    STATUS       current
1328:    DESCRIPTION  "This is the second Bind that will be generated
1329:                 in the case of twice-NAT or oddity based 2 bind
1330:                 request.
1331: 
1332:                 This will be set to 0 in the case of symmetric 
1333:                 NAT.
1334:                 "
1335:    ::= { midcomTransBindEntry 24 }
1336: 
1337: midcomTransBindPrivateDstBindMode   OBJECT-TYPE
1338:    SYNTAX       MidcomBindMode
1339:    MAX-ACCESS   read-only
1340:    STATUS       current
1341:    DESCRIPTION  "This indicates whether PrivateDstBind is 
1342:                  address bind or port bind. 
1343:                 "
1344:    ::= { midcomTransBindEntry 25 }
1345: 
1346: midcomTransBindStatus   OBJECT-TYPE
1347:    SYNTAX       MidcomInvocationStatus
1348:    MAX-ACCESS   read-write
1349:    STATUS       current
1350:    DESCRIPTION  "Invocation status."
1351:    ::= { midcomTransBindEntry 26 }
1352: 
1353: midcomTransNatSessionTable OBJECT-TYPE
1354:      SYNTAX       SEQUENCE OF MidcomTransNatSessionEntry
1355:      MAX-ACCESS   read-write
1356:      STATUS       current
1357:      DESCRIPTION  "This lists NatSession based transactions, 
1358:                    one per each agent."
1359:   ::=    { midcomTransactions  3 }
1360: 
1361: midcomTransNatSessionEntry OBJECT-TYPE
1362:     SYNTAX      MidcomTransNatSessionEntry
1363:     MAX-ACCESS  not-accessible
1364:     STATUS      current
1365:     DESCRIPTION
1366:             "Each entry pertains to a midcom agent carrying
1367:              out a Nat session based transaction.
1368:              Midcom module will respond with Success or 
1369:              Failure, with an error code.
1370: 
1371:              In the case of success, there can be a maximum 
1372:              of two address or port binds returned.
1373:              These binds are entered into midcomBindTable
1374:              for later use by the midcom agents.
1375: 
1376:              Further, the NatSession entry is included within
1377:              the midcomNatSession table.
1378:             "
1379:     INDEX   { midcomTransNatSessionAgentIndex }
1380:     ::=    { midcomTransNatSessionTable 1 }
1381: 
1382: MidcomTransNatSessionEntry ::= SEQUENCE {
1383:      midcomTransNatSessionAgentIndex        MidcomAgentIndex,
1384:      midcomTransNatSessionCommand           MidcomNatSessionCommand,
1385:      midcomTransNatSessionProtocol          NATProtocolType,
1386:      midcomTransNatSessionSessionDirection  MidcomSessionDirection,
1387:      midcomTransNatSessionIfIndex           InterfaceIndex,
1388:      midcomTransNatSessionInParms           MidcomTransInOutFlags, 
1389:      midcomTransNatSessionOutParms          MidcomTransInOutFlags,
1390:      midcomTransNatSessionGroupId           Unsigned32,
1391:      midcomTransNatSessionLifetime          TimeInterval,
1392:      midcomTransNatSessionMaxIdletime       TimeInterval,
1393:      midcomTransNatSessionPrivateAddrType   InetAddressType,
1394:      midcomTransNatSessionPrivateSrcAddr    InetAddress,
1395:      midcomTransNatSessionPrivateSrcPort    InetPortNumber,
1396:      midcomTransNatSessionPrivateDstAddr    InetAddress,
1397:      midcomTransNatSessionPrivateDstPort    InetPortNumber,
1398:      midcomTransNatSessionGlobalAddrType    InetAddressType,
1399:      midcomTransNatSessionGlobalSrcAddr     InetAddress,
1400:      midcomTransNatSessionGlobalSrcPort     InetPortNumber,
1401:      midcomTransNatSessionGlobalDstAddr     InetAddress,
1402:      midcomTransNatSessionGlobalDstPort     InetPortNumber,
1403:      midcomTransNatSessionPrivateSrcBindId   MidcomBindIdOrZero,
1404:      midcomTransNatSessionPrivateDstBindId   MidcomBindIdOrZero,
1405:      midcomTransNatSessionStatus             MidcomInvocationStatus
1406: }
1407: 
1408: midcomTransNatSessionAgentIndex OBJECT-TYPE
1409:    SYNTAX       MidcomAgentIndex 
1410:    MAX-ACCESS   read-only
1411:    STATUS       current
1412:    DESCRIPTION  "A unique Identifier for an Agent in the Table.
1413:                  This object is set when an agent reads the object
1414:                  midcomAgentIndexNext.
1415:                 "
1416:    ::= { midcomTransNatSessionEntry 1 }
1417: 
1418: midcomTransNatSessionCommand  OBJECT-TYPE
1419:    SYNTAX       MidcomNatSessionCommand
1420:    MAX-ACCESS   read-write
1421:    STATUS       current
1422:    DESCRIPTION  "This specifies the NatSession command to be
1423:                  executed. 
1424:                 "
1425:    ::= { midcomTransNatSessionEntry 2 }
1426: 
1427: midcomTransNatSessionProtocol  OBJECT-TYPE
1428:    SYNTAX       NATProtocolType
1429:    MAX-ACCESS   read-write
1430:    STATUS       current
1431:    DESCRIPTION  "This specifies the protocol (TCP/UDP) of the 
1432:                  session.
1433:                 "
1434:    ::= { midcomTransNatSessionEntry 3 }
1435: 
1436: midcomTransNatSessionSessionDirection   OBJECT-TYPE
1437:    SYNTAX       MidcomSessionDirection
1438:    MAX-ACCESS   read-write
1439:    STATUS       current
1440:    DESCRIPTION  "This specifies the orientation of the 
1441:                  session with reference to the interface
1442:                  index specified.
1443:                 "
1444:    ::= { midcomTransNatSessionEntry 4 }
1445: 
1446: midcomTransNatSessionIfIndex OBJECT-TYPE
1447:    SYNTAX       InterfaceIndex
1448:    MAX-ACCESS   read-create
1449:    STATUS       current
1450:    DESCRIPTION  "Interface Index for which the NAT-Session is 
1451:                  being requested. 
1452:     
1453:                  This value may be set to 0 to mean any 
1454:                  IP interface on the middlebox. This value
1455:                  may also be set to 0, when the middlebox has
1456:                  just one interface on which midcom is 
1457:                  configured.
1458:                 "
1459:    ::= { midcomTransNatSessionEntry 5 }
1460: 
1461: midcomTransNatSessionInParms    OBJECT-TYPE
1462:    SYNTAX       MidcomTransInOutFlags
1463:    MAX-ACCESS   read-write
1464:    STATUS       current
1465:    DESCRIPTION  "Lists the fields within the row that are
1466:                  filled by the requestor.
1467: 
1468:                  While the transaction allows for any or 
1469:                  all of the session parameters to be specified,
1470:                  typically, session parameters are filled in
1471:                  the private alone or in the public realm 
1472:                  alone.
1473:                 "
1474:    ::= { midcomTransNatSessionEntry 6 }
1475: 
1476: midcomTransNatSessionOutParms    OBJECT-TYPE
1477:    SYNTAX       MidcomTransInOutFlags
1478:    MAX-ACCESS   read-write
1479:    STATUS       current
1480:    DESCRIPTION  "Lists the fields within the row that are
1481:                  filled by the middlebox in response to the
1482:                  session request from agent.
1483: 
1484:                  While the transaction allows for any or 
1485:                  all session parameters to be filled,
1486:                  typically, session parameters are filled in
1487:                  the private alone or in the public realm 
1488:                  alone.
1489:                 "
1490:    ::= { midcomTransNatSessionEntry 7 }
1491:          
1492: midcomTransNatSessionGroupId OBJECT-TYPE
1493:    SYNTAX       Unsigned32
1494:    MAX-ACCESS   read-create
1495:    STATUS       current
1496:    DESCRIPTION  "Group Identifier assigend to this 
1497:                  resource.
1498:                  A value of 0 implies that the session is not
1499:                  assigned a group membership.
1500:                 "
1501:    ::= { midcomTransNatSessionEntry 8 }
1502: 
1503: midcomTransNatSessionLifetime OBJECT-TYPE
1504:    SYNTAX       TimeInterval
1505:    MAX-ACCESS   read-create
1506:    STATUS       current
1507:    DESCRIPTION  "Individual Lifetime of the bind resource.
1508:                  When this is set to 0 and GroupId is
1509:                  set to non-zero, the Lifetime of the 
1510:                  GroupId is used to determine the 
1511:                  lifetime of this resource.
1512:                 "
1513:    ::= { midcomTransNatSessionEntry 9 }
1514:    
1515: midcomTransBindMaxIdletime OBJECT-TYPE
1516:    SYNTAX       TimeInterval
1517:    MAX-ACCESS   read-create
1518:    STATUS       current
1519:    DESCRIPTION  "MaxIdletime of the Bind resource.
1520:                  When this is set to 0 and GroupId is
1521:                  set to non-zero, the MaxIdletime of the 
1522:                  GroupId is used to determine the 
1523:                  Maxidletime of this resource.
1524:                 "
1525:    ::= { midcomTransNatSessionEntry 10 }
1526: 
1527: midcomTransBindPrivateAddrType   OBJECT-TYPE
1528:    SYNTAX       InetAddressType
1529:    MAX-ACCESS   read-create
1530:    STATUS       current
1531:    DESCRIPTION  "IP address type in the private realm.
1532:                 "
1533:    ::= { midcomTransNatSessionEntry 11 }
1534: 
1535: midcomTransNatSessionPrivateSrcAddr   OBJECT-TYPE
1536:    SYNTAX       InetAddress
1537:    MAX-ACCESS   read-create
1538:    STATUS       current
1539:    DESCRIPTION  "IP source address in the private realm.
1540:                  This is relevant if the agent refers a
1541:                  private realm session.
1542:                 "
1543:    ::= { midcomTransBindEntry 12 }
1544: 
1545: midcomTransNatSessionPrivateSrcPort   OBJECT-TYPE
1546:    SYNTAX       InetPortNumber
1547:    MAX-ACCESS   read-create
1548:    STATUS       current
1549:    DESCRIPTION  "IP source port in the private realm.
1550:                  This is relevant if the agent refers a
1551:                  private realm based session.
1552:                 "
1553:    ::= { midcomTransNatSessionEntry 13 }
1554: 
1555: midcomTransNatSessionPrivateDstAddr   OBJECT-TYPE
1556:    SYNTAX       InetAddress
1557:    MAX-ACCESS   read-create
1558:    STATUS       current
1559:    DESCRIPTION  "IP destination address in the private realm.
1560:                  This is relevant if the agent refers a
1561:                  private realm based session.
1562:                 "
1563:    ::= { midcomTransNatSessionEntry 14 }
1564: 
1565: midcomTransNatSessionPrivateDstPort   OBJECT-TYPE
1566:    SYNTAX       InetPortNumber
1567:    MAX-ACCESS   read-create
1568:    STATUS       current
1569:    DESCRIPTION  "IP destination port in the private realm.
1570:                  This is relevant if the agent refers a
1571:                  private realm based session.
1572:                 "
1573:    ::= { midcomTransNatSessionEntry 15 }
1574: 
1575: midcomTransNatSessionGlobalAddrType   OBJECT-TYPE
1576:    SYNTAX       InetAddressType
1577:    MAX-ACCESS   read-create
1578:    STATUS       current
1579:    DESCRIPTION  "IP address type in the global address realm.
1580:                 "
1581:    ::= { midcomTransNatSessionEntry 16 }
1582: 
1583: midcomTransBindGlobalSrcAddr   OBJECT-TYPE
1584:    SYNTAX       InetAddress
1585:    MAX-ACCESS   read-create
1586:    STATUS       current
1587:    DESCRIPTION  "IP source address in the global realm.
1588:                  This is relevant if the agent refers a
1589:                  global realm based session.
1590:                 "
1591:    ::= { midcomTransNatSessionEntry 17 }
1592: 
1593: midcomTransNatSessionGlobalSrcPort   OBJECT-TYPE
1594:    SYNTAX       InetPortNumber
1595:    MAX-ACCESS   read-create
1596:    STATUS       current
1597:    DESCRIPTION  "IP source port in the global realm.
1598:                  This is relevant if the agent refers a
1599:                  global realm based session.
1600:                 "
1601:    ::= { midcomTransNatSessionEntry 18 }
1602: 
1603: midcomTransNatSessionGlobalDstAddr   OBJECT-TYPE
1604:    SYNTAX       InetAddress
1605:    MAX-ACCESS   read-create
1606:    STATUS       current
1607:    DESCRIPTION  "IP destination address in the global realm.
1608:                  This is relevant if the agent refers a
1609:                  global realm based session.
1610:                 "
1611:    ::= { midcomTransNatSessionEntry 19 }
1612: 
1613: midcomTransNatSessionGlobalDstPort   OBJECT-TYPE
1614:    SYNTAX       InetPortNumber
1615:    MAX-ACCESS   read-create
1616:    STATUS       current
1617:    DESCRIPTION  "IP destination port in the private realm.
1618:                  This is relevant if the agent refers a
1619:                  global realm based session.
1620:                 "
1621:    ::= { midcomTransNatSessionEntry 20 }
1622: 
1623: midcomTransNatSessionPrivateSrcBindId   OBJECT-TYPE
1624:    SYNTAX       MidcomBindIdOrZero
1625:    MAX-ACCESS   read-create
1626:    STATUS       current
1627:    DESCRIPTION  "This is the first Bind that may be supplied
1628:                 by the agent. This BindId is the unique bindId 
1629:                 for the midcom agent and is independent of what
1630:                 the NAt middlebox might have.
1631: 
1632:                 This may be set to 0 in the case requestor does 
1633:                 not have a BIND pre-assigned.
1634:                 "
1635:    ::= { midcomTransNatSessionEntry 21 }
1636: 
1637: midcomTransNatSessionPrivateDstBindId   OBJECT-TYPE
1638:    SYNTAX       MidcomBindIdOrZero
1639:    MAX-ACCESS   read-create
1640:    STATUS       current
1641:    DESCRIPTION  "This is the second Bind that may be supplied
1642:                 by the agent. This BindId is the unique bindId 
1643:                 for the midcom agent and is independent of what
1644:                 the NAT middlebox might have.
1645: 
1646:                 This may be set to 0 in the case requestor does 
1647:                 not have a BIND pre-assigned.
1648:                 "
1649:    ::= { midcomTransNatSessionEntry 22 }
1650: 
1651: midcomTransNatSessionStatus   OBJECT-TYPE
1652:    SYNTAX       MidcomInvocationStatus
1653:    MAX-ACCESS   read-write
1654:    STATUS       current
1655:    DESCRIPTION  "Invocation status."
1656:    ::= { midcomTransNatSessionEntry 23 }
1657: 
1658: -- NOTE: this END was not present in draft-srisuresh-micom-mib-00.txt,
1659: -- but this does appear to be the end of the MIB.
1660: -- (the next line is '5. Security Considerations ')
1661:       
1662: END
1663: 
1664: --     
1665: --    Copyright (C) The Internet Society (2003).  All Rights Reserved. 
1666: --        
1667: --    This document and translations of it may be copied and furnished to 
1668: --    others, and derivative works that comment on or otherwise explain it 
1669: --    or assist in its implementation may be prepared, copied, published 
1670: --    and distributed, in whole or in part, without restriction of any 
1671: --    kind, provided that the above copyright notice and this paragraph 
1672: --    are included on all such copies and derivative works.  However, this 
1673: --    document itself may not be modified in any way, such as by removing 
1674: --    the copyright notice or references to the Internet Society or other 
1675: --    Internet organizations, except as needed for the purpose of 
1676: --    developing Internet standards in which case the procedures for 
1677: --    copyrights defined in the Internet Standards process must be 
1678: --    followed, or as required to translate it into languages other than 
1679: --    English.  The limited permissions granted above are perpetual and 
1680: --    will not be revoked by the Internet Society or its successors or 
1681: --    assigns.  This document and the information contained 
1682: --    herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND 
1683: --    THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, 
1684: --    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT 
1685: --    THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR 
1686: --    ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A 
1687: --    PARTICULAR PURPOSE. 
1688: