-- MIB file created 14-Oct-2013 15:41:58, by
--   SMICng version 2.2.11-beta(PRO)(Solaris), January 20, 2001. Enterprise key cisco.com

CISCO-VTP-MIB DEFINITIONS ::= BEGIN

-- From file: "CISCO-VTP-MIB.my"
-- Compile options "4 7 F H N W 03 06 0B 0G 0N 0T"

IMPORTS
    RowStatus, DisplayString, DateAndTime, TruthValue, TestAndIncr, 
    TimeStamp
            FROM SNMPv2-TC-v1
    InterfaceIndex, ifIndex, InterfaceIndexOrZero
            FROM IF-MIB
    InetAddress, InetAddressType
            FROM INET-ADDRESS-MIB
    OwnerString
            FROM RMON-MIB
    SnmpAdminString
            FROM SNMP-FRAMEWORK-MIB
    Cisco2KVlanList
            FROM CISCO-TC
    ciscoMgmt
            FROM CISCO-SMI
    Counter, Gauge, IpAddress
            FROM RFC1155-SMI
    OBJECT-TYPE
            FROM RFC-1212
    TRAP-TYPE
            FROM RFC-1215;

ciscoVtpMIB OBJECT IDENTIFIER ::= { ciscoMgmt 46 }
-- MODULE-IDENTITY
--  LastUpdated
--    201310140000Z
--  OrgName
--    Cisco Systems, Inc.
--  ContactInfo
--    Cisco Systems
--    Customer Service
--    
--    Postal: 170 W Tasman Drive
--    San Jose, CA  95134
--    USA
--    
--    Tel: +1 800 553-NETS
--    
--    E-mail: cs-wbu@cisco.com, 
--            cs-lan-switch-snmp@cisco.com
--  Descr
--    The MIB module for entities implementing the VTP
--    protocol and Vlan management.
--  RevDate
--    201310140000Z
--  RevDescr
--    Added following OBJECT-GROUP
--    - vtpSourceInterfaceGroup
--    - vtpConfigFileGroup
--    - vtpVlanLocalShutdownGroup
--    - vtpLocalUpdaterGroup
--    - vtpDeviceIdGroup
--    Added new compliance
--    - vtpMIBCompliance16.
--  RevDate
--    201005120000Z
--  RevDescr
--    Added vlanTrunkPortActiveVlansGroup.
--    Updated the description of vtpServerDisabled.
--  RevDate
--    200912030000Z
--  RevDescr
--    Added vtpTrunkPruningGroup3 and
--    vtpConfigNotificationsGroup8. Modified the
--    description of vtpNotificationsEnabled and
--    managementDomainPruningState.
--  RevDate
--    200803070000Z
--  RevDescr
--    Added vlanStatsGroup. Deprecated
--    vtpConfigNotificationsGroup5 and replaced
--    it with vtpConfigNotificationsGroup6 and
--    vtpConfigNotificationsGroup7.
--  RevDate
--    200710040000Z
--  RevDescr
--    Correct the descriptions of the object
--    vtpConfigDigestErrors and the tables vtpVlanTable
--    and vtpInternalVlanTable.
--  RevDate
--    200602170000Z
--  RevDescr
--    Removed the OwnerString TEXTUAL-CONVENTION and
--    imported the same from RMON-MIB.
--  RevDate
--    200402110000Z
--  RevDescr
--    Added 'dynamicGvrp(4)' for the TC VlanTypeExt.
--  RevDate
--    200311210000Z
--  RevDescr
--    Add vtpInternalVlanGrp to configure internal
--    VLANs' allocation policy and show the owner 
--    application names.
--  RevDate
--    200308080000Z
--  RevDescr
--    Split vtpConfigNotificationsGroup into two groups:
--    vtpConfigNotificationsGroupRev1 and 
--    vtpConfigNotificationsGroup5. Write a new compliance
--    statement to list vtpConfigNotificationsGroupRev1 in
--    instead of vtpConfigNotificationsGroup in the 
--    MANDATORY-GROUPS.
--  RevDate
--    200307110000Z
--  RevDescr
--    Modify the description of the TC VlanIndex.
--  RevDate
--    200304160000Z
--  RevDescr
--    Add support for VTP version 3 features.
--    == Add enumerators and modify the 'DESCRIPTION' of 6 
--       existing objects: 
--       vtpVersion, managementDomainLocalMode,
--       managementDomainConfigRevNumber, 
--       managementDomainLastUpdater,
--       managementDomainLastChange,  
--       managementDomainVersionInUse.
--    == Add 3 new groups: vtpAuthGroup, 
--       vtpDiscoverGroup, vtpDatabaseGroup.
--  RevDate
--    200204100000Z
--  RevDescr
--    == Add 4 new notifications/traps vtpLocalModeChanged,
--    vtpVersionInUseChanged, vtpVlanCreated and 
--    vtpVlanDeleted. 
--    == Add 2 new objects vtpVlanCreatedNotifEnabled and 
--    vtpVlanDeletedNotifEnabled to control the
--    generation of vtpVlanCreated and vtpVlanDeleted.
--    == Use vtpNotificationsEnabled to control the
--    generation of vtpLocalModeChanged and
--    vtpVersionInUseChanged by grouping them in a
--    new group vtpConfigNotificationsGroup2.  
--    == Deprecate the object vlanTrunkPortsDot1qTag and
--    its related group.
--  RevDate
--    200202280000Z
--  RevDescr
--    Deprecate the object, vlanTrunkPortDot1qTunnel.
--  RevDate
--    200108030000Z
--  RevDescr
--    Add a new off(4) mode to managementDomainLocalMode.
--  RevDate
--    200102260000Z
--  RevDescr
--    Deprecate read-only object vtpVlanEditTypeExt and
--    add a new read-create object vtpVlanEditTypeExt2.
--    Enable Notification groups.
--  RevDate
--    200102120000Z
--  RevDescr
--    Added Remote SPAN (RSPAN) VLAN feature, VLAN
--    management features without supporting VTP protocol
--    and a new object to handle one-VLAN-editing.
--  RevDate
--    200009190000Z
--  RevDescr
--    Added the mapping from VLAN ID to its corresponding
--    ifIndex
--  RevDate
--    200004100000Z
--  RevDescr
--    Added 4k VLAN editing and Dot1qTunnel support
--  RevDate
--    200001060000Z
--  RevDescr
--    Added 4k VLAN support
--  RevDate
--    9902251130Z
--  RevDescr
--    Added import of NOTIFICATION-GROUP
--  RevDate
--    9901051130Z
--  RevDescr
--    Added support for encapsulation type notApplicable
--  RevDate
--    9805191130Z
--  RevDescr
--    Added support for encapsulation type negotiation
--  RevDate
--    9708081138Z
--  RevDescr
--    Added Backup CRF object
--  RevDate
--    9705091130Z
--  RevDescr
--    Added ARE and STE hop counts.
--  RevDate
--    9702241115Z
--  RevDescr
--    Added support for turning on VTP for Trunk cards.
--  RevDate
--    9701271730Z
--  RevDescr
--    Added support for version 2 features.
--  RevDate
--    9609161230Z
--  RevDescr
--    Updated the Token-Ring support.
--  RevDate
--    9607171230Z
--  RevDescr
--    Updated to include objects in support of VTP pruning.
--  RevDate
--    9601181820Z
--  RevDescr
--    Initial version of this MIB module.

vtpMIBObjects   OBJECT IDENTIFIER ::= { ciscoVtpMIB 1 }
vtpStatus       OBJECT IDENTIFIER ::= { vtpMIBObjects 1 }
vlanManagementDomains OBJECT IDENTIFIER ::= { vtpMIBObjects 2 }
vlanInfo        OBJECT IDENTIFIER ::= { vtpMIBObjects 3 }
internalVlanInfo OBJECT IDENTIFIER ::= { vlanInfo 2 }
vlanEdit        OBJECT IDENTIFIER ::= { vtpMIBObjects 4 }
vtpStats        OBJECT IDENTIFIER ::= { vtpMIBObjects 5 }
vlanTrunkPorts  OBJECT IDENTIFIER ::= { vtpMIBObjects 6 }
vtpDiscover     OBJECT IDENTIFIER ::= { vtpMIBObjects 7 }
vtpDatabase     OBJECT IDENTIFIER ::= { vtpMIBObjects 8 }
vtpAuthentication OBJECT IDENTIFIER ::= { vtpMIBObjects 9 }
vlanStatistics  OBJECT IDENTIFIER ::= { vtpMIBObjects 10 }
vtpNotifications OBJECT IDENTIFIER ::= { ciscoVtpMIB 2 }
vtpNotificationsPrefix OBJECT IDENTIFIER ::= { vtpNotifications 0 }
vtpNotificationsObjects OBJECT IDENTIFIER ::= { vtpNotifications 1 }
vtpMIBConformance OBJECT IDENTIFIER ::= { ciscoVtpMIB 3 }
vtpMIBCompliances OBJECT IDENTIFIER ::= { vtpMIBConformance 1 }
vtpMIBGroups    OBJECT IDENTIFIER ::= { vtpMIBConformance 2 }

VlanIndex ::= INTEGER(0..4095)
-- TEXTUAL-CONVENTION
--  Status
--    mandatory
--  Descr
--    The VLAN-id of a VLAN on ISL or 802.1q trunks.
--    
--    Modification of default parameters is allowed.
--    Implementations are allowed to restrict
--    the range of VLANs.
--    
--    For entities support up to 1024 VLANS.
--    VLANs above 1000 are reserved for default VLANs and
--    future use. Modification of default parameters is
--    allowed. Creation or deletion of VLANs above 1000 is not
--    allowed.
--    
--    For a new object which needs the vlan-id of a VLAN as
--    its SYNTAX, it is suggested to import VlanIndex from
--    Q-BRIDGE-MIB instead of importing this TC here in 
--    CISCO-VTP-MIB.

ManagementDomainIndex ::= INTEGER(1..255)
-- TEXTUAL-CONVENTION
--  Status
--    mandatory
--  Descr
--    An arbitrary integer-value to uniquely identify a
--    management domain on the local system.

VlanType ::= INTEGER {
        ethernet(1),
        fddi(2),
        tokenRing(3),
        fddiNet(4),
        trNet(5),
        deprecated(6)
        }
-- TEXTUAL-CONVENTION
--  Status
--    mandatory
--  Descr
--    The type of a VLAN.
--    
--    Note that the 'ethernet' type, is used for any ethernet or
--    802.3 VLAN, including an ATM Ethernet ELAN; and the
--    'tokenRing' ('trCrf') type is used for each VLAN
--    representing a single logical 802.5 ring including an ATM
--    Token-Ring ELAN.
--    
--    The 'trCrf' type is used for token ring VLANs made up of
--    (at most) one transparently bridged LAN segment.
--    
--    The 'trBrf' type is used for VLANs which represent the
--    scope of many 'trCrf' VLANs all connected together via
--    source route bridging.  The token ring 'trBrf' can be said
--    to represent the bridged broadcast domain.

VlanTypeExt ::= OCTET STRING(SIZE(1..2))
        -- BITS are:
        --   vtpmanageable(0)
        --   internal(1)
        --   reserved(2)
        --   rspan(3)
        --   dynamicGvrp(4)
-- TEXTUAL-CONVENTION
--  Status
--    mandatory
--  Descr
--    The additional type information of VLAN.
--    vtpmanageable(0)    An user defined VLAN which is 
--                        manageable through VTP protocol.
--                        The value of this bit cannot be 
--                        changed.
--    internal(1)         An internal VLAN created by the device.
--                        Internal VLANs cannot be created or
--                        deleted. The value of this bit cannot
--                        be changed.
--    reserved(2)         A VLAN reserved by the device.
--                        Reserved VLANs cannot be created or
--                        deleted. The value of this bit cannot
--                        be changed.
--    rspan(3)            A VLAN created to exclusively carry
--                        the traffic for a Remote Switched
--                        Port Analyzer (RSPAN). This bit can
--                        only be set or cleared during the
--                        VLAN creation. Once the VLAN is
--                        created, the value of this bit cannot
--                        be modified.
--    dynamicGvrp(4)      A VLAN dynamically created by GVRP
--                        (GARP VLAN Registration Protocol)
--                        propagation. The value of this bit 
--                        cannot be changed.
--  Refer
--    RFC2674.

vtpVersion OBJECT-TYPE
    SYNTAX INTEGER {
        one(1),
        two(2),
        none(3),
        three(4)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The version of VTP in use on the local system.  A device
        will report its version capability and not any particular
        version in use on the device. If the device does not support
        vtp, the version is none(3)."
    ::= { vtpStatus 1 }

vtpMaxVlanStorage OBJECT-TYPE
    SYNTAX INTEGER(-1..1023)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An estimate of the maximum number of VLANs about which the
        local system can recover complete VTP information after a
        reboot.  If the number of defined VLANs is greater than this
        value, then the system can not act as a VTP Server. For a
        device which has no means to calculate the estimated number,
        this value is -1."
    ::= { vtpStatus 2 }

vtpNotificationsEnabled OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "An indication of whether the notifications/traps defined by
        the vtpConfigNotificationsGroup, vtpConfigNotificationsGroup2,
        and vtpConfigNotificationsGroup8 are enabled."
    ::= { vtpStatus 3 }

vtpVlanCreatedNotifEnabled OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "An indication of whether the notification should
        be generated when a VLAN is created. 
        
        If the value of this object is 'true' then the
        vtpVlanCreated notification will be generated.
        
        If the value of this object is 'false' then the
        vtpVlanCreated notification will not be generated."
    ::= { vtpStatus 4 }

vtpVlanDeletedNotifEnabled OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "An indication of whether the notification should
        be generated when a VLAN is deleted.  
        
        If the value of this object is 'true' then the
        vtpVlanDeleted notification will be generated.
        
        If the value of this object is 'false' then the
        vtpVlanDeleted notification will not be generated."
    ::= { vtpStatus 5 }

managementDomainTable OBJECT-TYPE
    SYNTAX SEQUENCE OF ManagementDomainEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The table containing information on the management domains
        in which the local system is participating.  Devices which
        support only one management domain will support just one row
        in this table, and will not let it be deleted nor let other
        rows be created.  Devices which support multiple management
        domains will allow rows to be created and deleted, but will
        not allow the last row to be deleted. If the device does 
        not support VTP, the table is read-only."
    ::= { vlanManagementDomains 1 }

managementDomainEntry OBJECT-TYPE
    SYNTAX ManagementDomainEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about the status of one management domain."
    INDEX { managementDomainIndex }
    ::= { managementDomainTable 1 }

ManagementDomainEntry ::= SEQUENCE {
    managementDomainIndex ManagementDomainIndex,
    managementDomainName DisplayString,
    managementDomainLocalMode INTEGER,
    managementDomainConfigRevNumber Gauge,
    managementDomainLastUpdater IpAddress,
    managementDomainLastChange DateAndTime,
    managementDomainRowStatus RowStatus,
    managementDomainTftpServer IpAddress,
    managementDomainTftpPathname DisplayString,
    managementDomainPruningState INTEGER,
    managementDomainVersionInUse INTEGER,
    managementDomainPruningStateOper INTEGER,
    managementDomainAdminSrcIf SnmpAdminString,
    managementDomainSourceOnlyMode TruthValue,
    managementDomainOperSrcIf SnmpAdminString,
    managementDomainConfigFile SnmpAdminString,
    managementDomainLocalUpdaterType InetAddressType,
    managementDomainLocalUpdater InetAddress,
    managementDomainDeviceID SnmpAdminString
    }

managementDomainIndex OBJECT-TYPE
    SYNTAX ManagementDomainIndex
--    Rsyntax INTEGER(1..255)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An arbitrary value to uniquely identify the management
        domain on the local system."
    ::= { managementDomainEntry 1 }

managementDomainName OBJECT-TYPE
    SYNTAX DisplayString(SIZE(0..32))
--    Rsyntax OCTET STRING(SIZE(0..32))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The management name of a domain in which the local system
        is participating.  The zero-length name corresponds to the
        'no management-domain' state which is the initial value at
        installation-time if not configured otherwise.  Note that
        the zero-length name does not correspond to an operational
        management domain, and a device does not send VTP
        advertisements while in the 'no management-domain' state.  A
        device leaves the 'no management-domain' state when it
        obtains a management-domain name, either through
        configuration or through inheriting the management-domain
        name from a received VTP advertisement.
        
        When the value of an existing instance of this object is
        modified by network management, the local system should re-
        initialize its VLAN information (for the given management
        domain) as if it had just been configured with a management
        domain name at installation time."
    ::= { managementDomainEntry 2 }

managementDomainLocalMode OBJECT-TYPE
    SYNTAX INTEGER {
        client(1),
        server(2),
        transparent(3),
        off(4)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The local VTP mode in this management domain when
        managementDomainVersionInUse is version1(1) or
        version2(2).
        
        If managementDomainVersionInUse is version3(4), this 
        object has the same value with vtpDatabaseLocalMode 
        of VLAN database type.
        
        - 'client' indicates that the local system is acting
          as a VTP client.
        
        - 'server' indicates that the local system is acting
          as a VTP server.
        
        - 'transparent' indicates that the local system does
          not generate or listen to VTP messages, but forwards
          messages. This mode can also be set by the device
          itself when the amount of VLAN information is too
          large for it to hold in DRAM.
        
        - 'off' indicates that the local system does not
          generate, listen to or forward any VTP messages."
    ::= { managementDomainEntry 3 }

managementDomainConfigRevNumber OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The current Configuration Revision Number as known by
        the local device for this management domain when 
        managementDomainVersionInUse is version1(1) or 
        version2(2).
        
        If managementDomainVersionInUse is version3(4), this 
        object has the same value with vtpDatabaseRevisionNumber 
        of VLAN database type.
        
        This value is updated (if necessary) whenever a VTP
        advertisement is received or generated. When in the
        'no management-domain' state, this value is 0."
    ::= { managementDomainEntry 4 }

managementDomainLastUpdater OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The IP-address (or one of them) of the VTP Server which
        last updated the Configuration Revision Number, as indicated
        in the most recently received VTP advertisement for this
        management domain, when managementDomainVersionInUse is
        version1(1) or version2(2). 
        
        If managementDomainVersionInUse is version3(4), this object
        has the value of 0.0.0.0.
        
        Before an advertisement has been received, this value is
        0.0.0.0."
    ::= { managementDomainEntry 5 }

managementDomainLastChange OBJECT-TYPE
    SYNTAX DateAndTime
--    Rsyntax OCTET STRING(SIZE(8|11))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The time at which the Configuration Revision Number was
        (last) increased to its current value, as indicated in the
        most recently received VTP advertisement for this management
        domain when managementDomainVersionInUse is not version3(4)
        or in the most recently received VTP VLAN database 
        advertisement for this management domain when 
        managementDomainVersionInUse is version3(4).
        
        The value 0x0000010100000000 indicates that the device which
        last increased the Configuration Revision Number had no idea
        of the date/time, or that no advertisement has been
        received."
    ::= { managementDomainEntry 6 }

managementDomainRowStatus OBJECT-TYPE
    SYNTAX RowStatus
--    Rsyntax INTEGER {
--        active(1),
--        notInService(2),
--        notReady(3),
--        createAndGo(4),
--        createAndWait(5),
--        destroy(6)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The status of this conceptual row."
    ::= { managementDomainEntry 7 }

managementDomainTftpServer OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The IP address of a TFTP Server in/from which VTP VLAN
        information for this management domain is to be
        stored/retrieved.  If the information is being locally
        stored in NVRAM, this object should take the value 0.0.0.0."
    ::= { managementDomainEntry 8 }

managementDomainTftpPathname OBJECT-TYPE
    SYNTAX DisplayString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The complete pathname of the file at the TFTP Server
        identified by the value of managementDomainTftpServer
        in/from which VTP VLAN information for this management
        domain is to be stored/retrieved.  If the value of
        corresponding instance of managementDomainTftpServer is
        0.0.0.0, the value of this object is ignored."
    ::= { managementDomainEntry 9 }

managementDomainPruningState OBJECT-TYPE
    SYNTAX INTEGER {
        enabled(1),
        disabled(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "An indication of whether VTP pruning is enabled or disabled
        in this managament domain. 
        
        This object can only be modified, either when the 
        corresponding instance value of managementDomainVersionInUse 
        is 'version1' or 'version2' and the corresponding instance 
        value of managementDomainLocalMode is 'server', or when the 
        corresponding instance value of managementDomainVersionInUse 
        is 'version3' and the corresponding instance value of 
        managementDomainLocalMode is 'server' or 'client'."
    ::= { managementDomainEntry 10 }

managementDomainVersionInUse OBJECT-TYPE
    SYNTAX INTEGER {
        version1(1),
        version2(2),
        none(3),
        version3(4)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The current version of the VTP that is in use by the
        designated management domain. 
        
        This object can be set to none(3) only when 
        vtpVersion is none(3)."
    ::= { managementDomainEntry 11 }

managementDomainPruningStateOper OBJECT-TYPE
    SYNTAX INTEGER {
        enabled(1),
        disabled(2)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates whether VTP pruning is operationally enabled or
        disabled in this managament domain."
    ::= { managementDomainEntry 12 }

managementDomainAdminSrcIf OBJECT-TYPE
    SYNTAX SnmpAdminString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The object specifies the interface to be used as the
        preferred source interface for the VTP IP updater address.
        
        A zero length value indicates that a source interface is not
        specified."
    ::= { managementDomainEntry 13 }

managementDomainSourceOnlyMode OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The object specifies whether to use only the IP address of
        managementDomainAdminSrcIf as the VTP IP updater address. 
        
        'true' indicates to only use the IP address of 
               managementDomainAdminSrcIf as the VTP IP 
               updater address. 
        
        'false' indicates to use the IP address of 
                managementDomainAdminSrcIf as the VTP IP 
                updater address if managementDomainAdminSrcIf 
                is configured with an IP address.  Otherwise, the 
                first available IP address of the system will
                be used."
    DEFVAL { false }
    ::= { managementDomainEntry 14 }

managementDomainOperSrcIf OBJECT-TYPE
    SYNTAX SnmpAdminString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The object indicates the interface used as the
        preferred source interface for the VTP IP updater address.
        
        A zero length string indicates that a source interface is not
        available."
    ::= { managementDomainEntry 15 }

managementDomainConfigFile OBJECT-TYPE
    SYNTAX SnmpAdminString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The object specifies the file name where VTP configuration
        is stored in the format of <filename> or <devices>:[<filename>].
        
        <device> can be (but not limited to): flash, bootflash,
        slot0, slot1, disk0."
    ::= { managementDomainEntry 16 }

managementDomainLocalUpdaterType OBJECT-TYPE
    SYNTAX InetAddressType
--    Rsyntax INTEGER {
--        ?? enum value of zero may cause problems
--        unknown(0),
--        ipv4(1),
--        ipv6(2),
--        ipv4z(3),
--        ipv6z(4),
--        dns(16)
--        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The object indicates the type of the Internet address
        of the preferred source interface for the VTP IP updater.
        
        The value of this object is 'unknown' if
        managementDomainVersionInUse is 'version3' or
        managementDomainLocalMode is not 'server'."
    ::= { managementDomainEntry 17 }

managementDomainLocalUpdater OBJECT-TYPE
    SYNTAX InetAddress
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The object indicates the Internet address of the
        preferred source interface for the VTP IP updater."
    ::= { managementDomainEntry 18 }

managementDomainDeviceID OBJECT-TYPE
    SYNTAX SnmpAdminString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The object indicates a value that uniquely identifies
        this device within a VTP Domain.
        
        The value of this object is zero length string if
        managementDomainVersionInUse is not 'version3'."
    ::= { managementDomainEntry 19 }

vtpVlanTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpVlanEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table contains information on the VLANs which
        currently exist."
    ::= { vlanInfo 1 }

vtpVlanEntry OBJECT-TYPE
    SYNTAX VtpVlanEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about one current VLAN.  The
        managementDomainIndex value in the INDEX clause indicates
        which management domain the VLAN is in."
    INDEX { managementDomainIndex, vtpVlanIndex }
    ::= { vtpVlanTable 1 }

VtpVlanEntry ::= SEQUENCE {
    vtpVlanIndex VlanIndex,
    vtpVlanState INTEGER,
    vtpVlanType VlanType,
    vtpVlanName DisplayString,
    vtpVlanMtu INTEGER,
    vtpVlanDot10Said OCTET STRING,
    vtpVlanRingNumber INTEGER,
    vtpVlanBridgeNumber INTEGER,
    vtpVlanStpType INTEGER,
    vtpVlanParentVlan VlanIndex,
    vtpVlanTranslationalVlan1 VlanIndex,
    vtpVlanTranslationalVlan2 VlanIndex,
    vtpVlanBridgeType INTEGER,
    vtpVlanAreHopCount INTEGER,
    vtpVlanSteHopCount INTEGER,
    vtpVlanIsCRFBackup TruthValue,
    vtpVlanTypeExt VlanTypeExt,
    vtpVlanIfIndex InterfaceIndexOrZero
    }

vtpVlanIndex OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The VLAN-id of this VLAN on ISL or 802.1q trunks."
    ::= { vtpVlanEntry 1 }

vtpVlanState OBJECT-TYPE
    SYNTAX INTEGER {
        operational(1),
        suspended(2),
        mtuTooBigForDevice(3),
        mtuTooBigForTrunk(4)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The state of this VLAN.
        
        The state 'mtuTooBigForDevice' indicates that this device
        cannot participate in this VLAN because the VLAN's MTU is
        larger than the device can support.
        
        The state 'mtuTooBigForTrunk' indicates that while this
        VLAN's MTU is supported by this device, it is too large for
        one or more of the device's trunk ports."
    ::= { vtpVlanEntry 2 }

vtpVlanType OBJECT-TYPE
    SYNTAX VlanType
--    Rsyntax INTEGER {
--        ethernet(1),
--        fddi(2),
--        tokenRing(3),
--        fddiNet(4),
--        trNet(5),
--        deprecated(6)
--        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The type of this VLAN."
    ::= { vtpVlanEntry 3 }

vtpVlanName OBJECT-TYPE
    SYNTAX DisplayString(SIZE(1..32))
--    Rsyntax OCTET STRING(SIZE(1..32))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The name of this VLAN.  This name is used as the ELAN-name
        for an ATM LAN-Emulation segment of this VLAN."
    ::= { vtpVlanEntry 4 }

vtpVlanMtu OBJECT-TYPE
    SYNTAX INTEGER(1500..18190)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The MTU size on this VLAN, defined as the size of largest
        MAC-layer (information field portion of the) data frame
        which can be transmitted on the VLAN."
    ::= { vtpVlanEntry 5 }

vtpVlanDot10Said OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(4))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The value of the 802.10 SAID field for this VLAN."
    ::= { vtpVlanEntry 6 }

vtpVlanRingNumber OBJECT-TYPE
    SYNTAX INTEGER(0..4095)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The ring number of this VLAN.  This object is only
        instantiated when the value of the corresponding instance of
        vtpVlanType has a value of 'fddi' or 'tokenRing' and Source
        Routing is in use on this VLAN."
    ::= { vtpVlanEntry 7 }

vtpVlanBridgeNumber OBJECT-TYPE
    SYNTAX INTEGER(0..15)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The bridge number of the VTP-capable switches for this
        VLAN.  This object is only instantiated for VLANs that are
        involved with emulating token ring segments."
    ::= { vtpVlanEntry 8 }

vtpVlanStpType OBJECT-TYPE
    SYNTAX INTEGER {
        ieee(1),
        ibm(2),
        hybrid(3)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The type of the Spanning Tree Protocol (STP) running on
        this VLAN.  This object is only instanciated when the
        value of the corresponding instance of vtpVlanType has a
        value of 'fddiNet' or 'trNet'.
        
        The value returned by this object depends upon the value
        of the corresponding instance of vtpVlanEditStpType.
        
        - 'ieee' indicates IEEE STP is running exclusively.
        
        - 'ibm' indicates IBM STP is running exclusively.
        
        - 'hybrid' indicates a STP that allows a combination of
          IEEE and IBM is running.
        
        The 'hybrid' STP type results from tokenRing/fddi VLANs
        that are children of this trNet/fddiNet parent VLAN being
        configured in a combination of SRT and SRB
        vtpVlanBridgeTypes while the instance of
        vtpVlanEditStpType that corresponds to this object is set
        to 'auto'."
    ::= { vtpVlanEntry 9 }

vtpVlanParentVlan OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The parent VLAN for this VLAN.  This object is only
        instantiated when the value of the corresponding instance of
        vtpVlanType has a value of 'fddi' or 'tokenRing' and Source
        Routing is in use on this VLAN.  The parent VLAN must have 
        a vtpVlanType value of fddiNet(4) or trNet(5), 
        respectively."
    ::= { vtpVlanEntry 10 }

vtpVlanTranslationalVlan1 OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A VLAN to which this VLAN is being translational-bridged.
        If this value and the corresponding instance of
        vtpVlanTranslationalVlan2 are both zero, then this VLAN is
        not being translational-bridged."
    ::= { vtpVlanEntry 11 }

vtpVlanTranslationalVlan2 OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Another VLAN, i.e., other than that indicated by
        vtpVlanTranslationalVlan1, to which this VLAN is being
        translational-bridged.  If this value and the corresponding
        instance of vtpVlanTranslationalVlan1 are both zero, then
        this VLAN is not being translational-bridged."
    ::= { vtpVlanEntry 12 }

vtpVlanBridgeType OBJECT-TYPE
    SYNTAX INTEGER {
        srt(1),
        srb(2)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The type of the Source Route bridging mode in use on this
        VLAN.  This object is only instantiated when the value of 
        the corresponding instance of vtpVlanType has a value of 
        fddi(2) or tokenRing(3) and Source Routing is in use on
        this VLAN."
    ::= { vtpVlanEntry 13 }

vtpVlanAreHopCount OBJECT-TYPE
    SYNTAX INTEGER(1..13)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The maximum number of bridge hops allowed in
        All Routes Explorer frames on this VLAN.  This
        object is only instantiated when the value of the
        corresponding instance of vtpVlanType has a value of fddi(2)
        or tokenRing(3) and Source Routing is in use on this VLAN."
    ::= { vtpVlanEntry 14 }

vtpVlanSteHopCount OBJECT-TYPE
    SYNTAX INTEGER(1..13)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The maximum number of bridge hops allowed in
        Spanning Tree Explorer frames on this VLAN.  This
        object is only instantiated when the value of the
        corresponding instance of vtpVlanType has a value of fddi(2)
        or tokenRing(3) and Source Routing is in use on this VLAN."
    ::= { vtpVlanEntry 15 }

vtpVlanIsCRFBackup OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "True if this VLAN is of type trCrf and also is acting as
        a backup trCrf for the ISL distributed BRF"
    ::= { vtpVlanEntry 16 }

vtpVlanTypeExt OBJECT-TYPE
    SYNTAX VlanTypeExt
--    Rsyntax OCTET STRING(SIZE(1..2))
--         BITS are:
--           vtpmanageable(0)
--           internal(1)
--           reserved(2)
--           rspan(3)
--           dynamicGvrp(4)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The additional type information of this VLAN."
    ::= { vtpVlanEntry 17 }

vtpVlanIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndexOrZero
--    Rsyntax INTEGER(0..2147483647)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The value of the ifIndex corresponding to this VLAN ID.
        If the VLAN ID does not have its corresponding interface, 
        this object has the value of zero."
    ::= { vtpVlanEntry 18 }

vtpInternalVlanAllocPolicy OBJECT-TYPE
    SYNTAX INTEGER {
        ascending(1),
        descending(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The internal VLAN allocation policy.
        
        'ascending'  - internal VLANs are allocated
                       starting from a lowwer VLAN ID and 
                       upwards.
        'descending' - internal VLANs are allocated
                       starting from a higher VLAN ID and
                       downwards."
    ::= { internalVlanInfo 1 }

vtpInternalVlanTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpInternalVlanEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A vtpInternalVlanTable entry contains
        information on an existing internal
        VLAN. It is internally created by the
        device for a specific application program 
        and hence owned by the application.  
        It cannot be modified or deleted by (local 
        or network) management."
    ::= { internalVlanInfo 2 }

vtpInternalVlanEntry OBJECT-TYPE
    SYNTAX VtpInternalVlanEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about one current internal
        VLAN."
    INDEX { managementDomainIndex, vtpVlanIndex }
    ::= { vtpInternalVlanTable 1 }

VtpInternalVlanEntry ::= SEQUENCE {
    vtpInternalVlanOwner SnmpAdminString
    }

vtpInternalVlanOwner OBJECT-TYPE
    SYNTAX SnmpAdminString
--    Rsyntax OCTET STRING(SIZE(0..255))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The program name of the internal VLAN's
        owner application. This internal VLAN
        is allocated by the device specifically
        for this application and no one else
        could create, modify or delete this 
        VLAN."
    ::= { vtpInternalVlanEntry 1 }

vtpEditControlTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpEditControlEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table provides the means to control the editing of the
        VLANs for a particular management domain.  Each and every
        entry in this table augments its corresponding entry in the
        managementDomainTable; thus, an entry in this table is
        created/deleted only as a by-product of creating/deleting an
        entry in the managementDomainTable."
    ::= { vlanEdit 1 }

vtpEditControlEntry OBJECT-TYPE
    SYNTAX VtpEditControlEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Control information for editing the VLANs in one management
        domain."
    INDEX { managementDomainIndex }
-- Augments managementDomainEntry
    ::= { vtpEditControlTable 1 }

VtpEditControlEntry ::= SEQUENCE {
    vtpVlanEditOperation INTEGER,
    vtpVlanApplyStatus INTEGER,
    vtpVlanEditBufferOwner OwnerString,
    vtpVlanEditConfigRevNumber Gauge,
    vtpVlanEditModifiedVlan VlanIndex
    }

vtpVlanEditOperation OBJECT-TYPE
    SYNTAX INTEGER {
        none(1),
        copy(2),
        apply(3),
        release(4),
        restartTimer(5)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "This object always has the value 'none' when read.  When
        written, each value causes the appropriate action:
        
         'copy' - causes the creation of rows in the
        vtpVlanEditTable exactly corresponding to the current global
        VLAN information for this management domain.  If the Edit
        Buffer (for this management domain) is not currently empty,
        a copy operation fails.  A successful copy operation starts
        the deadman-timer.
        
         'apply' - first performs a consistent check on the the
        modified information contained in the Edit Buffer, and if
        consistent, then tries to instanciate the modified
        information as the new global VLAN information.  Note that
        an empty Edit Buffer (for the management domain) would
        always result in an inconsistency since the default VLANs
        are required to be present.
        
         'release' - flushes the Edit Buffer (for this management
        domain), clears the Owner information, and aborts the
        deadman-timer.  A release is generated automatically if the
        deadman-timer ever expires.
        
         'restartTimer' - restarts the deadman-timer.
        
         'none' - no operation is performed."
    ::= { vtpEditControlEntry 1 }

vtpVlanApplyStatus OBJECT-TYPE
    SYNTAX INTEGER {
        inProgress(1),
        succeeded(2),
        configNumberError(3),
        inconsistentEdit(4),
        tooBig(5),
        localNVStoreFail(6),
        remoteNVStoreFail(7),
        editBufferEmpty(8),
        someOtherError(9),
        notPrimaryServer(10)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The current status of an 'apply' operation to instanciate
        the Edit Buffer as the new global VLAN information (for this
        management domain).  If no apply is currently active, the
        status represented is that of the most recently completed
        apply.  The possible values are:
        
           inProgress - 'apply' operation in progress;
        
           succeeded - the 'apply' was successful (this value is
                  also used when no apply has been invoked since the
                  last time the local system restarted);
        
           configNumberError - the apply failed because the value of
                  vtpVlanEditConfigRevNumber was less or equal to
                  the value of current value of 
                  managementDomainConfigRevNumber;
        
           inconsistentEdit - the apply failed because the modified
                  information was not self-consistent;
        
           tooBig - the apply failed because the modified
                  information was too large to fit in this VTP
                  Server's non-volatile storage location;
        
           localNVStoreFail - the apply failed in trying to store
                  the new information in a local non-volatile
                  storage location;
        
           remoteNVStoreFail - the apply failed in trying to store
                  the new information in a remote non-volatile
                  storage location;
        
           editBufferEmpty - the apply failed because the Edit
                  Buffer was empty (for this management domain).
        
           someOtherError - the apply failed for some other reason
                  (e.g., insufficient memory).
        
           notPrimaryServer - the apply failed because the local 
                  device is not a VTP primary server for VLAN 
                  database type when managementDomainVersionInUse
                  is version3(4)."
    ::= { vtpEditControlEntry 2 }

vtpVlanEditBufferOwner OBJECT-TYPE
    SYNTAX OwnerString
--    Rsyntax OCTET STRING(SIZE(0..127))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The management station which is currently using the Edit
        Buffer for this management domain.  When the Edit Buffer for
        a management domain is not currently in use, the value of
        this object is the zero-length string.  Note that it is also
        the zero-length string if a manager fails to set this object
        when invoking a copy operation."
    ::= { vtpEditControlEntry 3 }

vtpVlanEditConfigRevNumber OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The Configuration Revision Number to be used for the next
        apply operation.  This value is initialized (by the agent)
        on a copy operation to be one greater than the value of
        managementDomainConfigRevNumber. On an apply, if the 
        number is less or equal to the value of 
        managementDomainConfigRevNumber, then the apply fails.
        The value can be modified (increased) by network management
        before an apply to ensure that an apply does not fail for 
        this reason.
        
        This object is used to allow management control over whether
        a configuration revision received via a VTP advertisement
        after a copy operation but before the succeeding apply
        operation is lost by being overwritten by the (local) edit
        operation.  By default, the apply operation will fail in
        this situation.  By increasing this object's value after the
        copy but before the apply, management can control whether
        the apply is to succeed (with the update via VTP
        advertisement being lost)."
    ::= { vtpEditControlEntry 4 }

vtpVlanEditModifiedVlan OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The VLAN-id of the modified VLAN in the Edit Buffer.
        If the object has the value of zero, any VLAN can 
        be edited. If the value of the object is not zero,
        only this VLAN can be edited.
        
        The object's value is reset to zero after a successful
        'apply' operation or a 'release' operation. 
        
        This object is only supported for devices which allow 
        only one VLAN editing for each 'apply' operation. For
        devices which allow multiple VLAN editing for each
        'apply' operation, this object is not supported."
    ::= { vtpEditControlEntry 5 }

vtpVlanEditTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpVlanEditEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The table which contains the information in the Edit
        Buffers, one Edit Buffer per management domain.  The
        information for a particular management domain is
        initialized, by a 'copy' operation, to be the current global
        VLAN information for that management domain.  After
        initialization, editing can be performed to add VLANs,
        delete VLANs, or modify their global parameters.  The
        information as modified through editing is local to this
        Edit Buffer.  An apply operation using the
        vtpVlanEditOperation object is necessary to instanciate the
        modified information as the new global VLAN information for
        that management domain.
        
        To use the Edit Buffer, a manager acts as follows:
        
        1. ensures the Edit Buffer for a management domain is empty,
        i.e., there are no rows in this table for this management
        domain.
        
        2. issues a SNMP set operation which sets
        vtpVlanEditOperation to 'copy', and vtpVlanEditBufferOwner
        to its own identifier (e.g., its own IP address).
        
        3. if this set operation is successful, proceeds to edit the
        information in the vtpVlanEditTable.
        
        4. if and when the edited information is to be instantiated,
        issues a SNMP set operation which sets vtpVlanEditOperation
        to 'apply'.
        
        5. issues retrieval requests to obtain the value of
        vtpVlanApplyStatus, until the result of the apply is
        determined.
        
        6. releases the Edit Buffer by issuing a SNMP set operation
        which sets vtpVlanEditOperation to 'release'.
        
        Note that the information contained in this table is not
        saved across agent reboots."
    ::= { vlanEdit 2 }

vtpVlanEditEntry OBJECT-TYPE
    SYNTAX VtpVlanEditEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about one VLAN in the Edit Buffer for a
        particular management domain."
    INDEX { managementDomainIndex, vtpVlanEditIndex }
    ::= { vtpVlanEditTable 1 }

VtpVlanEditEntry ::= SEQUENCE {
    vtpVlanEditIndex VlanIndex,
    vtpVlanEditState INTEGER,
    vtpVlanEditType VlanType,
    vtpVlanEditName DisplayString,
    vtpVlanEditMtu INTEGER,
    vtpVlanEditDot10Said OCTET STRING,
    vtpVlanEditRingNumber INTEGER,
    vtpVlanEditBridgeNumber INTEGER,
    vtpVlanEditStpType INTEGER,
    vtpVlanEditParentVlan VlanIndex,
    vtpVlanEditRowStatus RowStatus,
    vtpVlanEditTranslationalVlan1 VlanIndex,
    vtpVlanEditTranslationalVlan2 VlanIndex,
    vtpVlanEditBridgeType INTEGER,
    vtpVlanEditAreHopCount INTEGER,
    vtpVlanEditSteHopCount INTEGER,
    vtpVlanEditIsCRFBackup TruthValue,
    vtpVlanEditTypeExt VlanTypeExt,
    vtpVlanEditTypeExt2 VlanTypeExt
    }

vtpVlanEditIndex OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The VLAN-id which this VLAN would have on ISL or
        802.1q trunks."
    ::= { vtpVlanEditEntry 1 }

vtpVlanEditState OBJECT-TYPE
    SYNTAX INTEGER {
        operational(1),
        suspended(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The state which this VLAN would have."
    DEFVAL { operational }
    ::= { vtpVlanEditEntry 2 }

vtpVlanEditType OBJECT-TYPE
    SYNTAX VlanType
--    Rsyntax INTEGER {
--        ethernet(1),
--        fddi(2),
--        tokenRing(3),
--        fddiNet(4),
--        trNet(5),
--        deprecated(6)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The type which this VLAN would have.
        An implementation may restrict access to this object."
    DEFVAL { ethernet }
    ::= { vtpVlanEditEntry 3 }

vtpVlanEditName OBJECT-TYPE
    SYNTAX DisplayString(SIZE(1..32))
--    Rsyntax OCTET STRING(SIZE(1..32))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The name which this VLAN would have.  This name would be
        used as the ELAN-name for an ATM LAN-Emulation segment of
        this VLAN.
        
        An implementation may restrict access to this object."
    ::= { vtpVlanEditEntry 4 }

vtpVlanEditMtu OBJECT-TYPE
    SYNTAX INTEGER(1500..18190)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The MTU size which this VLAN would have, defined as the
        size of largest MAC-layer (information field portion of the)
        data frame which can be transmitted on the VLAN.
        
        An implementation may restrict access to this object."
    DEFVAL { 1500 }
    ::= { vtpVlanEditEntry 5 }

vtpVlanEditDot10Said OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(4))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The value of the 802.10 SAID field which would be used for
        this VLAN.
        
        An implementation may restrict access to this object."
    ::= { vtpVlanEditEntry 6 }

vtpVlanEditRingNumber OBJECT-TYPE
    SYNTAX INTEGER(0..4095)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The ring number which would be used for this VLAN.  This
        object is only instantiated when the value of the
        corresponding instance of vtpVlanEditType has a value of
        'fddi' or 'tokenRing' and Source Routing is in use on 
        this VLAN."
    ::= { vtpVlanEditEntry 7 }

vtpVlanEditBridgeNumber OBJECT-TYPE
    SYNTAX INTEGER(0..15)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The bridge number of the VTP-capable switches which would
        be used for this VLAN.  This object is only instantiated
        when the value of the corresponding instance of
        vtpVlanEditType has a value of fddiNet(4) or trNet(5)."
    ::= { vtpVlanEditEntry 8 }

vtpVlanEditStpType OBJECT-TYPE
    SYNTAX INTEGER {
        ieee(1),
        ibm(2),
        auto(3)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The type of the Spanning Tree Protocol which would be
        running on this VLAN.  This object is only instantiated
        when the value of the corresponding instance of
        vtpVlanEditType has a value of fddiNet(4) or trNet(5).
        
        If 'ieee' is selected, the STP that runs will be IEEE.
        
        If 'ibm' is selected, the STP that runs will be IBM.
        
        If 'auto' is selected, the STP that runs will be
        dependant on the values of vtpVlanEditBridgeType for all
        children tokenRing/fddi type VLANs.  This will result in
        a 'hybrid' STP (see vtpVlanStpType)."
    ::= { vtpVlanEditEntry 9 }

vtpVlanEditParentVlan OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The VLAN index of the VLAN which would be the parent for
        this VLAN.  This object is only instantiated when the value
        of the corresponding instance of vtpVlanEditType has a value
        of 'fddi' or 'tokenRing' and Source Routing is in use on
        this VLAN.  The parent VLAN must have a vtpVlanEditType 
        value of fddiNet(4) or trNet(5), respectively."
    ::= { vtpVlanEditEntry 10 }

vtpVlanEditRowStatus OBJECT-TYPE
    SYNTAX RowStatus
--    Rsyntax INTEGER {
--        active(1),
--        notInService(2),
--        notReady(3),
--        createAndGo(4),
--        createAndWait(5),
--        destroy(6)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The status of this row.  Any and all columnar objects in an
        existing row can be modified irrespective of the status of
        the row.
        
        A row is not qualified for activation until instances of at
        least its vtpVlanEditType, vtpVlanEditName and
        vtpVlanEditDot10Said columns have appropriate values.
        
        The management station should endeavor to make all rows
        consistent in the table before 'apply'ing the buffer.  An
        inconsistent entry in the table will cause the entire
        buffer to be rejected with the vtpVlanApplyStatus object
        set to the appropriate error value."
    ::= { vtpVlanEditEntry 11 }

vtpVlanEditTranslationalVlan1 OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A VLAN to which this VLAN would be translational-bridged.
        If this value and the corresponding instance of
        vtpVlanTranslationalVlan2 are both zero, then this VLAN
        would not be translational-bridged.
        
        An implementation may restrict access to this object."
    DEFVAL { 0 }
    ::= { vtpVlanEditEntry 12 }

vtpVlanEditTranslationalVlan2 OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Another VLAN, i.e., other than that indicated by
        vtpVlanEditTranslationalVlan1, to which this VLAN would be
        translational-bridged.  If this value and the corresponding
        instance of vtpVlanTranslationalVlan1 are both zero, then
        this VLAN would not be translational-bridged.
        
        An implementation may restrict access to this object."
    DEFVAL { 0 }
    ::= { vtpVlanEditEntry 13 }

vtpVlanEditBridgeType OBJECT-TYPE
    SYNTAX INTEGER {
        srt(1),
        srb(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The type of Source Route bridging mode which would be in
        use on this VLAN.  This object is only instantiated when 
        the value of  the corresponding instance of vtpVlanEditType
        has a value of fddi(2) or tokenRing(3) and Source Routing 
        is in use on this VLAN."
    ::= { vtpVlanEditEntry 14 }

vtpVlanEditAreHopCount OBJECT-TYPE
    SYNTAX INTEGER(1..13)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The maximum number of bridge hops allowed in
        All Routes Explorer frames on this VLAN.  This
        object is only instantiated when the value of the
        corresponding instance of vtpVlanType has a value of fddi(2)
        or tokenRing(3) and Source Routing is in use on this VLAN."
    ::= { vtpVlanEditEntry 15 }

vtpVlanEditSteHopCount OBJECT-TYPE
    SYNTAX INTEGER(1..13)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The maximum number of bridge hops allowed in
        Spanning Tree Explorer frames on this VLAN.  This
        object is only instantiated when the value of the
        corresponding instance of vtpVlanType has a value of fddi(2)
        or tokenRing(3) and Source Routing is in use on this VLAN."
    ::= { vtpVlanEditEntry 16 }

vtpVlanEditIsCRFBackup OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "True if this VLAN is of type trCrf and also is acting as
        a backup trCrf for the ISL distributed BRF.  This object is
        only instantiated when the value of the corresponding
        instance of vtpVlanEditType has a value of tokenRing(3)."
    ::= { vtpVlanEditEntry 17 }

vtpVlanEditTypeExt OBJECT-TYPE
    SYNTAX VlanTypeExt
--    Rsyntax OCTET STRING(SIZE(1..2))
--         BITS are:
--           vtpmanageable(0)
--           internal(1)
--           reserved(2)
--           rspan(3)
--           dynamicGvrp(4)
    ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The additional type information of this VLAN.
        vtpVlanEditTypeExt object is superseded by vtpVlanEditTypeExt2."
    ::= { vtpVlanEditEntry 18 }

vtpVlanEditTypeExt2 OBJECT-TYPE
    SYNTAX VlanTypeExt
--    Rsyntax OCTET STRING(SIZE(1..2))
--         BITS are:
--           vtpmanageable(0)
--           internal(1)
--           reserved(2)
--           rspan(3)
--           dynamicGvrp(4)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The additional type information of this VLAN.
        The VlanTypeExt TC specifies which bits may
        be written by a management application.
        The agent should provide a default value."
    ::= { vtpVlanEditEntry 19 }

vtpVlanLocalShutdownTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpVlanLocalShutdownEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Ths table contains the VLAN local shutdown
        information within management domain."
    ::= { vlanEdit 3 }

vtpVlanLocalShutdownEntry OBJECT-TYPE
    SYNTAX VtpVlanLocalShutdownEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry containing VLAN local shutdown information for a
        particular VLAN in the management domain.
        
        An entry is created if a VLAN which supports local shutdown
        has been created.
        
        An entry is deleted if a VLAN which supports local shutdown
        has been removed."
    INDEX { managementDomainIndex, vtpVlanIndex }
    ::= { vtpVlanLocalShutdownTable 1 }

VtpVlanLocalShutdownEntry ::= SEQUENCE {
    vtpVlanLocalShutdown INTEGER
    }

vtpVlanLocalShutdown OBJECT-TYPE
    SYNTAX INTEGER {
        up(1),
        down(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The object specifies the VLAN local shutdown state."
    ::= { vtpVlanLocalShutdownEntry 1 }

vtpStatsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpStatsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of VTP statistics."
    ::= { vtpStats 1 }

vtpStatsEntry OBJECT-TYPE
    SYNTAX VtpStatsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "VTP statistics for one management domain."
    INDEX { managementDomainIndex }
-- Augments managementDomainEntry
    ::= { vtpStatsTable 1 }

VtpStatsEntry ::= SEQUENCE {
    vtpInSummaryAdverts Counter,
    vtpInSubsetAdverts Counter,
    vtpInAdvertRequests Counter,
    vtpOutSummaryAdverts Counter,
    vtpOutSubsetAdverts Counter,
    vtpOutAdvertRequests Counter,
    vtpConfigRevNumberErrors Counter,
    vtpConfigDigestErrors Counter
    }

vtpInSummaryAdverts OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Summary Adverts received for this
        management domain."
    ::= { vtpStatsEntry 1 }

vtpInSubsetAdverts OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Subset Adverts received for this
        management domain."
    ::= { vtpStatsEntry 2 }

vtpInAdvertRequests OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Advert Requests received for this
        management domain."
    ::= { vtpStatsEntry 3 }

vtpOutSummaryAdverts OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Summary Adverts sent for this
        management domain."
    ::= { vtpStatsEntry 4 }

vtpOutSubsetAdverts OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Subset Adverts sent for this
        management domain."
    ::= { vtpStatsEntry 5 }

vtpOutAdvertRequests OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The total number of VTP Advert Requests sent for this
        management domain."
    ::= { vtpStatsEntry 6 }

vtpConfigRevNumberErrors OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of occurrences of configuration revision number
        errors for this management domain.  A configuration revision
        number error occurs when a device receives a VTP
        advertisement for which:
        
        - the advertisement's Configuration Revision Number is the
          same as the current locally-held value, and
        
        - the advertisement's digest value is different from the
          current locally-held value."
    ::= { vtpStatsEntry 7 }

vtpConfigDigestErrors OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of occurrences of configuration digest errors
        for this management domain.  A configuration digest error
        occurs when a device receives a VTP advertisement for which:
        
        - the advertisement's Configuration Revision Number is
          greater than the current locally-held value, and
        
        -  the advertisement's digest value computed by the
         receiving device does not match the checksum in the
         summary advertisement that was received earlier. This
         can happen, for example, if there is a mismatch in VTP
         passwords between the VTP devices."
    ::= { vtpStatsEntry 8 }

vlanTrunkPortTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VlanTrunkPortEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The table containing information on the local system's VLAN
        trunk ports."
    ::= { vlanTrunkPorts 1 }

vlanTrunkPortEntry OBJECT-TYPE
    SYNTAX VlanTrunkPortEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about one trunk port."
    INDEX { vlanTrunkPortIfIndex }
    ::= { vlanTrunkPortTable 1 }

VlanTrunkPortEntry ::= SEQUENCE {
    vlanTrunkPortIfIndex InterfaceIndex,
    vlanTrunkPortManagementDomain ManagementDomainIndex,
    vlanTrunkPortEncapsulationType INTEGER,
    vlanTrunkPortVlansEnabled OCTET STRING,
    vlanTrunkPortNativeVlan VlanIndex,
    vlanTrunkPortRowStatus RowStatus,
    vlanTrunkPortInJoins Counter,
    vlanTrunkPortOutJoins Counter,
    vlanTrunkPortOldAdverts Counter,
    vlanTrunkPortVlansPruningEligible OCTET STRING,
    vlanTrunkPortVlansXmitJoined OCTET STRING,
    vlanTrunkPortVlansRcvJoined OCTET STRING,
    vlanTrunkPortDynamicState INTEGER,
    vlanTrunkPortDynamicStatus INTEGER,
    vlanTrunkPortVtpEnabled TruthValue,
    vlanTrunkPortEncapsulationOperType INTEGER,
    vlanTrunkPortVlansEnabled2k OCTET STRING,
    vlanTrunkPortVlansEnabled3k OCTET STRING,
    vlanTrunkPortVlansEnabled4k OCTET STRING,
    vtpVlansPruningEligible2k OCTET STRING,
    vtpVlansPruningEligible3k OCTET STRING,
    vtpVlansPruningEligible4k OCTET STRING,
    vlanTrunkPortVlansXmitJoined2k OCTET STRING,
    vlanTrunkPortVlansXmitJoined3k OCTET STRING,
    vlanTrunkPortVlansXmitJoined4k OCTET STRING,
    vlanTrunkPortVlansRcvJoined2k OCTET STRING,
    vlanTrunkPortVlansRcvJoined3k OCTET STRING,
    vlanTrunkPortVlansRcvJoined4k OCTET STRING,
    vlanTrunkPortDot1qTunnel INTEGER,
    vlanTrunkPortVlansActiveFirst2k Cisco2KVlanList,
    vlanTrunkPortVlansActiveSecond2k Cisco2KVlanList
    }

vlanTrunkPortIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndex
--    Rsyntax INTEGER(1..2147483647)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The value of ifIndex for the interface corresponding to
        this trunk port."
    ::= { vlanTrunkPortEntry 1 }

vlanTrunkPortManagementDomain OBJECT-TYPE
    SYNTAX ManagementDomainIndex
--    Rsyntax INTEGER(1..255)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The value of managementDomainIndex for the management
        domain on this trunk port.  Devices which support only one
        management domain will support this object read-only."
    ::= { vlanTrunkPortEntry 2 }

vlanTrunkPortEncapsulationType OBJECT-TYPE
    SYNTAX INTEGER {
        isl(1),
        dot10(2),
        lane(3),
        dot1Q(4),
        negotiate(5)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The type of VLAN encapsulation desired to be used on this
        trunk port. It is either a particular type, or 'negotiate'
        meaning whatever type results from the negotiation.
        negotiate(5) is not allowed if the port does not support
        negotiation or if its vlanTrunkPortDynamicState is set to
        on(1) or onNoNegotiate(5). Whether writing to this object
        in order to modify the encapsulation is supported is both
        device and interface specific."
    ::= { vlanTrunkPortEntry 3 }

vlanTrunkPortVlansEnabled OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN in the
        management domain on this trunk port.  The first octet
        corresponds to VLANs with VlanIndex values of 0 through 7;
        the second octet to VLANs 8 through 15; etc.  The most
        significant bit of each octet corresponds to the lowest
        value VlanIndex in that octet.  If the bit corresponding to
        a VLAN is set to '1', then the local system is enabled for
        sending and receiving frames on that VLAN; if the bit is set
        to '0', then the system is disabled from sending and
        receiving frames on that VLAN.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 4 }

vlanTrunkPortNativeVlan OBJECT-TYPE
    SYNTAX VlanIndex
--    Rsyntax INTEGER(0..4095)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The VlanIndex of the VLAN which is represented by native
        frames on this trunk port.  For trunk ports not supporting
        the sending and receiving of native frames, this value
        should be set to zero."
    ::= { vlanTrunkPortEntry 5 }

vlanTrunkPortRowStatus OBJECT-TYPE
    SYNTAX RowStatus
--    Rsyntax INTEGER {
--        active(1),
--        notInService(2),
--        notReady(3),
--        createAndGo(4),
--        createAndWait(5),
--        destroy(6)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The status of this row.  In some circumstances, the
        creation of a row in this table is needed to enable the
        appropriate trunking/tagging protocol on the port, to enable
        the use of VTP on the port, and to assign the port to the
        appropriate management domain.  In other circumstances, rows
        in this table will be created as a by-product of other
        operations."
    ::= { vlanTrunkPortEntry 6 }

vlanTrunkPortInJoins OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of VTP Join messages received on this trunk
        port."
    ::= { vlanTrunkPortEntry 7 }

vlanTrunkPortOutJoins OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of VTP Join messages sent on this trunk port."
    ::= { vlanTrunkPortEntry 8 }

vlanTrunkPortOldAdverts OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of VTP Advertisement messages which indicated
        the sender does not support VLAN-pruning received on this
        trunk port."
    ::= { vlanTrunkPortEntry 9 }

vlanTrunkPortVlansPruningEligible OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN in the
        management domain on this trunk port.  The first octet
        corresponds to VLANs with VlanIndex values of 0 through 7;
        the second octet to VLANs 8 through 15; etc.  The most
        significant bit of each octet corresponds to the lowest
        value VlanIndex in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local system is permitted to prune that VLAN on this trunk
        port; if the bit is set to '0', then the system must not
        prune that VLAN on this trunk port.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 10 }

vlanTrunkPortVlansXmitJoined OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN in the
        management domain on this trunk port.  The first octet
        corresponds to VLANs with VlanIndex values of 0 through 7;
        the second octet to VLANs 8 through 15; etc.  The most
        significant bit of each octet corresponds to the lowest
        value VlanIndex in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then this
        VLAN is presently being forwarded on this trunk port, i.e.,
        it is not pruned; if the bit is set to '0', then this VLAN
        is presently not being forwarded on this trunk port, either
        because it is pruned or for some other reason."
    ::= { vlanTrunkPortEntry 11 }

vlanTrunkPortVlansRcvJoined OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN in the
        management domain on this trunk port.  The first octet
        corresponds to VLANs with VlanIndex values of 0 through 7;
        the second octet to VLANs 8 through 15; etc.  The most
        significant bit of each octet corresponds to the lowest
        value VlanIndex in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local switch is currently sending joins for this VLAN on
        this trunk port, i.e., it is asking to receive frames for
        this VLAN; if the bit is set to '0', then the local switch
        is not currently sending joins for this VLAN on this trunk
        port."
    ::= { vlanTrunkPortEntry 12 }

vlanTrunkPortDynamicState OBJECT-TYPE
    SYNTAX INTEGER {
        on(1),
        off(2),
        desirable(3),
        auto(4),
        onNoNegotiate(5)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "For devices that allows dynamic determination of whether
        a link between two switches should be a trunk or not, this
        object allows the operator to mandate the behavior of that
        dynamic mechanism.
        
        on(1) dictates that the interface will always be a
        trunk. This is the value for static entries (those that
        show no dynamic behavior). If the negotiation is supported
        on this port, negotiation will take place with the far end
        to attempt to bring the far end into trunking state.
        
        off(2) allows an operator to specify that the specified
        interface is never to be trunk, regardless of any dynamic
        mechanisms to the contrary.  This value is useful for
        overriding the default behavior of some switches. If the
        negotiation is supported on this port, negotiation will take
        place with the far end to attempt on the link to bring the
        far end into non-trunking state.
        
        desirable(3) is used to indicate that it is desirable for
        the interface to become a trunk.  The device will initiate
        any negotiation necessary to become a trunk but will not
        become a trunk unless it receives confirmation from the far
        end on the link.
        
        auto(4) is used to indicate that the interface is capable
        and willing to become a trunk but will not initiate
        trunking negotiations.  The far end on the link are
        required to either start negotiations or start sending
        encapsulated packets, on which event the specified
        interface will become a trunk.
        
        onNoNegotiate(5) is used to indicate that the interface is
        permanently set to be a trunk, and no negotiation takes
        place with the far end on the link to ensure consistent
        operation. This is similar to on(1) except no negotiation
        takes place with the far end.
        
        If the port does not support negotiation or its
        vlanTrunkPortEncapsulationType is set to negotiate(5),
        onNoNegotiate(5) is not allowed.
        
        Devices that do no support dynamic determination (for just
        a particular interface, encapsulation or for the whole
        device) need only support the 'on', and 'off' values."
    ::= { vlanTrunkPortEntry 13 }

vlanTrunkPortDynamicStatus OBJECT-TYPE
    SYNTAX INTEGER {
        trunking(1),
        notTrunking(2)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates whether the specified interface is either
        acting as a trunk or not. This is a result of the
        vlanTrunkPortDynamicState and the ifOperStatus of the
        trunk port itself."
    ::= { vlanTrunkPortEntry 14 }

vlanTrunkPortVtpEnabled OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Some trunk interface modules allow VTP to be
        enabled/disabled seperately from that of the central
        device.  In such a case this object provides management a
        way to remotely enable VTP on that module.  If a module
        does not support a seperate VTP enabled state then this
        object shall always return 'true' and will accept no other
        value during a SET operation."
    ::= { vlanTrunkPortEntry 15 }

vlanTrunkPortEncapsulationOperType OBJECT-TYPE
    SYNTAX INTEGER {
        isl(1),
        dot10(2),
        lane(3),
        dot1Q(4),
        negotiating(5),
        notApplicable(6)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The type of VLAN encapsulation in use on this trunk port.
        For intefaces with vlanTrunkPortDynamicStatus of
        notTrunking(2) the vlanTrunkPortEncapsulationOperType shall
        be notApplicable(6)."
    ::= { vlanTrunkPortEntry 16 }

vlanTrunkPortVlansEnabled2k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 1024 through 2047 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 1024 through 1031; the second
        octet to VLANs 1032 through 1039; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet. If the bit corresponding to a VLAN is set to
        '1', then the local system is enabled for sending and
        receiving frames on that VLAN; if the bit is set to '0',
        then the system is disabled from sending and receiving
        frames on that VLAN. The default value is zero length
        string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 17 }

vlanTrunkPortVlansEnabled3k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 2048 through 3071 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 2048 through 2055; the second
        octet to VLANs 2056 through 2063; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet. If the bit corresponding to a VLAN is set to
        '1', then the local system is enabled for sending and
        receiving frames on that VLAN; if the bit is set to '0',
        then the system is disabled from sending and receiving
        frames on that VLAN. The default value is zero length
        string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 18 }

vlanTrunkPortVlansEnabled4k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 3072 through 4095 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 3072 through 3079; the second
        octet to VLANs 3080 through 3087; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet. If the bit corresponding to a VLAN is set to
        '1', then the local system is enabled for sending and
        receiving frames on that VLAN; if the bit is set to '0',
        then the system is disabled from sending and receiving
        frames on that VLAN. The default value is zero length
        string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 19 }

vtpVlansPruningEligible2k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 1024 through 2047 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 1024 through 1031; the second
        octet to VLANs 1032 through 1039; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local system is permitted to prune that VLAN on this trunk
        port; if the bit is set to '0', then the system must not
        prune that VLAN on this trunk port.
        The default value is zero length string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 20 }

vtpVlansPruningEligible3k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 2048 through 3071 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 2048 through 2055; the second
        octet to VLANs 2056 through 2063; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local system is permitted to prune that VLAN on this trunk
        port; if the bit is set to '0', then the system must not
        prune that VLAN on this trunk port.
        The default value is zero length string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 21 }

vtpVlansPruningEligible4k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 3072 through 4095 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 3072 through 3079; the second
        octet to VLANs 3080 through 3087; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local system is permitted to prune that VLAN on this trunk
        port; if the bit is set to '0', then the system must not
        prune that VLAN on this trunk port.
        The default value is zero length string.
        
        To avoid conflicts between overlapping partial updates by
        multiple managers, i.e., updates which modify only a portion
        of an instance of this object (e.g., enable/disable a single
        VLAN on the trunk port), any SNMP Set operation accessing an
        instance of this object should also write the value of
        vlanTrunkPortSetSerialNo."
    ::= { vlanTrunkPortEntry 22 }

vlanTrunkPortVlansXmitJoined2k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 1024 through 2047 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 1024 through 1031; the second
        octet to VLANs 1032 through 1039; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then this
        VLAN is presently being forwarded on this trunk port, i.e.,
        it is not pruned; if the bit is set to '0', then this VLAN
        is presently not being forwarded on this trunk port, either
        because it is pruned or for some other reason."
    ::= { vlanTrunkPortEntry 23 }

vlanTrunkPortVlansXmitJoined3k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 2048 through 3071 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 2048 through 2055; the second
        octet to VLANs 2056 through 2063; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then this
        VLAN is presently being forwarded on this trunk port, i.e.,
        it is not pruned; if the bit is set to '0', then this VLAN
        is presently not being forwarded on this trunk port, either
        because it is pruned or for some other reason."
    ::= { vlanTrunkPortEntry 24 }

vlanTrunkPortVlansXmitJoined4k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 3072 through 4095 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 3072 through 3079; the second
        octet to VLANs 3080 through 3087; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then this
        VLAN is presently being forwarded on this trunk port, i.e.,
        it is not pruned; if the bit is set to '0', then this VLAN
        is presently not being forwarded on this trunk port, either
        because it is pruned or for some other reason."
    ::= { vlanTrunkPortEntry 25 }

vlanTrunkPortVlansRcvJoined2k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 1024 through 2047 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 1024 through 1031; the second
        octet to VLANs 1032 through 1039; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local switch is currently sending joins for this VLAN on
        this trunk port, i.e., it is asking to receive frames for
        this VLAN; if the bit is set to '0', then the local switch
        is not currently sending joins for this VLAN on this trunk
        port."
    ::= { vlanTrunkPortEntry 26 }

vlanTrunkPortVlansRcvJoined3k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 2048 through 3071 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 2048 through 2055; the second
        octet to VLANs 2056 through 2063; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local switch is currently sending joins for this VLAN on
        this trunk port, i.e., it is asking to receive frames for
        this VLAN; if the bit is set to '0', then the local switch
        is not currently sending joins for this VLAN on this trunk
        port."
    ::= { vlanTrunkPortEntry 27 }

vlanTrunkPortVlansRcvJoined4k OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..128))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN for VLANS
        with VlanIndex values of 3072 through 4095 in the management
        domain on this trunk port.  The first octet corresponds to
        VLANs with VlanIndex values of 3072 through 3079; the second
        octet to VLANs 3080 through 3087; etc.  The most significant
        bit of each octet corresponds to the lowest value VlanIndex
        in that octet.
        
        If the bit corresponding to a VLAN is set to '1', then the
        local switch is currently sending joins for this VLAN on
        this trunk port, i.e., it is asking to receive frames for
        this VLAN; if the bit is set to '0', then the local switch
        is not currently sending joins for this VLAN on this trunk
        port."
    ::= { vlanTrunkPortEntry 28 }

vlanTrunkPortDot1qTunnel OBJECT-TYPE
    SYNTAX INTEGER {
        trunk(1),
        access(2),
        disabled(3)
        }
    ACCESS read-write
    STATUS deprecated
    DESCRIPTION
        "Indicates dot1qtunnel mode of the port.
        
        If the portDot1qTunnel  is set to 'trunk' mode, the port's
        vlanTrunkPortDynamicState will be changed to 'onNoNegotiate'
        and the vlanTrunkPortEncapsulationType will be set to
        'dot1Q'. These values cannot be changed unless dot1q tunnel
        is disabled on this port.
        
        If the portDot1qTunnel mode is set to 'access' mode, the
        port's vlanTrunkPortDynamicState will be set to 'off'.And
        the value of vlanTrunkPortDynamicState cannot be changed
        unless dot1q tunnel is disabled on this port. 1Q packets
        received on this access port will remain.
        
        Setting the port to dot1q tunnel 'disabled' mode causes the
        dot1q tunnel feature to be disabled on this port.  This
        object can't be set to 'trunk' or 'access' mode, when
        vlanTrunkPortsDot1qTag  object is set to 'false'.
        
        This object has been deprecated and is replaced by the
        object 'cltcDot1qTunnelMode' in the
        CISCO-L2-TUNNEL-CONFIG-MIB"
    DEFVAL { disabled }
    ::= { vlanTrunkPortEntry 29 }

vlanTrunkPortVlansActiveFirst2k OBJECT-TYPE
    SYNTAX Cisco2KVlanList
--    Rsyntax OCTET STRING(SIZE(0..256))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN
        with VlanIndex values of 0 through 2047.
        
        If the bit corresponding to a VLAN is set to 1,
        it indicates that vlan is allowed and active in
        management domain.
        
        If the bit corresponding to a VLAN is set to 0,
        it indicates that vlan is not allowed or not active
        in management domain."
    ::= { vlanTrunkPortEntry 30 }

vlanTrunkPortVlansActiveSecond2k OBJECT-TYPE
    SYNTAX Cisco2KVlanList
--    Rsyntax OCTET STRING(SIZE(0..256))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A string of octets containing one bit per VLAN
        with VlanIndex values of 2048 through 4095.
        
        If the bit corresponding to a VLAN is set to 1,
        it indicates that vlan is allowed and active in
        management domain.
        
        If the bit corresponding to a VLAN is set to 0,
        it indicates that vlan is not allowed or not active
        in management domain."
    ::= { vlanTrunkPortEntry 31 }

vlanTrunkPortSetSerialNo OBJECT-TYPE
    SYNTAX TestAndIncr
--    Rsyntax INTEGER(0..2147483647)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "An advisory lock used to allow several cooperating SNMPv2
        managers to coordinate their use of the SNMPv2 set operation
        acting upon any instance of vlanTrunkPortVlansEnabled."
    ::= { vlanTrunkPorts 2 }

vlanTrunkPortsDot1qTag OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS deprecated
    DESCRIPTION
        "An indication of whether the tagging on all VLANs including
        native VLAN for all 802.1q trunks is enabled.
        
        If this object has a value of true(1) then all VLANs
        including native VLAN are tagged.  If the value is false(2)
        then all VLANs excluding native VLAN are tagged.
        
        This object has been deprecated and is replaced by the
        object 'cltcDot1qAllTaggedEnabled' in the
        CISCO-L2-TUNNEL-CONFIG-MIB"
    DEFVAL { false }
    ::= { vlanTrunkPorts 3 }

vtpDiscoverTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpDiscoverEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table contains information related to the discovery
        of the VTP members in the designated management
        domain. This table is not instantiated when 
        managementDomainVersionInUse is version1(1), version2(3)
        or none(3)."
    ::= { vtpDiscover 1 }

vtpDiscoverEntry OBJECT-TYPE
    SYNTAX VtpDiscoverEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information related to the discovery of the
        VTP members in one management domain."
    INDEX { managementDomainIndex }
    ::= { vtpDiscoverTable 1 }

VtpDiscoverEntry ::= SEQUENCE {
    vtpDiscoverAction INTEGER,
    vtpDiscoverStatus INTEGER,
    vtpLastDiscoverTime TimeStamp
    }

vtpDiscoverAction OBJECT-TYPE
    SYNTAX INTEGER {
        discover(1),
        noOperation(2),
        purgeResult(3)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "When this object is set to discover(1), all the
        entries in vtpDiscoverResultTable for the
        corresponding management domain will be removed 
        and the local device will begin to discover all
        VTP members in the management domain. Upon the
        successful completion of discovery, the discovered
        result will be stored in the vtpDiscoverResultTable.
        
        If vtpDiscoverStatus is inProgress(1), setting 
        vtpDiscoverAction to discover(1) will fail. 
        
        When this object is set to purgeResult(3), 
        all the entries of vtpDiscoverResultTable for 
        the corresponding management domain will be
        removed from vtpDiscoverResultTable.
        
        When this object is set to noOperation(2), no
        action will be taken. When read, this object
        always returns noOperation(2)."
    ::= { vtpDiscoverEntry 1 }

vtpDiscoverStatus OBJECT-TYPE
    SYNTAX INTEGER {
        inProgress(1),
        succeeded(2),
        resourceUnavailable(3),
        someOtherError(4)
        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The current status of VTP discovery.
        
        inProgress - a discovery is in progress;
        
        succeeded - the discovery was completed successfully
                    (this value is also used when 
                    no discover has been invoked since the
                    last time the local system restarted);
        
        resourceUnavailable - the discovery failed because
                    the required allocation of a resource is
                    presently unavailable.
        
        someOtherError - 'the discovery failed due to a
                    reason no listed."
    ::= { vtpDiscoverEntry 2 }

vtpLastDiscoverTime OBJECT-TYPE
    SYNTAX TimeStamp
--    Rsyntax TimeTicks
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The value of sysUpTime at which the last discovery
        was completed.
        
        A value of zero indicates that no discovery has been
        invoked since last time the local system restarted."
    ::= { vtpDiscoverEntry 3 }

vtpDiscoverResultTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpDiscoverResultEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The table containing information of discovered VTP members
        in the management domain in which the local system is
        participating. This table is not instantiated when 
        managementDomainVersionInUse is version1(1), version2(2) or
        none(3)."
    ::= { vtpDiscover 2 }

vtpDiscoverResultEntry OBJECT-TYPE
    SYNTAX VtpDiscoverResultEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A conceptual row is created for each VTP member which
        is found through successful discovery."
    INDEX { managementDomainIndex, vtpDiscoverResultIndex }
    ::= { vtpDiscoverResultTable 1 }

VtpDiscoverResultEntry ::= SEQUENCE {
    vtpDiscoverResultIndex Gauge,
    vtpDiscoverResultDatabaseName SnmpAdminString,
    vtpDiscoverResultConflicting TruthValue,
    vtpDiscoverResultDeviceId SnmpAdminString,
    vtpDiscoverResultPrimaryServer SnmpAdminString,
    vtpDiscoverResultRevNumber Gauge,
    vtpDiscoverResultSystemName SnmpAdminString
    }

vtpDiscoverResultIndex OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A value assigned by the system which identifies
        a VTP member and the associated database in the 
        management domain."
    ::= { vtpDiscoverResultEntry 1 }

vtpDiscoverResultDatabaseName OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The database name associated with the
        discovered VTP member."
    ::= { vtpDiscoverResultEntry 2 }

vtpDiscoverResultConflicting OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Indicates whether this VTP member contains
        conflicting information.
        
        true(1) indicates that this member has conflicting 
        information of the database type in the management domain.
        
        false(2) indicates that there is no conflicting information
        of the database type in the management domain."
    ::= { vtpDiscoverResultEntry 3 }

vtpDiscoverResultDeviceId OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unique identifier of the device for this VTP member."
    ::= { vtpDiscoverResultEntry 4 }

vtpDiscoverResultPrimaryServer OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unique identifier of the primary server for this VTP
        member and the associated database type.
        
        There are two different VTP servers, the primary server
        and the secondary server.  When a local device is
        configured as a server for a certain database type,
        it becomes secondary server by default. 
        Primary server is an operational role under which a
        server can initiate or change the VTP configuration of the
        database type.
        
        If this VTP member itself is the primary server, the   
        value of this object is the same as the value of 
        vtpDiscoverResultDeviceId of the instance."
    ::= { vtpDiscoverResultEntry 5 }

vtpDiscoverResultRevNumber OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The current configuration revision number as known by the
        VTP member. When the database type is unknown for
        the VTP member, this value is 0."
    ::= { vtpDiscoverResultEntry 6 }

vtpDiscoverResultSystemName OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "sysName of the VTP member."
    ::= { vtpDiscoverResultEntry 7 }

vtpDatabaseTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpDatabaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table contains information of the VTP
        databases. It is not instantiated when
        managementDomainVersionInUse is version1(1), 
        version2(3) or none(3)."
    ::= { vtpDatabase 1 }

vtpDatabaseEntry OBJECT-TYPE
    SYNTAX VtpDatabaseEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about the status of the VTP database
        in the domain.  Each VTP database type known to the
        local device type has an entry in this table.
        An entry is also created for unknown database which is
        notified through VTP advertisements from other VTP
        servers."
    INDEX { managementDomainIndex, vtpDatabaseIndex }
    ::= { vtpDatabaseTable 1 }

VtpDatabaseEntry ::= SEQUENCE {
    vtpDatabaseIndex Gauge,
    vtpDatabaseName SnmpAdminString,
    vtpDatabaseLocalMode INTEGER,
    vtpDatabaseRevNumber Gauge,
    vtpDatabasePrimaryServer TruthValue,
    vtpDatabasePrimaryServerId SnmpAdminString,
    vtpDatabaseTakeOverPrimary TruthValue,
    vtpDatabaseTakeOverPassword SnmpAdminString
    }

vtpDatabaseIndex OBJECT-TYPE
    SYNTAX Gauge
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A value assigned by the system which uniquely identifies
        a VTP database in the local system."
    ::= { vtpDatabaseEntry 1 }

vtpDatabaseName OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The name of the database."
    ::= { vtpDatabaseEntry 2 }

vtpDatabaseLocalMode OBJECT-TYPE
    SYNTAX INTEGER {
        client(1),
        server(2),
        transparent(3),
        off(4)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The local VTP mode for a particular database type
        in this administrative domain.
        
        - 'client' indicates that the local system is acting
          as a VTP client of the database type.
        
        - 'server' indicates that the local system is acting
          as a VTP server of the database type.
        
        - 'transparent' indicates that the local system does
          not generate or listen to VTP messages of this 
          database type, but forwards
          messages. This mode can also be set by the device
          itself when the size of database is too large for it
          to hold in DRAM.
        
        - 'off' indicates that the local system does not
          generate, listen to or forward any VTP messages
          of this database type.
        
        The default mode is 'client' for the database type 
        known to the local device and 'transparent' for the
        unknown database type."
    ::= { vtpDatabaseEntry 3 }

vtpDatabaseRevNumber OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The current configuration revision number as known by the
        local device for this VTP 3 database type in the management
        domain.  This value is updated (if necessary) whenever a 
        VTP advertisement for the database type is received 
        or generated. When the database type is unknown to the 
        local device or no VTP advertisement for the database
        type is received or generated, its value is 0."
    ::= { vtpDatabaseEntry 4 }

vtpDatabasePrimaryServer OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "There are two kinds of VTP version 3 servers for a certain
        database type - the primary server and the secondary server.
        When a local device is configured as a server for a certain
        database type, it becomes secondary server by default.
        Primary server is an operational role under which a
        server can initiate or change the VTP configuration of the
        database type.
        
        A true(1) value indicates that the local device is the 
        primary server of the database type in the management
        domain. A false(2) value indicates that the local device
        is not the primary server, or the database type is unknown
        to the local device."
    ::= { vtpDatabaseEntry 5 }

vtpDatabasePrimaryServerId OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The unique identifier of the primary server in the
        management domain for the database type. 
        
        If no primary server is discovered for the database
        type, the object has a value of zero length string."
    ::= { vtpDatabaseEntry 6 }

vtpDatabaseTakeOverPrimary OBJECT-TYPE
    SYNTAX TruthValue
--    Rsyntax INTEGER {
--        true(1),
--        false(2)
--        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "There are two kinds of VTP version 3 servers for a certain
        database type - the primary server and the secondary server.
        When a local device is configured as a server for a certain
        database type, it becomes secondary server by default.
        Primary server is an operational role under which a
        server can initiate or change the VTP configuration of the
        database type.
        
        Setting this object to a true(1) value will advertise the
        configuration of this database type to the whole domain.
        
        In order to successfully setting this object to true(1),
        the value of vtpDatabaseLocalMode must be server(2). Besides
        that, when the VTP password is hidden from the configuration
        file, the password (vtpDatabaseTakeOverPassword) which 
        matches  the secret key (vtpAuthSecretKey) must be provided
        in the same data packet. 
        
        When read, the object always returns false(2)."
    ::= { vtpDatabaseEntry 7 }

vtpDatabaseTakeOverPassword OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "When read, this object always returns the value of a
        zero-length octet string.
        
        In the case that the VTP password is hidden from the 
        configuration and the local device intends
        to take over the whole domain, this object must be 
        set to the matching password with the secret key 
        (vtpAuthSecretKey) in the same data packet as which 
        the vtpDatabaseTakeOverPrimary is in. In all the 
        other situations, setting a valid value to this object 
        has no impact on the system."
    ::= { vtpDatabaseEntry 8 }

vtpAuthenticationTable OBJECT-TYPE
    SYNTAX SEQUENCE OF VtpAuthEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The table contains the authentication information of VTP
        in which the local system participates.
        
        The security mechanism of VTP relies on a secret key
        that is used to alter the MD5 digest of the packets
        transmitted on the wire.  The secret value is
        created from a password that may be saved in plain text
        in the configuration or hidden from the configuration.
        
        The device creating or modifying the VTP configuration
        signs it using the MD5 digest generated from the secret
        key before advertising it. Other devices in the domain
        receive this configuration use the same secret key
        to accept it if correctly signed or drop it otherwise.
        
        The user has the option to hide the password from the
        configuration. Once the password is hidden, the secret
        key generated from the password is shown in the 
        configuration instead, and there is no other way to 
        show the password in plain text again but clearing 
        it or resetting it. 
        
        In an un-trusted area, the password on a device can 
        be configured without being unveiled. After that,
        it has to be provided again by setting the same 
        value to vtpDatabaseTakeOverPassword if the user 
        wants to take over the whole VTP management domain
        of the database type.
        
        When managementDomainVersionInUse is version3(4), the 
        authentication mechanism is common to all VTP
        database type."
    ::= { vtpAuthentication 1 }

vtpAuthEntry OBJECT-TYPE
    SYNTAX VtpAuthEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Information about the status of the VTP
        authentication information in one domain."
    INDEX { managementDomainIndex }
    ::= { vtpAuthenticationTable 1 }

VtpAuthEntry ::= SEQUENCE {
    vtpAuthPassword SnmpAdminString,
    vtpAuthPasswordType INTEGER,
    vtpAuthSecretKey OCTET STRING
    }

vtpAuthPassword OBJECT-TYPE
    SYNTAX SnmpAdminString(SIZE(0..64))
--    Rsyntax OCTET STRING(SIZE(0..64))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "By default, this object has a value of a zero-length
        character string and is considered to be not
        configured.
        
        The device uses the password to generate the 
        secret key. It can be stored in the configuration in 
        plain text or hidden from the configuration. If a VTP 
        server intends to modify the database's configuration
        in the domain but the password was hidden from the
        configuration, the same password
        (vtpDatabaseTakeOverPassword) as the hidden one
        has to be provided.
        
        When this object is set alone, vtpAuthPasswordType is
        set to plaintext(1) automatically by the system.
        Setting this object to a zero length character string
        resets the password to its default value and the
        password is considered as not configured.
        
        This object is not allowed to be set at the same time
        when  vtpAuthSecretKey is set.
        
        When the vtpAuthPasswordType is hidden(2), this object 
        will return a zero-length character string when read."
    ::= { vtpAuthEntry 1 }

vtpAuthPasswordType OBJECT-TYPE
    SYNTAX INTEGER {
        plaintext(1),
        hidden(2)
        }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "By default this object has the value as plaintext(1)
        and the VTP password is stored in the configuration
        file in plain text.
        
        Setting this object to hidden(2) will hide the
        password from the configuration.
        
        Once this object is set to hidden(2), it cannot
        be set to plaintext(1) alone. However, it may
        be set to plaintext(1) at the same time the
        password is set."
    ::= { vtpAuthEntry 2 }

vtpAuthSecretKey OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE(0..16))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "The device creating or modifying the VTP configuration
        signs it using the MD5 digest generated from the secret
        key before advertising it. Other devices in the domain
        receiving this configuration use the same secret key
        to accept it if it was correctly signed or drop it 
        otherwise.
        
        By default, the object has the value as a zero-length
        string and this value is read only. It is set 
        to this value automatically when the password 
        (vtpAuthPassword) is set to a zero-length octet string.
        
        The secret key can be either generated using
        the password or configured by the user. Once
        the secret key is configured by the user, it is
        stored as a hexadecimal string in the device's
        configuration and the password is considered to be
        the secret key's matching password and hidden
        from the configuration automatically.
        
        This object is not allowed to be set at the same
        time when vtpAuthPassword is set.
        
        The secret key is overwritten by a newly generated
        secret key when the password is re-configured."
    ::= { vtpAuthEntry 3 }

vlanStatsVlans OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This object indicates the number of the existing
        manageable VLANs with VLAN indices from 1 to
        1024 in the system."
    ::= { vlanStatistics 1 }

vlanStatsExtendedVlans OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This object indicates the number of the
        existing manageable VLANs with VLAN indices
        greater than 1024 in the system."
    ::= { vlanStatistics 2 }

vlanStatsInternalVlans OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This object indicates the number of the
        internal VLANs existing in the system."
    ::= { vlanStatistics 3 }

vlanStatsFreeVlans OBJECT-TYPE
    SYNTAX Gauge
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This object indicates the number of the
        free or unused VLANs in the system."
    ::= { vlanStatistics 4 }

vtpVlanPortLocalSegment OBJECT-TYPE
    SYNTAX INTEGER(0..65535)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The ring (segment) number in use on a 802.5 ring.  For
        bridges supporting RFC 1525, this value is the same as given
        by dot1dSrPortLocalSegment for the bridge port attached to
        that ring.  When tokenRing VLANs are in use, each 'trNet'
        VLAN can/does have a different instance of
        dot1dSrPortLocalSegment for each physical port.  Note that
        access to the particuler instance of dot1dSrPortLocalSegment
        requires knowledge of how the agent supports the multiple
        'contexts' required to implement RFC 1525 for multiple
        VLANs; also note that the assignment of ifIndex values may
        be different in different 'contexts'."
    ::= { vtpNotificationsObjects 1 }

vtpConfigRevNumberError TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainConfigRevNumber }
--  Status
--    mandatory
    DESCRIPTION
        "A configuration revision number error notification
        signifies that a device has incremented its
        vtpConfigRevNumberErrors counter.
        
        Generation of this notification is suppressed if the
        vtpNotificationsEnabled has the value 'false'.
        
        The device must throttle the generation of consecutive
        vtpConfigRevNumberError notifications so that there is at
        least a five-second gap between notification of this type.
        When notification are throttled, they are dropped, not
        queued for sending at a future time.  (Note that
        'generating' a notification means sending to all configured
        recipients.)"
    ::= 1

vtpConfigDigestError TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainConfigRevNumber }
--  Status
--    mandatory
    DESCRIPTION
        "A configuration digest error notification signifies that a
        device has incremented its vtpConfigDigestErrors counter.
        
        Generation of this notification is suppressed if the
        vtpNotificationsEnabled has the value 'false'.
        
        The device must throttle the generation of consecutive
        vtpConfigDigestError notifications so that there is at least
        a five-second gap between notification of this type.  When
        notification are throttled, they are dropped, not queued for
        sending at a future time.  (Note that 'generating' a
        notification means sending to all configured recipients.)"
    ::= 2

vtpServerDisabled TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainConfigRevNumber, vtpMaxVlanStorage }
--  Status
--    mandatory
    DESCRIPTION
        "A VTP Server disabled notification is generated when the
        local system is no longer able to function as a VTP Server
        because the number of defined VLANs is greater than
        vtpMaxVlanStorage or the local system is not able to
        recover complete VTP information after a reboot.
        
        Generation of this notification is suppressed if the
        vtpNotificationsEnabled has the value 'false'."
    ::= 3

vtpMtuTooBig TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vlanTrunkPortManagementDomain, vtpVlanState }
--  Status
--    mandatory
    DESCRIPTION
        "A VTP MTU tooBig notification is generated when a VLAN's
        MTU size is larger than can be supported either:
        
        - by one or more of its trunk ports:
          the included vtpVlanState has the value
          'mtuTooBigForTrunk' and the included
          vlanTrunkPortManagementDomain is for the first (or only)
          trunk port,
          or
        
        - by the device itself:
          vtpVlanState has the value 'mtuTooBigForDevice' and any
          instance of vlanTrunkPortManagementDomain is included.
        
        Devices which have no trunk ports do not send vtpMtuTooBig
        notifications.
        
        Generation of this notification is suppressed if the
        vtpNotificationsEnabled has the value 'false'."
    ::= 4

vtpVersionOneDeviceDetected TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vlanTrunkPortManagementDomain }
--  Status
--    mandatory
    DESCRIPTION
        "A VTP version one device detected notification is
        generated by a device when:
        
        a) a management domain has been put into version 2 mode
           (as accessed by managementDomainVersionInUse).
        b) 15 minutes has passed since a).
        c) a version 1 PDU is detected on a trunk on the device
           that is in that management domain which has a lower
           revision number than the current configuration."
    ::= 6

vlanTrunkPortDynamicStatusChange TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vlanTrunkPortDynamicStatus }
--  Status
--    mandatory
    DESCRIPTION
        "A vlanTrunkPortDynamicStatusChange notification is
        generated by a device when the value of
        vlanTrunkPortDynamicStatus object has been changed."
    ::= 7

vtpLocalModeChanged TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainLocalMode }
--  Status
--    mandatory
    DESCRIPTION
        "A vtpLocalModeChanged notification is generated
        by a device when the value of the object 
        managementDomainLocalMode is changed."
    ::= 8

vtpVersionInUseChanged TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainVersionInUse }
--  Status
--    mandatory
    DESCRIPTION
        "A vtpVersionInUseChanged notification is
        generated by a device when the value of the  
        object managementDomainVersionInUse is 
        changed."
    ::= 9

vtpVlanCreated TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vtpVlanName }
--  Status
--    mandatory
    DESCRIPTION
        "A vtpVlanCreated notification is generated by a
        device when a VLAN is created."
    ::= 10

vtpVlanDeleted TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vtpVlanName }
--  Status
--    mandatory
    DESCRIPTION
        "A vtpVlanDeleted notification is generated by a
        device when a VLAN is deleted."
    ::= 11

vtpVlanRingNumberConflict TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        vtpVlanRingNumber, ifIndex, vtpVlanPortLocalSegment }
--  Status
--    mandatory
    DESCRIPTION
        "A VTP ring number configuration conflict notification is
        generated if, and only at the time when, a device learns of
        a conflict between:
        
        a) the ring number (vtpVlanPortLocalSegment) being used on a
           token ring segment attached to the port identified by
           ifIndex, and
        
        b) the VTP-obtained ring number (vtpVlanRingNumber) for the
           VLAN identified by vtpVlanIndex.
        
        When such a conflict occurs, the bridge port is put into an
        administrative down position until the conflict is resolved
        through local/network management intervention.
        
        This notification is only applicable to VLANs of type
        'tokenRing'."
    ::= 12

vtpPruningStateOperChange TRAP-TYPE
-- Reverse mappable trap
    ENTERPRISE vtpNotifications
    VARIABLES {
        managementDomainPruningStateOper }
--  Status
--    mandatory
    DESCRIPTION
        "A vtpPruningStateOperChange notification is generated
        by the device when the instance value of
        managementDomainPruningStateOper is changed."
    ::= 13

vtpBasicGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 1 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing basic status and control
--    of a VTP implementation.
--  objects
--    vtpVersion, vtpMaxVlanStorage, vtpNotificationsEnabled, 
--    managementDomainName, managementDomainLocalMode, 
--    managementDomainConfigRevNumber, managementDomainLastUpdater, 
--    managementDomainLastChange, managementDomainTftpServer, 
--    managementDomainTftpPathname, managementDomainRowStatus

vtpVlanInfoGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 13 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects for monitoring VLAN information.
--  objects
--    vtpVlanState, vtpVlanType, vtpVlanName, vtpVlanMtu, 
--    vtpVlanDot10Said, vtpVlanRingNumber, vtpVlanBridgeNumber, 
--    vtpVlanStpType, vtpVlanParentVlan, vtpVlanTranslationalVlan1, 
--    vtpVlanTranslationalVlan2, vtpVlanBridgeType, 
--    vtpVlanAreHopCount, vtpVlanSteHopCount, vtpVlanIsCRFBackup

vtpVlanInfoEditGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 14 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects for editing VLAN information in VTP
--    Servers.
--  objects
--    vtpVlanEditOperation, vtpVlanApplyStatus, 
--    vtpVlanEditBufferOwner, vtpVlanEditConfigRevNumber, 
--    vtpVlanEditState, vtpVlanEditType, vtpVlanEditName, 
--    vtpVlanEditMtu, vtpVlanEditDot10Said, vtpVlanEditRingNumber, 
--    vtpVlanEditBridgeNumber, vtpVlanEditStpType, 
--    vtpVlanEditParentVlan, vtpVlanEditRowStatus, 
--    vtpVlanEditTranslationalVlan1, vtpVlanEditTranslationalVlan2, 
--    vtpVlanEditBridgeType, vtpVlanEditAreHopCount, 
--    vtpVlanEditSteHopCount, vtpVlanEditIsCRFBackup

vtpStatsGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 4 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing VTP statistics.
--  objects
--    vtpInSummaryAdverts, vtpInSubsetAdverts, vtpInAdvertRequests, 
--    vtpOutSummaryAdverts, vtpOutSubsetAdverts, 
--    vtpOutAdvertRequests, vtpConfigRevNumberErrors, 
--    vtpConfigDigestErrors

vtpTrunkPortGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 5 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information on trunk
--    ports.
--  objects
--    vlanTrunkPortManagementDomain, vlanTrunkPortEncapsulationType, 
--    vlanTrunkPortVlansEnabled, vlanTrunkPortNativeVlan, 
--    vlanTrunkPortRowStatus, vlanTrunkPortSetSerialNo

vtpTrunkPortGroup2 OBJECT IDENTIFIER ::= { vtpMIBGroups 11 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    Additional functionality added to the
--    vlanTrunkPortTable.
--  objects
--    vlanTrunkPortDynamicState, vlanTrunkPortDynamicStatus, 
--    vlanTrunkPortVtpEnabled

vtpTrunkPortGroup3 OBJECT IDENTIFIER ::= { vtpMIBGroups 15 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    Additional functionality added to the
--    vlanTrunkPortTable.
--  objects
--    vlanTrunkPortEncapsulationOperType

vtpTrunkPruningGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 7 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information on VLAN
--    pruning.
--  objects
--    vlanTrunkPortInJoins, vlanTrunkPortOutJoins, 
--    vlanTrunkPortOldAdverts, vlanTrunkPortVlansPruningEligible, 
--    vlanTrunkPortVlansXmitJoined, vlanTrunkPortVlansRcvJoined

vtpTrunkPruningGroup2 OBJECT IDENTIFIER ::= { vtpMIBGroups 10 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing information on whether
--    VLAN pruning is enabled.
--  objects
--    managementDomainPruningState

vtpVersion2BasicGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 12 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    The object required to indicate the version of VTP in
--    use by a management domain.
--  objects
--    managementDomainVersionInUse

vtp4kVlanGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 16 }
-- OBJECT-GROUP
--  Status
--    deprecated
--  Descr
--    A collection of objects providing information
--    for VLANS with VlanIndex from 1024 to 4095.
--    vtp4kVlanGroup object is superseded by vtp4kVlanGroupRev1.
--  objects
--    vtpVlanTypeExt, vtpVlanEditTypeExt, 
--    vlanTrunkPortVlansEnabled2k, vlanTrunkPortVlansEnabled3k, 
--    vlanTrunkPortVlansEnabled4k, vtpVlansPruningEligible2k, 
--    vtpVlansPruningEligible3k, vtpVlansPruningEligible4k, 
--    vlanTrunkPortVlansXmitJoined2k, 
--    vlanTrunkPortVlansXmitJoined3k, 
--    vlanTrunkPortVlansXmitJoined4k, vlanTrunkPortVlansRcvJoined2k, 
--    vlanTrunkPortVlansRcvJoined3k, vlanTrunkPortVlansRcvJoined4k

vtpDot1qTunnelGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 17 }
-- OBJECT-GROUP
--  Status
--    deprecated
--  Descr
--    A collection of objects providing information
--    for dot1qtunnel feature.
--    vtpDot1qTunnelGroup object is superseded by vtpDot1qTunnelGroup2.
--  objects
--    vlanTrunkPortsDot1qTag, vlanTrunkPortDot1qTunnel

vtpVlanIfIndexGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 18 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information
--    for mapping of VLAN ID to its corresponding
--    ifIndex.
--  objects
--    vtpVlanIfIndex

vtpVlanInfoEditGroup2 OBJECT IDENTIFIER ::= { vtpMIBGroups 19 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects for editing VLAN information when
--    only one VLAN is allowed to be edited for each 'apply'
--    operation.
--  objects
--    vtpVlanEditModifiedVlan

vtp4kVlanGroupRev1 OBJECT IDENTIFIER ::= { vtpMIBGroups 20 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information
--    for VLANS with VlanIndex from 1024 to 4095.
--  objects
--    vtpVlanTypeExt, vtpVlanEditTypeExt2, 
--    vlanTrunkPortVlansEnabled2k, vlanTrunkPortVlansEnabled3k, 
--    vlanTrunkPortVlansEnabled4k, vtpVlansPruningEligible2k, 
--    vtpVlansPruningEligible3k, vtpVlansPruningEligible4k, 
--    vlanTrunkPortVlansXmitJoined2k, 
--    vlanTrunkPortVlansXmitJoined3k, 
--    vlanTrunkPortVlansXmitJoined4k, vlanTrunkPortVlansRcvJoined2k, 
--    vlanTrunkPortVlansRcvJoined3k, vlanTrunkPortVlansRcvJoined4k

vtpNotificationObjectsGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 21 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects included in VTP notifications.
--  objects
--    vtpVlanPortLocalSegment

vtpDot1qTunnelGroup2 OBJECT IDENTIFIER ::= { vtpMIBGroups 22 }
-- OBJECT-GROUP
--  Status
--    deprecated
--  Descr
--    A collection of objects providing information
--    for dot1qtunnel feature.
--  objects
--    vlanTrunkPortsDot1qTag

vtpVlanNotifEnabledGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 24 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects to indicate whether a
--    certain group of notifications are enabled.
--  objects
--    vtpVlanCreatedNotifEnabled, vtpVlanDeletedNotifEnabled

vtpDiscoverGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 27 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information of
--    VTP discovery.
--  objects
--    vtpDiscoverAction, vtpDiscoverStatus, vtpLastDiscoverTime, 
--    vtpDiscoverResultIndex, vtpDiscoverResultDatabaseName, 
--    vtpDiscoverResultConflicting, vtpDiscoverResultDeviceId, 
--    vtpDiscoverResultPrimaryServer, vtpDiscoverResultRevNumber, 
--    vtpDiscoverResultSystemName

vtpDatabaseGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 28 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information of
--    VTP databases.
--  objects
--    vtpDatabaseName, vtpDatabaseLocalMode, vtpDatabaseRevNumber, 
--    vtpDatabasePrimaryServer, vtpDatabasePrimaryServerId, 
--    vtpDatabaseTakeOverPrimary, vtpDatabaseTakeOverPassword

vtpAuthGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 29 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information of
--    VTP authentication mechanism.
--  objects
--    vtpAuthPassword, vtpAuthPasswordType, vtpAuthSecretKey

vtpInternalVlanGrp OBJECT IDENTIFIER ::= { vtpMIBGroups 32 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information of
--    internal VLANs.
--  objects
--    vtpInternalVlanAllocPolicy, vtpInternalVlanOwner

vlanStatsGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 33 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing VLAN statistics
--    information in the system.
--  objects
--    vlanStatsVlans, vlanStatsExtendedVlans, 
--    vlanStatsInternalVlans, vlanStatsFreeVlans

vtpTrunkPruningGroup3 OBJECT IDENTIFIER ::= { vtpMIBGroups 36 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing information on
--    operational VTP pruning state in a manamgement domain.
--  objects
--    managementDomainPruningStateOper

vlanTrunkPortActiveVlansGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 38 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing active vlan
--    information for a trunking port in a management
--    domain.
--  objects
--    vlanTrunkPortVlansActiveFirst2k, 
--    vlanTrunkPortVlansActiveSecond2k

vtpSourceInterfaceGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 39 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing the preferred source
--    interface for the VTP IP updater address.
--  objects
--    managementDomainAdminSrcIf, managementDomainSourceOnlyMode, 
--    managementDomainOperSrcIf

vtpConfigFileGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 40 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing the location of VTP
--    configuration file.
--  objects
--    managementDomainConfigFile

vtpVlanLocalShutdownGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 41 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing the VLAN local shutdown
--    state.
--  objects
--    vtpVlanLocalShutdown

vtpLocalUpdaterGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 42 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing the local updater IP address.
--  objects
--    managementDomainLocalUpdaterType, 
--    managementDomainLocalUpdater

vtpDeviceIdGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 43 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of object providing the device id.
--  objects
--    managementDomainDeviceID

vtpConfigNotificationsGroup OBJECT IDENTIFIER ::= { vtpMIBGroups 6 }
-- NOTIFICATION-GROUP
--  Status
--    deprecated
--  Descr
--    The notifications which a VTP implementation is
--    required to implement.
--    vtpConfigNotificationsGroup object is superseded by vtpConfigNotificationsGroupRev1, vtpConfigNotificationsGroup5.
--  notifications
--    vtpConfigDigestError, vtpConfigRevNumberError, 
--    vtpServerDisabled, vtpMtuTooBig, vtpVersionOneDeviceDetected, 
--    vlanTrunkPortDynamicStatusChange

vtpConfigNotificationsGroup2 OBJECT IDENTIFIER ::= { vtpMIBGroups 23 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The notifications which a VTP implementation is
--    required to implement.
--  notifications
--    vtpLocalModeChanged, vtpVersionInUseChanged

vtpConfigNotificationsGroup3 OBJECT IDENTIFIER ::= { vtpMIBGroups 25 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The notifications implemented by a device which
--    supports these features.
--  notifications
--    vtpVlanCreated, vtpVlanDeleted

vtpConfigNotificationsGroup4 OBJECT IDENTIFIER ::= { vtpMIBGroups 26 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The notifications implemented by a device which
--    supports these features.
--  notifications
--    vtpVlanRingNumberConflict

vtpConfigNotificationsGroupRev1 OBJECT IDENTIFIER ::= { vtpMIBGroups 30 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The notifications which a VTP implementation is
--    required to implement.
--  notifications
--    vtpConfigDigestError, vtpConfigRevNumberError, 
--    vtpVersionOneDeviceDetected, vlanTrunkPortDynamicStatusChange

vtpConfigNotificationsGroup5 OBJECT IDENTIFIER ::= { vtpMIBGroups 31 }
-- NOTIFICATION-GROUP
--  Status
--    deprecated
--  Descr
--    The additional notifications that may be
--    related to a VTP implementation.
--    vtpConfigNotificationsGroup5 object is superseded by vtpConfigNotificationsGroup6, vtpConfigNotificationsGroup7.
--  notifications
--    vtpServerDisabled, vtpMtuTooBig

vtpConfigNotificationsGroup6 OBJECT IDENTIFIER ::= { vtpMIBGroups 34 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The additional notifications that may be
--    related to a VTP implementation.
--  notifications
--    vtpServerDisabled

vtpConfigNotificationsGroup7 OBJECT IDENTIFIER ::= { vtpMIBGroups 35 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The additional notifications that may be
--    related to a VTP implementation.
--  notifications
--    vtpMtuTooBig

vtpConfigNotificationsGroup8 OBJECT IDENTIFIER ::= { vtpMIBGroups 37 }
-- NOTIFICATION-GROUP
--  Status
--    mandatory
--  Descr
--    The additional notifications for operational
--    VTP pruning state change in a management domain.
--  notifications
--    vtpPruningStateOperChange

vtpMIBCompliance OBJECT IDENTIFIER ::= { vtpMIBCompliances 1 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan

vtpMIBCompliance2 OBJECT IDENTIFIER ::= { vtpMIBCompliances 2 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan

vtpMIBCompliance3 OBJECT IDENTIFIER ::= { vtpMIBCompliances 3 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroup
--   OptGroup
--    vtpDot1qTunnelGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortDot1qTunnel

vtpMIBCompliance4 OBJECT IDENTIFIER ::= { vtpMIBCompliances 4 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroup
--   OptGroup
--    vtpDot1qTunnelGroup
--   OptGroup
--    vtpVlanIfIndexGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortDot1qTunnel

vtpMIBCompliance5 OBJECT IDENTIFIER ::= { vtpMIBCompliances 5 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroup
--   OptGroup
--    vtpDot1qTunnelGroup
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortDot1qTunnel

vtpMIBCompliance6 OBJECT IDENTIFIER ::= { vtpMIBCompliances 6 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpDot1qTunnelGroup
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2
--   ObjVar
--    vlanTrunkPortDot1qTunnel

vtpMIBCompliance7 OBJECT IDENTIFIER ::= { vtpMIBCompliances 7 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpDot1qTunnelGroup
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2
--   ObjVar
--    vlanTrunkPortDot1qTunnel

vtpMIBCompliance8 OBJECT IDENTIFIER ::= { vtpMIBCompliances 8 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpDot1qTunnelGroup2
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance9 OBJECT IDENTIFIER ::= { vtpMIBCompliances 9 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance10 OBJECT IDENTIFIER ::= { vtpMIBCompliances 10 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroup
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance11 OBJECT IDENTIFIER ::= { vtpMIBCompliances 11 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance12 OBJECT IDENTIFIER ::= { vtpMIBCompliances 12 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   OptGroup
--    vtpInternalVlanGrp
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance13 OBJECT IDENTIFIER ::= { vtpMIBCompliances 13 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   OptGroup
--    vtpInternalVlanGrp
--   OptGroup
--    vlanStatsGroup
--   OptGroup
--    vtpConfigNotificationsGroup6
--   OptGroup
--    vtpConfigNotificationsGroup7
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vtpVlanEditTypeExt2

vtpMIBCompliance14 OBJECT IDENTIFIER ::= { vtpMIBCompliances 14 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpTrunkPruningGroup
--   OptGroup
--    vtpTrunkPruningGroup2
--   OptGroup
--    vtpTrunkPortGroup2
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtpTrunkPortGroup3
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpConfigNotificationsGroup2
--   OptGroup
--    vtpConfigNotificationsGroup3
--   OptGroup
--    vtpConfigNotificationsGroup4
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   OptGroup
--    vtpInternalVlanGrp
--   OptGroup
--    vlanStatsGroup
--   OptGroup
--    vtpConfigNotificationsGroup6
--   OptGroup
--    vtpConfigNotificationsGroup7
--   OptGroup
--    vtpTrunkPruningGroup3
--   OptGroup
--    vtpConfigNotificationsGroup8
--   ObjVar
--    vtpNotificationsEnabled
--   ObjVar
--    vtpVlanCreatedNotifEnabled
--   ObjVar
--    vtpVlanDeletedNotifEnabled
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainPruningState
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vtpInternalVlanAllocPolicy
--   ObjVar
--    vtpVlanEditOperation
--   ObjVar
--    vtpVlanEditBufferOwner
--   ObjVar
--    vtpVlanEditConfigRevNumber
--   ObjVar
--    vtpVlanEditState
--   ObjVar
--    vtpVlanEditType
--   ObjVar
--    vtpVlanEditName
--   ObjVar
--    vtpVlanEditMtu
--   ObjVar
--    vtpVlanEditDot10Said
--   ObjVar
--    vtpVlanEditRingNumber
--   ObjVar
--    vtpVlanEditBridgeNumber
--   ObjVar
--    vtpVlanEditStpType
--   ObjVar
--    vtpVlanEditParentVlan
--   ObjVar
--    vtpVlanEditRowStatus
--   ObjVar
--    vtpVlanEditTranslationalVlan1
--   ObjVar
--    vtpVlanEditTranslationalVlan2
--   ObjVar
--    vtpVlanEditBridgeType
--   ObjVar
--    vtpVlanEditAreHopCount
--   ObjVar
--    vtpVlanEditSteHopCount
--   ObjVar
--    vtpVlanEditIsCRFBackup
--   ObjVar
--    vtpVlanEditTypeExt2
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortVlansEnabled
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortVlansPruningEligible
--   ObjVar
--    vlanTrunkPortDynamicState
--   ObjVar
--    vlanTrunkPortVtpEnabled
--   ObjVar
--    vlanTrunkPortVlansEnabled2k
--   ObjVar
--    vlanTrunkPortVlansEnabled3k
--   ObjVar
--    vlanTrunkPortVlansEnabled4k
--   ObjVar
--    vtpVlansPruningEligible2k
--   ObjVar
--    vtpVlansPruningEligible3k
--   ObjVar
--    vtpVlansPruningEligible4k
--   ObjVar
--    vlanTrunkPortSetSerialNo
--   ObjVar
--    vtpDiscoverAction
--   ObjVar
--    vtpDatabaseLocalMode
--   ObjVar
--    vtpDatabaseTakeOverPrimary
--   ObjVar
--    vtpDatabaseTakeOverPassword
--   ObjVar
--    vtpAuthPassword
--   ObjVar
--    vtpAuthPasswordType
--   ObjVar
--    vtpAuthSecretKey

vtpMIBCompliance15 OBJECT IDENTIFIER ::= { vtpMIBCompliances 15 }
-- MODULE-COMPLIANCE
--  Status
--    deprecated
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpTrunkPruningGroup
--   OptGroup
--    vtpTrunkPruningGroup2
--   OptGroup
--    vtpTrunkPortGroup2
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtpTrunkPortGroup3
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpConfigNotificationsGroup2
--   OptGroup
--    vtpConfigNotificationsGroup3
--   OptGroup
--    vtpConfigNotificationsGroup4
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   OptGroup
--    vtpInternalVlanGrp
--   OptGroup
--    vlanStatsGroup
--   OptGroup
--    vtpConfigNotificationsGroup6
--   OptGroup
--    vtpConfigNotificationsGroup7
--   OptGroup
--    vtpTrunkPruningGroup3
--   OptGroup
--    vtpConfigNotificationsGroup8
--   OptGroup
--    vlanTrunkPortActiveVlansGroup
--   ObjVar
--    vtpNotificationsEnabled
--   ObjVar
--    vtpVlanCreatedNotifEnabled
--   ObjVar
--    vtpVlanDeletedNotifEnabled
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainPruningState
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vtpInternalVlanAllocPolicy
--   ObjVar
--    vtpVlanEditOperation
--   ObjVar
--    vtpVlanEditBufferOwner
--   ObjVar
--    vtpVlanEditConfigRevNumber
--   ObjVar
--    vtpVlanEditState
--   ObjVar
--    vtpVlanEditType
--   ObjVar
--    vtpVlanEditName
--   ObjVar
--    vtpVlanEditMtu
--   ObjVar
--    vtpVlanEditDot10Said
--   ObjVar
--    vtpVlanEditRingNumber
--   ObjVar
--    vtpVlanEditBridgeNumber
--   ObjVar
--    vtpVlanEditStpType
--   ObjVar
--    vtpVlanEditParentVlan
--   ObjVar
--    vtpVlanEditRowStatus
--   ObjVar
--    vtpVlanEditTranslationalVlan1
--   ObjVar
--    vtpVlanEditTranslationalVlan2
--   ObjVar
--    vtpVlanEditBridgeType
--   ObjVar
--    vtpVlanEditAreHopCount
--   ObjVar
--    vtpVlanEditSteHopCount
--   ObjVar
--    vtpVlanEditIsCRFBackup
--   ObjVar
--    vtpVlanEditTypeExt2
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortVlansEnabled
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortVlansPruningEligible
--   ObjVar
--    vlanTrunkPortDynamicState
--   ObjVar
--    vlanTrunkPortVtpEnabled
--   ObjVar
--    vlanTrunkPortVlansEnabled2k
--   ObjVar
--    vlanTrunkPortVlansEnabled3k
--   ObjVar
--    vlanTrunkPortVlansEnabled4k
--   ObjVar
--    vtpVlansPruningEligible2k
--   ObjVar
--    vtpVlansPruningEligible3k
--   ObjVar
--    vtpVlansPruningEligible4k
--   ObjVar
--    vlanTrunkPortSetSerialNo
--   ObjVar
--    vtpDiscoverAction
--   ObjVar
--    vtpDatabaseLocalMode
--   ObjVar
--    vtpDatabaseTakeOverPrimary
--   ObjVar
--    vtpDatabaseTakeOverPassword
--   ObjVar
--    vtpAuthPassword
--   ObjVar
--    vtpAuthPasswordType
--   ObjVar
--    vtpAuthSecretKey

vtpMIBCompliance16 OBJECT IDENTIFIER ::= { vtpMIBCompliances 16 }
-- MODULE-COMPLIANCE
--  Status
--    mandatory
--  Descr
--    The compliance statement for VTP implementations.
--  Module
--    >>current<<
--   MandGroup
--    vtpBasicGroup
--   MandGroup
--    vtpVlanInfoGroup
--   MandGroup
--    vtpConfigNotificationsGroupRev1
--   MandGroup
--    vtpStatsGroup
--   MandGroup
--    vtpTrunkPortGroup
--   MandGroup
--    vtpVersion2BasicGroup
--   MandGroup
--    vtpNotificationObjectsGroup
--   OptGroup
--    vtpTrunkPruningGroup
--   OptGroup
--    vtpTrunkPruningGroup2
--   OptGroup
--    vtpTrunkPortGroup2
--   OptGroup
--    vtpVlanInfoEditGroup
--   OptGroup
--    vtpTrunkPortGroup3
--   OptGroup
--    vtp4kVlanGroupRev1
--   OptGroup
--    vtpVlanIfIndexGroup
--   OptGroup
--    vtpVlanInfoEditGroup2
--   OptGroup
--    vtpVlanNotifEnabledGroup
--   OptGroup
--    vtpConfigNotificationsGroup2
--   OptGroup
--    vtpConfigNotificationsGroup3
--   OptGroup
--    vtpConfigNotificationsGroup4
--   OptGroup
--    vtpDiscoverGroup
--   OptGroup
--    vtpDatabaseGroup
--   OptGroup
--    vtpAuthGroup
--   OptGroup
--    vtpInternalVlanGrp
--   OptGroup
--    vlanStatsGroup
--   OptGroup
--    vtpConfigNotificationsGroup6
--   OptGroup
--    vtpConfigNotificationsGroup7
--   OptGroup
--    vtpTrunkPruningGroup3
--   OptGroup
--    vtpConfigNotificationsGroup8
--   OptGroup
--    vlanTrunkPortActiveVlansGroup
--   OptGroup
--    vtpSourceInterfaceGroup
--   OptGroup
--    vtpConfigFileGroup
--   OptGroup
--    vtpVlanLocalShutdownGroup
--   OptGroup
--    vtpLocalUpdaterGroup
--   OptGroup
--    vtpDeviceIdGroup
--   ObjVar
--    vtpNotificationsEnabled
--   ObjVar
--    vtpVlanCreatedNotifEnabled
--   ObjVar
--    vtpVlanDeletedNotifEnabled
--   ObjVar
--    managementDomainName
--   ObjVar
--    managementDomainLocalMode
--   ObjVar
--    managementDomainRowStatus
--   ObjVar
--    managementDomainTftpServer
--   ObjVar
--    managementDomainTftpPathname
--   ObjVar
--    managementDomainPruningState
--   ObjVar
--    managementDomainVersionInUse
--   ObjVar
--    vtpInternalVlanAllocPolicy
--   ObjVar
--    vtpVlanEditOperation
--   ObjVar
--    vtpVlanEditBufferOwner
--   ObjVar
--    vtpVlanEditConfigRevNumber
--   ObjVar
--    vtpVlanEditState
--   ObjVar
--    vtpVlanEditType
--   ObjVar
--    vtpVlanEditName
--   ObjVar
--    vtpVlanEditMtu
--   ObjVar
--    vtpVlanEditDot10Said
--   ObjVar
--    vtpVlanEditRingNumber
--   ObjVar
--    vtpVlanEditBridgeNumber
--   ObjVar
--    vtpVlanEditStpType
--   ObjVar
--    vtpVlanEditParentVlan
--   ObjVar
--    vtpVlanEditRowStatus
--   ObjVar
--    vtpVlanEditTranslationalVlan1
--   ObjVar
--    vtpVlanEditTranslationalVlan2
--   ObjVar
--    vtpVlanEditBridgeType
--   ObjVar
--    vtpVlanEditAreHopCount
--   ObjVar
--    vtpVlanEditSteHopCount
--   ObjVar
--    vtpVlanEditIsCRFBackup
--   ObjVar
--    vtpVlanEditTypeExt2
--   ObjVar
--    vlanTrunkPortManagementDomain
--   ObjVar
--    vlanTrunkPortEncapsulationType
--   ObjVar
--    vlanTrunkPortVlansEnabled
--   ObjVar
--    vlanTrunkPortNativeVlan
--   ObjVar
--    vlanTrunkPortRowStatus
--   ObjVar
--    vlanTrunkPortVlansPruningEligible
--   ObjVar
--    vlanTrunkPortDynamicState
--   ObjVar
--    vlanTrunkPortVtpEnabled
--   ObjVar
--    vlanTrunkPortVlansEnabled2k
--   ObjVar
--    vlanTrunkPortVlansEnabled3k
--   ObjVar
--    vlanTrunkPortVlansEnabled4k
--   ObjVar
--    vtpVlansPruningEligible2k
--   ObjVar
--    vtpVlansPruningEligible3k
--   ObjVar
--    vtpVlansPruningEligible4k
--   ObjVar
--    vlanTrunkPortSetSerialNo
--   ObjVar
--    vtpDiscoverAction
--   ObjVar
--    vtpDatabaseLocalMode
--   ObjVar
--    vtpDatabaseTakeOverPrimary
--   ObjVar
--    vtpDatabaseTakeOverPassword
--   ObjVar
--    vtpAuthPassword
--   ObjVar
--    vtpAuthPasswordType
--   ObjVar
--    vtpAuthSecretKey
--   ObjVar
--    managementDomainAdminSrcIf
--   ObjVar
--    managementDomainConfigFile
--   ObjVar
--    vtpVlanLocalShutdown


END

