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

-- $Id: fsmsrst.mib,v 1.5 2012/09/07 09:52:05 siva Exp $

SUPERMICRO-MIStdRSTP-MIB DEFINITIONS ::= BEGIN

-- -------------------------------------------------------------
-- MIB for IEEE 802.1w Rapid Spanning Tree Protocol
-- -------------------------------------------------------------

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE
        FROM SNMPv2-SMI
    TruthValue
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    TEXTUAL-CONVENTION FROM SNMPv2-TC
    fsDot1dBridge, fsDot1dStp, fsDot1dStpPortEntry, fsDot1dStpEntry, BridgeId, Timeout
        FROM SUPERMICRO-MIStdBRIDGE-MIB;

fsRstpMIB MODULE-IDENTITY
    LAST-UPDATED "201209050000Z"
    ORGANIZATION "Super Micro Computer Inc."
    CONTACT-INFO "support@Supermicro.com"
    DESCRIPTION
        "The Bridge MIB Extension module for managing devices
         that support the multiple instance Rapid Spanning Tree 
	 Protocol defined by IEEE 802.1w."
    REVISION "201209050000Z"
    DESCRIPTION
        "The Bridge MIB Extension module for managing devices
         that support the multiple instance Rapid Spanning Tree 
	 Protocol defined by IEEE 802.1w."
    ::= { fsDot1dBridge 11 }


fsRstpMIBObjects OBJECT IDENTIFIER ::= { fsRstpMIB 1 }

-- -------------------------------------------------------------
-- groups in the P-BRIDGE MIB
-- -------------------------------------------------------------

-- fsDot1dStp    OBJECT IDENTIFIER ::= { fsRstpMIBObjects 1 }


-- -------------------------------------------------------------
-- Addition to the fsDot1dStp group
-- -------------------------------------------------------------

fsDot1dStpExtTable OBJECT-TYPE
   SYNTAX       SEQUENCE OF FsDot1dStpExtEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
      "Table of ExtStpScalars per Virtual Context."
   ::= { fsDot1dStp 3 }

fsDot1dStpExtEntry OBJECT-TYPE
   SYNTAX       FsDot1dStpExtEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
     "Per Virtual Context Stp Scalars"
   AUGMENTS { fsDot1dStpEntry }
   ::= { fsDot1dStpExtTable 1 }

FsDot1dStpExtEntry ::=
   SEQUENCE {
       fsDot1dStpVersion
          INTEGER,
       fsDot1dStpTxHoldCount
          INTEGER,
       fsDot1dStpPathCostDefault
          INTEGER
   }

fsDot1dStpVersion OBJECT-TYPE
   SYNTAX      INTEGER {
                   stpCompatible(0),
                   rstp(2)
               }
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The version of Spanning Tree Protocol the bridge is
        currently running.  The value 'stpCompatible(0)'
        indicates the Spanning Tree Protocol specified in
        IEEE 802.1D and 'rstp(2)' indicates the Rapid Spanning
        Tree Protocol specified in IEEE 802.1w.  New value may
        be defined as future versions of the protocol become
        available."
   REFERENCE
       "IEEE 802.1w clause 14.8.1, 17.12, 17.16.1"
   DEFVAL      { rstp }
   ::= { fsDot1dStpExtEntry 1 }

fsDot1dStpTxHoldCount OBJECT-TYPE
   SYNTAX      INTEGER (1..10)
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The value used by the Port Transmit state machine to limit
        the maximum transmission rate."
   REFERENCE
       "IEEE 802.1w clause 17.16.6"
   DEFVAL      { 3 }
   ::= { fsDot1dStpExtEntry 2 }

fsDot1dStpPathCostDefault OBJECT-TYPE
   SYNTAX      INTEGER {
                   stp8021d1998(1),
                   stp8021t2001(2)
               }
   MAX-ACCESS  read-write
   STATUS      obsolete
   DESCRIPTION
       "******************Object is obsolete****************
        The version of the Spanning Tree default Path Costs that
        are to be used by this Bridge.  A value of 8021d1998(1)
        uses the 16-bit default Path Costs from IEEE Std. 802.1D-1998.
        A value of stp8021t2001(2) uses the 32-bit default Path
        Costs from IEEE Std. 802.1t."
   REFERENCE
       "IEEE 802.1D & 802.1t Table 8-5"
   ::= { fsDot1dStpExtEntry 3 }

fsDot1dStpExtPortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FsDot1dStpExtPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table that contains port-specific Rapid Spanning Tree
         information."
    ::= { fsDot1dStp 4 }

fsDot1dStpExtPortEntry OBJECT-TYPE
    SYNTAX      FsDot1dStpExtPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A list of Rapid Spanning Tree information maintained by
         each port."
    AUGMENTS    { fsDot1dStpPortEntry }
    ::= { fsDot1dStpExtPortTable 1 }

FsDot1dStpExtPortEntry ::=
    SEQUENCE {
        fsDot1dStpPortProtocolMigration
            TruthValue,
        fsDot1dStpPortAdminEdgePort
            TruthValue,
        fsDot1dStpPortOperEdgePort
            TruthValue,
        fsDot1dStpPortAdminPointToPoint
            INTEGER,
        fsDot1dStpPortOperPointToPoint
            TruthValue,
        fsDot1dStpPortAdminPathCost
            Integer32
    }

fsDot1dStpPortProtocolMigration OBJECT-TYPE
   SYNTAX      TruthValue
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "When operating in RSTP (version 2) mode, writing TRUE(1)
        to this object forces this port to transmit RSTP BPDUs.
        Any other operation on this object has no effect and
        it always returns FALSE(2) when read."
   REFERENCE
       "IEEE 802.1w clause 14.8.2.4, 17.18.10, 17.26"
   ::= { fsDot1dStpExtPortEntry 1 }

fsDot1dStpPortAdminEdgePort OBJECT-TYPE
   SYNTAX      TruthValue
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The administrative value of the Edge Port parameter.  A
        value of TRUE(1) indicates that this port should be
        assumed as an edge-port and a value of FALSE(2) indicates
        that this port should be assumed as a non-edge-port."
   REFERENCE
       "IEEE 802.1t clause 14.8.2, 18.3.3"
   ::= { fsDot1dStpExtPortEntry 2 }

fsDot1dStpPortOperEdgePort OBJECT-TYPE
   SYNTAX      TruthValue
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The operational value of the Edge Port parameter.  The
        object is initialized to the value of
        fsDot1dStpPortAdminEdgePort and is set FALSE on reception of
        a BPDU."
   REFERENCE
       "IEEE 802.1t clause 14.8.2, 18.3.4"
   ::= { fsDot1dStpExtPortEntry 3 }

fsDot1dStpPortAdminPointToPoint OBJECT-TYPE
   SYNTAX      INTEGER {
                   forceTrue(0),
                   forceFalse(1),
                   auto(2)
               }
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The administrative point-to-point status of the LAN segment
        attached to this port.  A value of forceTrue(0) indicates that
        this port should always be treated as if it is connected to
        a point-to-point link.  A value of forceFalse(1) indicates
        that this port should be treated as having a shared media
        connection.  A value of auto(2) indicates that this port is
        considered to have a point-to-point link if it is an Aggregator
        and all of its members are aggregatable, or if the MAC entity
        is configured for full duplex operation, either through
        auto-negotiation or by management means."
   REFERENCE
       "IEEE 802.1w clause 6.4.3, 6.5, 14.8.2"
   ::= { fsDot1dStpExtPortEntry 4 }

fsDot1dStpPortOperPointToPoint OBJECT-TYPE
   SYNTAX      TruthValue
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION
       "The operational point-to-point status of the LAN segment
        attached to this port.  It indicates whether a port is
        considered to have a point-to-point connection or not.
        The value is determined by management or by auto-detection,
        as described in the fsDot1dStpPortAdminPointToPoint object."
   REFERENCE
       "IEEE 802.1w clause 6.4.3, 6.5, 14.8.2"
   ::= { fsDot1dStpExtPortEntry 5 }

fsDot1dStpPortAdminPathCost OBJECT-TYPE
       SYNTAX      Integer32 (0..200000000)
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "The administratively assigned value for the contribution
            of this port to the path cost of paths toward the spanning
            tree root.
            Writing a value of '0' assigns the automatically calculated
            default Path Cost value to the port.  If the default Path
            Cost is being used, this object returns '0' when read.
            This complements the object dot1dStpPortPathCost or
            dot1dStpPortPathCost32, which returns the operational value
            of the path cost.
            The value of this object MUST be retained across
            reinitializations of the management system."
       REFERENCE
           "IEEE 802.1D-1998: Section 8.5.5.3"
       ::= { fsDot1dStpExtPortEntry 6 }
                                                 
-- -------------------------------------------------------------
-- fsRstpMIB - Conformance Information
-- -------------------------------------------------------------

fsRstpConformance OBJECT IDENTIFIER ::= { fsRstpMIB 2 }

fsRstpGroups OBJECT IDENTIFIER ::= { fsRstpConformance 1 }

fsRstpCompliances OBJECT IDENTIFIER ::= { fsRstpConformance 2 }

-- -------------------------------------------------------------
-- Units of conformance
-- -------------------------------------------------------------

fsRstpBridgeGroup OBJECT-GROUP
    OBJECTS {
        fsDot1dStpVersion,
        fsDot1dStpTxHoldCount
    }
    STATUS      current
    DESCRIPTION
        "Rapid Spanning Tree information for the bridge."
    ::= { fsRstpGroups 1 }

fsRstpPortGroup OBJECT-GROUP
    OBJECTS {
        fsDot1dStpPortProtocolMigration,
        fsDot1dStpPortAdminEdgePort,
        fsDot1dStpPortOperEdgePort,
        fsDot1dStpPortAdminPointToPoint,
        fsDot1dStpPortOperPointToPoint
    }
    STATUS      current
    DESCRIPTION
        "Rapid Spanning Tree information for individual ports."
    ::= { fsRstpGroups 2 }

-- -------------------------------------------------------------
-- Compliance statements
-- -------------------------------------------------------------

fsRstpCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for device support of bridging
         services."

    MODULE
        MANDATORY-GROUPS {
            fsRstpBridgeGroup,
            fsRstpPortGroup
        }

        ::= { fsRstpCompliances 1 }

END
