-- Copyright (C) 2008-2014 Super Micro Computer Inc. All Rights Reserved

-- $Id: fslldp.mib,v 1.14 2013/04/16 13:30:07 siva Exp $

-- LLDP Proprietary MIB Definition  
-- This MIB contains tables used to configure a switch running 
-- LLDP in addition to the standard MIB.
 
    SUPERMICRO-LLDP-MIB DEFINITIONS ::= BEGIN 
 
    IMPORTS 
      MODULE-IDENTITY, OBJECT-TYPE, enterprises, Integer32, NOTIFICATION-TYPE
          FROM SNMPv2-SMI
      ZeroBasedCounter32
          FROM RMON2-MIB
      DisplayString, MacAddress, RowStatus
          FROM SNMPv2-TC
      InterfaceIndex
          FROM IF-MIB
      lldpLocPortNum, lldpRemChassisId, lldpRemPortId,
      lldpRemSysName, lldpRemManAddrIfId, lldpLocPortId,
      lldpStatsRemTablesInserts,
      lldpStatsRemTablesAgeouts, lldpStatsRemTablesDeletes,
      lldpStatsRemTablesDrops, lldpLocManAddrEntry,
      LldpPortNumber
        FROM LLDP-MIB
      lldpXdot1RemPortVlanId, lldpXdot1RemVlanName,
      lldpXdot1RemProtocolId, lldpXdot1RemProtoVlanSupported
        FROM LLDP-EXT-DOT1-MIB 
      lldpXdot3RemLinkAggStatus, lldpXdot3RemPowerClass, 
      lldpXdot3RemMaxFrameSize, lldpXdot3RemPortOperMauType
        FROM LLDP-EXT-DOT3-MIB
      LldpV2DestAddressTableIndex
        FROM LLDP-V2-TC-MIB; 
 
      fslldp MODULE-IDENTITY 
         LAST-UPDATED "201209050000Z" 
         ORGANIZATION "Super Micro Computer Inc." 
         CONTACT-INFO "support@Supermicro.com" 
         DESCRIPTION 
            " The proprietary MIB module for LLDP. " 
	 REVISION "201209050000Z"
         DESCRIPTION "" 
         ::=  { enterprises supermicro-computer-inc(10876) super-switch(101) basic(1) 158 } 
  
-- ------------------------------------------------------------  
-- groups in the MIB  
-- ------------------------------------------------------------ 
 
      fsLldpSystem        OBJECT IDENTIFIER ::= { fslldp 1 } 
      fsLldpTLV           OBJECT IDENTIFIER ::= { fslldp 2 } 
      fsLldpStatistics    OBJECT IDENTIFIER ::= { fslldp 3 }
      fsLldpNotification  OBJECT IDENTIFIER ::= { fslldp 4 }
      fslldpv2Config      OBJECT IDENTIFIER ::= { fslldp 5 }

 
-- ------------------------------------------------------------------ 
-- The LLDP System Group 
-- ------------------------------------------------------------------ 
 
      fsLldpSystemControl OBJECT-TYPE 
          SYNTAX      INTEGER  {
                        start(1),
                        shutdownInProgress(2),
                        shutdown(3)
                      } 
          MAX-ACCESS  read-write 
          STATUS      current 
          DESCRIPTION 
              "The administrative system control status of LLDP 
               module. The value 'start' (1) indicates that all
               resources required by LLDP module should be allocated 
               and LLDP should be supported in the device on all ports. 
               The value 'shutdown' (3) indicates that LLDP should be 
               shutdown in the device on all ports and all allocated 
               memory must be released.

              Here, start and shutdown are configurable values.
              shutdownInProgress can only be read and cannot be wriiten.
              When 'shutdown' (3)is configured, the value is changed to
              'shutdownInProgress' (2). This is because shutdownInProgress
              is used to indicate that shutdown process has been initiated
              by setting the object as shutdown but the process is not
              comitted. The value should be changed to shutdown once
              LLDP is shut on all ports and memory is released."
          DEFVAL  { start }
          ::= { fsLldpSystem 1 } 
          
      fsLldpModuleStatus OBJECT-TYPE 
          SYNTAX      INTEGER  { enabled(1), disabled(2) } 
          MAX-ACCESS  read-write
          STATUS      current 
          DESCRIPTION 
             "The administrative module status of LLDP module. 
              This enables or disables LLDP in the system. A value of 
              'enabled' (1) indicates that LLDP is enabled in the device
              and can be enabled port-wise. A value of 'disabled' (2) 
              indicates that LLDP is disabled in the device and also
              disabled on all ports.
             
              When LLLDP module status is changed from enabled to disabled, 
              a global timer (instead of port specific timers) is started 
              to ensure the successful transmission of shutdown frame on 
              all ports. Module status change from disabled to enabled is 
              not allowed when the global timer is running (i.e., when disable
              is in progress)."
          DEFVAL  { disabled }
          ::= { fsLldpSystem 2 } 

      fsLldpTraceInput OBJECT-TYPE 
          SYNTAX      DisplayString (SIZE(1..288))          
          MAX-ACCESS  read-write 
          STATUS      current 
          DESCRIPTION
            "This object stores the trace option string input given by the user.
             To enable particular trace the user has to enter
             the corresponding string(given below) assigned for that. 
             And for enabling more than once traces the user has to enter the 
             corresponding strings with SPACE delimiter between each string. 

             For example, to enable
                 - Init and Shutdown traces
                 - Management traces
                 - Neighbor delete traces
                 - LLDP Port-descr TLV traces and
                 - LLDP Power-via-mdi TLV traces
             The input string is,
             enable init-shut mgmt neigh port-descr pwr-mdi
             For example to disable 
                 - Init and Shutdown traces
                 - Management traces
                 - Neighbor delete traces
                 - LLDP Port-descr TLV traces and
                 - LLDP Power-via-mdi TLV traces
             The input string is,
             disable init-shut mgmt neigh port-descr pwr-mdi
             first value should be either enable or disable.

             The entered input string is parsed to get the trace options. 
             And the corresponding bits of the trace options are set in 
             fsLldpTraceOption object.
                               
             enable          - Enables the corresponding option.
             disable         - Disables the corresponding option.
             init-shut       - Init and Shutdown traces
             mgmt            - Management traces
             data            - Data Path traces
             ctrl            - Control Plane traces
             pkt-dump        - Packet Dump traces
             resource        - Traces related to all
                               resources except buffers
             all-fail        - All Failure traces
             buf             - Buffer allocation/
                               release traces          

             neigh           - Neighbor traces
             critical        - LLDP Critical traces
             redundancy      - LLDP Redundancy traces
             chassis-id      - LLDP Chassis-id TLV traces
                 
             port-id         - LLDP Port-id TLV trace
             ttl             - LLDP Ttl TLV trace
             port-descr      - LLDP Port-descr TLV traces
             sys-name        - LLDP Sys-name TLV traces
             sys-descr       - LLDP Sys-descr TLV traces
             sys-capab       - LLDP Sys-capab TLV traces
             mgmt-addr       - LLDP Mgmt-addr TLV traces
             port-vlan       - LLDP Port-vlan TLV traces
             ppvlan          - LLDP Port-proto-vlan
                               TLV traces 
             vlan-name       - LLDP Vlan-name TLV traces
             proto-id        - LLDP Proto-id TLV traces
             mac-phy         - LLDP Mac-phy TLV traces
             pwr-mdi         - LLDP Power-via-mdi TLV traces
             lagg            - LLDP Link-agg TLV traces 
             max-frame       - LLDP Max-frame-size TLV traces
             vid-digest      - LLDP VID digest TLv traces
             mgmt-vid        - LLDP Management VID TLV traces
             dcbx-cee        - LLDP DCBX (CEE) TLV and state traces

             By default critical trace is enabled." 

          DEFVAL  { "critical" }
          ::= { fsLldpSystem 3 } 

    fsLldpTraceOption OBJECT-TYPE 
          SYNTAX      Integer32          
          MAX-ACCESS  read-only
          STATUS      current 
          DESCRIPTION 
             "This object is used to store the trace options that are enabled
             by the user. The bit positions of the traces is shown below
             
             Bit 0  - init-shut
             Bit 1  - mgmt
             Bit 2  - data
             Bit 3  - ctrl
             Bit 4  - pkt-dump
             Bit 5  - resource
             Bit 6  - all-fail
             Bit 7  - buf

             Bit 8  - neigh
             Bit 9  - vid-digest
             Bit 10 - mgmt-vid
             Bit 11 - -
             Bit 12 - -
             Bit 13 - critical
             Bit 14 - redundancy
             Bit 15 - chassis-id

             Bit 16 - port-id
             Bit 17 - ttl
             Bit 18 - port-descr
             Bit 19 - sys-name
             Bit 20 - sys-descr
             Bit 21 - sys-capab
             Bit 22 - mgmt-addr
             Bit 23 - port-vlan
             
             Bit 24 - ppvlan
             Bit 25 - vlan-name
             Bit 26 - proto-id
             Bit 27 - mac-phy
             Bit 28 - pwr-mdi
             Bit 29 - lagg
             Bit 30 - max-frame
             Bit 31 - dcbx-cee

             By default critical trace(Bit 13) is set."
             
          DEFVAL { '00002000'H }
          ::= { fsLldpSystem 4 } 

-- ------------------------------------------------------------------ 
-- The LLDP TLV Group 
-- ------------------------------------------------------------------ 

   fsLldpLocChassisIdSubtype  OBJECT-TYPE
      SYNTAX      INTEGER { chassiscomp(1), ifalias(2), portcomp(3),
                            macaddr(4), nwaddr(5), ifname(6), local(7) }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
         "The type of encoding used to identify the chassis component
          associated with the local system. 
          
          When chassis id subtype is configured as chassiscomp/portcomp/local
          it is mandatory to configure the fsLldpLocChassisId object. 
          If fsLldpLocChassisId object is not configured then current value of
          fsLldpLocChassisId is advertised.
          
          When chassis id subtype is configured as ifalias/macaddr/nwaddr/
          ifname it is not required to configure fsLldpLocChassisId object. 
          System specific values are used for setting fsLldpLocChassisId 
          object."
      REFERENCE
          "IEEE 802.1AB-2005 9.5.2.2"
      DEFVAL  { macaddr }
      ::= { fsLldpTLV 1 }

   fsLldpLocChassisId  OBJECT-TYPE
      SYNTAX      OCTET STRING (SIZE (1..255))
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
         "The string value used to identify the chassis component
         associated with the local system. 
         
         Write operation to this object is allowed only when the chassis id 
         subtype is configured as chassiscomp/portcomp/local.

         When chassis id subtype is configured as ifalias/macaddr/nwaddr/ifname
         system specific values are used and hence write operation to this 
         object is not allowed."
      REFERENCE
         "IEEE 802.1AB-2005 9.5.2.3"
         ::= { fsLldpTLV 2}
fsLldpLocPortTable OBJECT-TYPE
	SYNTAX SEQUENCE OF FsLldpLocPortEntry
	MAX-ACCESS         not-accessible
	STATUS             current
	DESCRIPTION
  	  "This table contains one or more rows per port information
 	  associated with the local system known to this agent."
	::= { fsLldpTLV 3 }

     fsLldpLocPortEntry OBJECT-TYPE
	SYNTAX             FsLldpLocPortEntry
	MAX-ACCESS         not-accessible
	STATUS             current
	DESCRIPTION
  	  "Information about a particular port component.
	  Entries may be created and deleted in this table by the
   	  agent."
	INDEX {lldpLocPortNum }
	::= { fsLldpLocPortTable 1 }

     FsLldpLocPortEntry ::= SEQUENCE {
	fsLldpLocPortIdSubtype INTEGER,
	fsLldpLocPortId        OCTET STRING,
        fsLldpPortConfigNotificationType       INTEGER,
        fsLldpLocPortDstMac    MacAddress
	}
	
     fsLldpLocPortIdSubtype OBJECT-TYPE
	SYNTAX         INTEGER {ifalias(1), portcomp(2), macaddr(3), nwaddr(4), 
                                ifname(5), agentcircuitid(6), local(7) }
	MAX-ACCESS     read-write
	STATUS         current
	DESCRIPTION
     	  "The type of port identifier encoding used to identify the port 
          component associated with the local port.

          When port id subtype is configured as portcomp/local it is mandatory
          to configure the fsLldpLocPortId object. If fsLldpLocPortId 
          object is not configured then current value of fsLldpLocPortId is
          advertised.

          When port id subtype is configured as ifalias/macaddr/nwaddr/
          ifname/agentcircuitid it is not required to configure fsLldpLocPortId
          object. System specific values are used for setting fsLldpLocPortId
          object."
        REFERENCE
 	  "IEEE Std 802.1AB-2005 9.5.3.2"
        DEFVAL  { ifalias }
	::= { fsLldpLocPortEntry 1 }

     fsLldpLocPortId OBJECT-TYPE
	SYNTAX         OCTET STRING (SIZE (1..255))
	MAX-ACCESS     read-write
	STATUS         current
	DESCRIPTION
          "The string value used to identify the port component associated 
    with the local port.

    Write operation to this object is allowed only when the port id 
    subtype is configured as portcomp/local.

    When port id subtype is configured as ifalias/macaddr/nwaddr/ifname/
    agentcircuitid, system specific values are used and hence write operation to this 
    object is not allowed."
	REFERENCE
   	  "IEEE Std 802.1AB-2005 9.5.3.3"
	::= { fsLldpLocPortEntry 2 }
      fsLldpPortConfigNotificationType       OBJECT-TYPE
      SYNTAX      INTEGER  {
                             remTabChg (1), 
                             misCfg(2),
                             remTabChgAndMisCfg(3)
      } 
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
             "This object is used to set the notification type. 
    
              If the associated fsLldpNotificationType object has a value of  
              remTabChg (1),then LLDP agent sends trap notification to NMS 
              whenever remote table change occurs.

              If the associated fsLldpNotificationType object has a value of  
              misCfg (1),then LLDP agent sends trap notification to NMS 
              whenever mis-configuration is identified.

              If the associated fsLldpNotificationType object has a value of  
              remTabChgAndMisCfg(3),then LLDP agent sends trap notification to 
              NMS whenever remote table change occurs or/and whenever 
              mis-configuration is identified.

              LLDP agent send the trap messages only when  MIB Object 
              lldpPortConfigNotificationEnable is true.So 
              fsLldpNotificationType Object is valid when 
              lldpPortConfigNotificationEnable Object is true."

       DEFVAL  { misCfg }
	::= { fsLldpLocPortEntry 3 }
   
     fsLldpLocPortDstMac OBJECT-TYPE
	SYNTAX         MacAddress
	MAX-ACCESS     read-write
	STATUS         current
	DESCRIPTION
          "The Mac address to be used as destination mac for the LLDP agent.
           The default value would the LLDP multicast MAC address."

       DEFVAL  { '0180C200000E'h  }
	::= { fsLldpLocPortEntry 4 }
-- fsLldpManAddrConfigTable : Management address related objects
-- 
fsLldpManAddrConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FslldpManAddrConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The table is a enhancement of lldpLocManAddrTable in stdlldp.mib"
    ::= { fsLldpTLV 4 }
fsLldpManAddrConfigEntry OBJECT-TYPE
    SYNTAX      FslldpManAddrConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Proprietary objects for management address table.
             The table maintains the oper status of the management address.
             This table arguments lldpLocManAddrEntry.
             The fsLldpManAddrConfigOperStatus entry will be applicable for each
             entry of lldpLocManAddrEntry."
    AUGMENTS { lldpLocManAddrEntry }
    ::= { fsLldpManAddrConfigTable 1 }
FslldpManAddrConfigEntry ::= SEQUENCE {
    fsLldpManAddrConfigOperStatus INTEGER
}
fsLldpManAddrConfigOperStatus OBJECT-TYPE
    SYNTAX        INTEGER { up (1), down (2) }
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
            "This object gives the operational status of the corresponding 
             management address in the lldpLocManAddrTable."
    ::= { fsLldpManAddrConfigEntry 1 }
   
-- ------------------------------------------------------------------ 
-- The LLDP stastics Group 
-- ------------------------------------------------------------------ 
    
   fsLldpMemAllocFailure  OBJECT-TYPE
      SYNTAX      Integer32
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
         "This object gives the count of total memory allocation failures"
      ::= { fsLldpStatistics 1 }

   fsLldpInputQOverFlows  OBJECT-TYPE
      SYNTAX      Integer32
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
         "This object gives the count of total input queue overflows"
      ::= {fsLldpStatistics 2}

   fsLldpStatsRemTablesUpdates  OBJECT-TYPE
     SYNTAX      ZeroBasedCounter32
     UNITS       "table entries"
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The number of times any information advertised by a particular 
          MSAP is updated in tables contained in lldpRemoteSystemsData and
          lldpExtensions objects."
     ::= { fsLldpStatistics 3 }

-- ------------------------------------------------------------------ 
-- The LLDP Notification Group 
-- ------------------------------------------------------------------ 
    fsLldpTraps OBJECT IDENTIFIER ::= { fsLldpNotification 0 }

    fsLldpRemTablesChange NOTIFICATION-TYPE
    OBJECTS {
        lldpStatsRemTablesInserts,
        lldpStatsRemTablesDeletes,
        lldpStatsRemTablesDrops,
        lldpStatsRemTablesAgeouts,
        fsLldpStatsRemTablesUpdates
    }
    STATUS      current
    DESCRIPTION
        "A fsLldpRemTablesChange notification is sent when the value
         of lldpStatsRemTableLastChangeTime changes.  It can be
         utilized by an NMS to trigger LLDP remote systems table
         maintenance polls.

         Note that transmission of fsLldpRemTablesChange
         notifications are throttled by the agent, as specified by the
         'lldpNotificationInterval' object.
          
         The first four objects are already mentioned in the standard
         LLDP mib. As the Table Updation notification is also sent in the
         same notification PDU these objects are moved to proprietary mib."
    ::= { fsLldpTraps 1 }

    fsLldpExceedsMaxFrameSize NOTIFICATION-TYPE
    OBJECTS {
        lldpLocPortId
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpExceedsMaxFrameSize notification is sent if the size of LLDP
           frame to be transmitted exceeds the maximum frame size (1522 bytes).
           This can occur if many number of TLVs need to be included in a single
           frame .

           It notifies the NMS that the information obtained about this system
           from its neighbor is not complete."
    ::= { fsLldpTraps 2 }


    fsLldpDupChasisId NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId,
        lldpRemPortId        
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpDupChasisId notification sent if the configured 
            chasisId and Received chasisId from the neighbor is same.

            It notifies the NMS that the information obtained from its neighbor 
            is Duplicate."
       ::= {fsLldpTraps 3}

    fsLldpDupSystemName NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpRemSysName    
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpDupSystemName notification sent if the configured 
            system name and Received system name from the neighbor is same.

            It notifies the NMS that the information obtained from its neighbor 
            is Duplicate."
       ::= {fsLldpTraps 4}

    fsLldpDupManagmentAddress NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpRemManAddrIfId
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpDupManagementAddress notification sent if the configured 
            management address and Received management address from the 
            neighbor is same. The received duplicate management address is sent
            with the OID as index. Hence lldpRemManAddrIfId is sent in the
            value field.

            It notifies the NMS that the information obtained from its neighbor 
            is Duplicate."
       ::= {fsLldpTraps 5}

    fsLldpMisConfigPortVlanID NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot1RemPortVlanId
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigPortVlanID notification sent if the Port VlanId of 
            two systems connected to the same link is different.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 6}

    fsLldpMisConfigPortProtoVlanID NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot1RemProtoVlanSupported
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigPortProtoVlanID notification sent if the Port and 
            protocol VlanId of two systems connected to the same link is different.
        
            lldpRemPortId and lldpRemChassisId information sent to identify
            the remote system.
            lldpXdot1RemProtoVlanId is not accesiable since it is the index,
            so sending the lldpXdot1RemProtoVlanSupported information,
            to know which Port and Protocol VlanId is MisConfigured. PPVID will
            be sent along with the OID.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 7}

    fsLldpMisConfigVlanName NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot1RemVlanName        
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigVlanName notification sent if the vlan name 
            of two systems connected to the same link is different.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 8}

    fsLldpMisConfigProtocolIdentity NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
       lldpXdot1RemProtocolId 
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigProtocolIdentity notification sent if the protocol 
            identity information (example spanning Tree protocol, 
            the Link Aggregation protocol and proprietary protocol) of 
            two systems connected to the same link is different.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 9}

    fsLldpMisConfigLinkAggStatus NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot3RemLinkAggStatus       
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigLinkAggStatus notification sent if the 
            Link aggregation configuration of two systems connected to the same link 
            is different.
            It is possible that if one system formed a link aggregation with
            a remote port while the other system is unaware of the aggregation.
            This type of configuration may cause network loops or 
            unpredictable communication.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 10}

    fsLldpMisConfigPowerMDI NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot3RemPowerClass        
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigPowerMDI notification sent if the power class
            configuration of two systems connected to the same link is different.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 11}

    fsLldpMisConfigMaxFrameSize NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot3RemMaxFrameSize
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigMaxFrameSize notification sent if the 
            maximum frame size configuration of two systems connected to 
            the same link is different.
            
            Difference in maximum frame size can result in loss of frames if 
            the sending station advertised maximum frame size is larger 
            than the receiveing station.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 12}
       
    fsLldpMisConfigOperMauType NOTIFICATION-TYPE
    OBJECTS {
        lldpRemChassisId ,
        lldpRemPortId, 
        lldpXdot3RemPortOperMauType         
    }
    STATUS      current
    DESCRIPTION
           "A fsLldpMisConfigOperMauType  notification sent if the 
           Operational MauType of the two systems connected to the same link is different.

            It notifies the NMS that the information obtained from its neighbor 
            is mis-configured."
       ::= {fsLldpTraps 13}



     fslldpv2Version      OBJECT-TYPE
     SYNTAX  INTEGER {
                           lldpv1 (1),
                           lldpv2 (2)
                     }
     MAX-ACCESS read-write
     STATUS current
     DESCRIPTION
                "The Object to save version type to be used.
                 v1 version is lldpv1 (2005)
                 v2 version is lldpv2 (2009)"
     DEFVAL { lldpv1 }
     ::= { fslldpv2Config 1 }

      fslldpv2ConfigPortMapTable OBJECT-TYPE
      SYNTAX SEQUENCE OF Fslldpv2ConfigPortMapEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
            "In this table lldpV2LocPortIfIndex & lldpV2RemLocalDestMACAddress acts as
             index & the variable lldpLocPortNum acts as variable for the table."
      ::= { fslldpv2Config 2 }

      fslldpv2ConfigPortMapEntry OBJECT-TYPE
      SYNTAX Fslldpv2ConfigPortMapEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
            "In this table lldpV2LocPortIfIndex & lldpV2RemLocalDestMACAddress
             acts as index & the variable lldpLocPortNum acts as variable for the table"
      INDEX { fslldpv2ConfigPortMapIfIndex,
              fslldpv2ConfigPortMapDestMacAddress }
      ::=  { fslldpv2ConfigPortMapTable 1 }

      Fslldpv2ConfigPortMapEntry ::= SEQUENCE {
         fslldpv2ConfigPortMapIfIndex  LldpPortNumber,
         fslldpv2ConfigPortMapDestMacAddress  MacAddress,
         fslldpv2ConfigPortMapNum        LldpPortNumber,
         fslldpv2ConfigPortRowStatus     RowStatus }

      fslldpv2ConfigPortMapIfIndex OBJECT-TYPE
      SYNTAX LldpPortNumber
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
             "The interface index value used to identify the port associated
               with this entry. Its value is an index into the interfaces MIB.
               The value of this object is used as an index to the lldpV2LocPortTable."
      ::= { fslldpv2ConfigPortMapEntry 1 }


     fslldpv2ConfigPortMapDestMacAddress OBJECT-TYPE
     SYNTAX MacAddress
     MAX-ACCESS not-accessible
     STATUS current
     DESCRIPTION
              "The MAC address associated with this entry.
               The octet string identifies an individual or a group
               MAC address that is in use by LLDP as a destination MAC address.
               The MAC address is encoded in the octet string in canonical format (see IEEE Std 802)."
     ::= { fslldpv2ConfigPortMapEntry 2 }


     fslldpv2ConfigPortMapNum  OBJECT-TYPE
     SYNTAX      LldpPortNumber
     MAX-ACCESS  read-only
     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."
       ::= { fslldpv2ConfigPortMapEntry 3 }


    fslldpv2ConfigPortRowStatus  OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
      "Row status for the ring context entry.
       An entry can be created in this table, only when the corresponding
       virtual context is created in the system.

       Only 'createAndGo', and 'destroy' values are allowed for this
       object. 'createAndWait' and 'notInService' values are not allowed.

       When virtual context is deleted from the system, the corresponding
       entry in this table will be deleted.

       All the fields in this table can be changed, only when the row status
       is active."
     ::= { fslldpv2ConfigPortMapEntry 4  }

-- 
--  lldpV2DestAddressTable: Destination MAC addresses used by LLDP
-- 

    fslldpV2DestAddressTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF FsLldpV2DestAddressTableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The table that contains the set of MAC addresses used
            by LLDP for transmission and reception of LLDPDUs."
    ::= { fslldpv2Config 3 }

    fslldpV2DestAddressTableEntry   OBJECT-TYPE
    SYNTAX      FsLldpV2DestAddressTableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Destination MAC address information for LLDP.

            This configuration parameter identifies a MAC address
            corresponding to a LldpV2DestAddressTableIndex value.

            Rows in this table are created as necessary, to support
            MAC addresses needed by other tables in the MIB that
            are indexed by MAC address.

            A given row in this table cannot be deleted if the MAC
            address table index value is in use in any other table
            in the MIB.

            The contents of this table is persistent aacross
            re-initializations or re-boots."
    INDEX  { fslldpV2AddressTableIndex  }
    ::= { fslldpV2DestAddressTable 1 }

    FsLldpV2DestAddressTableEntry ::= SEQUENCE {
          fslldpV2AddressTableIndex      LldpV2DestAddressTableIndex,
          fslldpV2DestMacAddress         MacAddress,
          fslldpv2DestRowStatus          RowStatus  
                                            }

    fslldpV2AddressTableIndex   OBJECT-TYPE
    SYNTAX      LldpV2DestAddressTableIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The index value used to identify the destination
            MAC address associated with this entry.

            The value of this object is used as an index to the
            lldpV2DestAddressTable."
    ::= { fslldpV2DestAddressTableEntry 1 }

    fslldpV2DestMacAddress   OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The MAC address associated with this entry.

            The octet string identifies an individual or a group
            MAC address that is in use by LLDP as a destination
            MAC address.
            The MAC address is encoded in the octet string in
            canonical format (see IEEE Std 802)."
    ::= { fslldpV2DestAddressTableEntry 2 }

    fslldpv2DestRowStatus  OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
      "Row status for the ring context entry.
       An entry can be created in this table, only when the corresponding
       virtual context is created in the system.

       Only 'createAndGo', and 'destroy' values are allowed for this
       object. 'createAndWait' and 'notInService' values are not allowed.

       When virtual context is deleted from the system, the corresponding
       entry in this table will be deleted.

       All the fields in this table can be changed, only when the row status
       is active."
   ::= { fslldpV2DestAddressTableEntry 3 }


 END
