--  *****************************************************************
--  DLINKPRIME-LLDP-EXT-MIB.mib : LLDP Extension MIB
--
--  Copyright (c) 2014 D-Link Corporation, all rights reserved.
--
--  *****************************************************************
DLINKPRIME-LLDP-EXT-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        MODULE-IDENTITY, OBJECT-IDENTITY, OBJECT-TYPE,Integer32
            FROM SNMPv2-SMI
		MODULE-COMPLIANCE, OBJECT-GROUP
		    FROM SNMPv2-CONF			
        TruthValue
		    FROM SNMPv2-TC
        SnmpAdminString
            FROM SNMP-FRAMEWORK-MIB
		dlinkPrimeCommon           
            FROM DLINK-ID-REC-MIB;	
           
    dlinkPrimeLldpExtMIB MODULE-IDENTITY
        LAST-UPDATED "201406030000Z"
        ORGANIZATION "D-Link Corp."
        CONTACT-INFO
            "        D-Link Corporation

             Postal: No. 289, Sinhu 3rd Rd., Neihu District,
                     Taipei City 114, Taiwan, R.O.C
             Tel:     +886-2-66000123
             E-mail: tsd@dlink.com.tw
            "
        DESCRIPTION
            "This MIB module defines objects for DLINK LLDP private function."
        REVISION "201406030000Z"
        DESCRIPTION
            "This is the first version of the MIB file.
            "
        ::= { dlinkPrimeCommon 8 }

-- -----------------------------------------------------------------------------
    dpLldpExtMIBNotifications    OBJECT IDENTIFIER ::= { dlinkPrimeLldpExtMIB 0 }
    dpLldpExtMIBObjects          OBJECT IDENTIFIER ::= { dlinkPrimeLldpExtMIB 1 }
    dpLldpExtMIBConformance      OBJECT IDENTIFIER ::= { dlinkPrimeLldpExtMIB 2 }
-- -----------------------------------------------------------------------------

    dpLldpExtLldpEnabled OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates whether the LLDP feature is
            globally enabled.
            " 
        ::= { dpLldpExtMIBObjects 1 }
		
	dpLldpExtLldpTrapEnabled OBJECT-TYPE
        SYNTAX          TruthValue
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
            "This object indicates whether the LLDP Trap feature is
            globally enabled.
            " 
        ::= { dpLldpExtMIBObjects 2 }
	

-- -----------------------------------------------------------------------------

    dpLldpExtRemTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF DpLldpExtRemEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "This table contains one or more rows per physical network
                connection known to this agent.  The agent may wish to ensure
                that only one DpLldpExtRemEntry is present for each local port,
                or it may choose to maintain multiple lldpRemEntries for
                the same local port."
        ::= { dpLldpExtMIBObjects 3 }

    dpLldpExtRemEntry OBJECT-TYPE
        SYNTAX      DpLldpExtRemEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "Information about a particular physical network connection.
                Entries may be created and deleted in this table by the agent,
                if a physical topology discovery process is active."
        INDEX   {
               dpLldpExtRemLocalPortNum,
               dpLldpExtRemIndex
        }
        ::= { dpLldpExtRemTable 1 }

    DpLldpExtRemEntry ::= SEQUENCE {
          dpLldpExtRemLocalPortNum       Integer32,
          dpLldpExtRemIndex              Integer32,
          dpLldpExtRemChassisIdSubtype   INTEGER,
          dpLldpExtRemChassisId          OCTET STRING,
          dpLldpExtRemPortIdSubtype      INTEGER,
          dpLldpExtRemPortId             OCTET STRING,
          dpLldpExtRemPortDesc           SnmpAdminString
    }

    dpLldpExtRemLocalPortNum  OBJECT-TYPE
        SYNTAX      Integer32 (1..4096)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "The index value used to identify the port component
                (contained in the local chassis with the LLDP agent)
                associated with this entry.  The lldpRemLocalPortNum
                identifies the port on which the remote system information
                is received.

                The value of this object is used as a port index to the
                lldpRemTable."
        ::= { dpLldpExtRemEntry 1 }

    dpLldpExtRemIndex  OBJECT-TYPE
        SYNTAX      Integer32 (1..2147483647)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "This object represents an arbitrary local integer value used
                by this agent to identify a particular connection instance,
                unique only for the indicated remote system.

                An agent is encouraged to assign monotonically increasing
                index values to new entries, starting with one, after each
                reboot.  It is considered unlikely that the dpLldpExtRemIndex
                will wrap between reboots."
        ::= { dpLldpExtRemEntry 2 }

    dpLldpExtRemChassisIdSubtype  OBJECT-TYPE
        SYNTAX  INTEGER {
                chassisComponent(1),
                interfaceAlias(2),
                portComponent(3),
                macAddress(4),
                networkAddress(5),
                interfaceName(6),
                local(7)
            }

        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The type of encoding used to identify the chassis associated
                with the remote system."
        ::= { dpLldpExtRemEntry 3 }

    dpLldpExtRemChassisId  OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (1..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The string value used to identify the chassis component
                associated with the remote system."
        ::= { dpLldpExtRemEntry 4 }

    dpLldpExtRemPortIdSubtype  OBJECT-TYPE
        SYNTAX  INTEGER {
                interfaceAlias(1),
                portComponent(2),
                macAddress(3),
                networkAddress(4),
                interfaceName(5),
                agentCircuitId(6),
                local(7)
            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The type of port identifier encoding used in the associated
                'dpLldpExtRemPortId' object."
        ::= { dpLldpExtRemEntry 5 }

    dpLldpExtRemPortId  OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (1..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The string value used to identify the port component
                associated with the remote system."
        ::= { dpLldpExtRemEntry 6 }

    dpLldpExtRemPortDesc  OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The string value used to identify the description of
                the given port associated with the remote system."
        ::= { dpLldpExtRemEntry 7 }

-- -----------------------------------------------------------------------------
-- MIB Notifications statements
-- -----------------------------------------------------------------------------
    dpLldpExtDatabaseChanged    NOTIFICATION-TYPE
        STATUS        current
        DESCRIPTION
            "This trap is sent when LLDP database changed."
        ::= { dpLldpExtMIBNotifications 1 }


    

-- ------------------------------------------------------------------------------------
-- MIB Conformance statements
-- ------------------------------------------------------------------------------------
	dpLldpExtMIBCompliances  OBJECT IDENTIFIER    ::= { dpLldpExtMIBConformance 1 }	
	dpLldpExtMIBGroups  OBJECT IDENTIFIER    ::= { dpLldpExtMIBConformance 2 } 	
-- compliance statements

    dpLldpExtMIBCompliance MODULE-COMPLIANCE
        STATUS      current
        DESCRIPTION
            "The compliance statement for entities which
             implement the DLINKPRIME-LLDP-EXT-MIB."
        MODULE      -- this module
        MANDATORY-GROUPS       {
            dpLldpExtBasicCfgGroup
        }        
	    ::= { dpLldpExtMIBCompliances 1 }
	
    dpLldpExtBasicCfgGroup OBJECT-GROUP
		OBJECTS   {   
            dpLldpExtLldpEnabled,
			dpLldpExtLldpTrapEnabled
		}
		STATUS      current
		DESCRIPTION 
		    "A collection of objects configures the LLDP feature."
		::= { dpLldpExtMIBGroups 1 }
    
END	

