-- =============================================================================
-- Copyright (c) 2010-2014 Hewlett-Packard Development Company, L.P.
--
-- Description: Multiprotocol Label Switching MIB
-- Reference:
-- Version: V1.0
-- History:
--   V1.0 2013-06-13 Initial version Created by Neng Yan
-- =============================================================================
HPN-ICF-MPLSEXT-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32
        FROM SNMPv2-SMI
    RowStatus, TruthValue
        FROM SNMPv2-TC
    hpnicfCommon
        FROM HPN-ICF-OID-MIB
    ;

-- =============================================================================
-- module identity part
-- =============================================================================
hpnicfMplsExt MODULE-IDENTITY
    LAST-UPDATED
        "201306131800Z"        -- Jan 13, 2013 at 18:00 GMT
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "Multiprotocol Label Switching MIB"
    REVISION
        "201306131800Z"   -- Jan 13, 2013 at 18:00 GMT
    DESCRIPTION
        "Initial version of this MIB."
    ::= { hpnicfCommon 142 }

-- =============================================================================
-- object definition begin
-- =============================================================================
hpnicfMplsExtObjects      OBJECT IDENTIFIER ::= { hpnicfMplsExt 1 }

hpnicfMplsExtScalarGroup  OBJECT IDENTIFIER ::= { hpnicfMplsExtObjects 1 }

hpnicfMplsExtLsrID    OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The Label Switching Router's Identifier."
    ::= { hpnicfMplsExtScalarGroup 1 }

hpnicfMplsExtLdpStatus    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The global configuration of LDP(Label Distribution Protocol)."
    ::= { hpnicfMplsExtScalarGroup 2 }

-- =============================================================================
-- hpnicfMplsExtTable Definition
-- =============================================================================
hpnicfMplsExtTable  OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfMplsExtEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for configuring
        MPLS(Multiprotocol Label Switching) parameters."
    ::= { hpnicfMplsExtObjects 2 }

hpnicfMplsExtEntry   OBJECT-TYPE
    SYNTAX      HpnicfMplsExtEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for configuring MPLS parameters."
    INDEX
    {
        hpnicfMplsExtIndex
    }
    ::= { hpnicfMplsExtTable 1 }

HpnicfMplsExtEntry ::=
    SEQUENCE
    {
        hpnicfMplsExtIndex               Unsigned32,
        hpnicfMplsExtCapability          TruthValue,
        hpnicfMplsExtMtu                 Unsigned32,
        hpnicfMplsExtRowStatus           RowStatus
    }

hpnicfMplsExtIndex   OBJECT-TYPE
    SYNTAX      Unsigned32(1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of MPLS interface."
    ::= { hpnicfMplsExtEntry 1 }

hpnicfMplsExtCapability    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The MPLS capability of an interface."
    DEFVAL { false }
    ::= { hpnicfMplsExtEntry 2 }

hpnicfMplsExtMtu     OBJECT-TYPE
    SYNTAX      Unsigned32(46..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The MPLS MTU(Maximum Transmission Unit) of an interface."
    ::= { hpnicfMplsExtEntry 3 }

hpnicfMplsExtRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry."
    ::= { hpnicfMplsExtEntry 4 }
-- =============================================================================
-- End of hpnicfMplsExtTable Definition
-- =============================================================================

-- =============================================================================
-- hpnicfMplsExtLdpTable Definition
-- =============================================================================
hpnicfMplsExtLdpTable     OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfMplsExtLdpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table for configuring LDP parameters."
    ::= { hpnicfMplsExtObjects 3 }

hpnicfMplsExtLdpEntry     OBJECT-TYPE
    SYNTAX      HpnicfMplsExtLdpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry for configuring LDP parameters."
    INDEX
    {
        hpnicfMplsExtLdpIndex
    }
    ::= { hpnicfMplsExtLdpTable 1 }

HpnicfMplsExtLdpEntry ::=
    SEQUENCE
    {
        hpnicfMplsExtLdpIndex                 Unsigned32,
        hpnicfMplsExtLdpCapability            TruthValue,
        hpnicfMplsExtLdpRowStatus             RowStatus
    }

hpnicfMplsExtLdpIndex     OBJECT-TYPE
    SYNTAX      Unsigned32(1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of LDP interface."
    ::= { hpnicfMplsExtLdpEntry 1 }

hpnicfMplsExtLdpCapability    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The LDP capability of an interface."
    DEFVAL { false }
    ::= { hpnicfMplsExtLdpEntry 2 }

hpnicfMplsExtLdpRowStatus     OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Operation status of this table entry.  A row entry cannot
        be modified when the value of this object is 'active'."
    ::= { hpnicfMplsExtLdpEntry 3 }
-- =============================================================================
-- End of hpnicfMplsExtLdpTable Definition
-- =============================================================================

END
