FOUNDRY-SN-MAC-AUTHENTICATION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Integer32
      FROM SNMPv2-SMI
    MacAddress, TimeStamp
      FROM SNMPv2-TC
    InterfaceIndex
      FROM IF-MIB;


snMacAuth MODULE-IDENTITY
    LAST-UPDATED "200706250000Z" -- June 25, 2007
    ORGANIZATION "Foundry Networks, Inc"
    CONTACT-INFO
            ""
    DESCRIPTION
            "Management Information Base module for MAC authentication
            configuration and statistics."
    REVISION     "200706250000Z" -- June 25, 2007
    DESCRIPTION
            ""
   ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) foundry(1991) products(1) switch(1) snSwitch(3) 28 }


-- MAC Authentication MIBs

snMacAuthGlobal		OBJECT IDENTIFIER ::= { snMacAuth 1 }

snMacAuthClearGlobalCmd OBJECT-TYPE
	SYNTAX     INTEGER { valid(0), clear(1) }
	MAX-ACCESS read-write
	STATUS     current
	DESCRIPTION
		"valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
		 clear(1) - represents clear MAC Authentication table for all ports."
	::= { snMacAuthGlobal 1 }

snMacAuthGlobalConfigState OBJECT-TYPE
	SYNTAX     INTEGER { disabled(0), enabled(1) }
	MAX-ACCESS read-write
	STATUS     current
	DESCRIPTION
		"Enable/disable MAC authentication on the global level."
	::= { snMacAuthGlobal 2 }

--
-- MAC Authentication Clear Interface command Table
--

snMacAuthClearIfCmdTable OBJECT-TYPE
	SYNTAX     SEQUENCE OF SnMacAuthClearIfCmdEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"The status of clearing an MAC Authentication entry for an interface."
	::= { snMacAuth 2 }

snMacAuthClearIfCmdEntry OBJECT-TYPE
	SYNTAX     SnMacAuthClearIfCmdEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"An entry of clearing an MAC Authentication entry for an interface."
	INDEX { snMacAuthClearIfCmdIfIndex }
	::= { snMacAuthClearIfCmdTable 1 }

SnMacAuthClearIfCmdEntry ::= SEQUENCE {
    snMacAuthClearIfCmdIfIndex     InterfaceIndex,
    snMacAuthClearIfCmdAction      INTEGER
}

snMacAuthClearIfCmdIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "ifIndex value of the local interface on which a clear command is issued and monitored."
	::= { snMacAuthClearIfCmdEntry 1 }

snMacAuthClearIfCmdAction      OBJECT-TYPE
	SYNTAX     INTEGER { valid(0), clear(1) }
	MAX-ACCESS read-write
	STATUS     current
	DESCRIPTION
		"valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
		 clear(1) - represents clearing an MAC Authentication entry for an interface."
	::= { snMacAuthClearIfCmdEntry 2 }

--
-- MAC Authentication Table
--

snMacAuthTable OBJECT-TYPE
	SYNTAX     SEQUENCE OF SnMacAuthEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"MAC Authentication table."
	::= { snMacAuth 3 }

snMacAuthEntry OBJECT-TYPE
	SYNTAX     SnMacAuthEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"An entry in the MAC Authentication table."
	INDEX { snMacAuthIfIndex, snMacAuthVlanId, snMacAuthMac }
	::= { snMacAuthTable 1 }

SnMacAuthEntry ::= SEQUENCE {
    snMacAuthIfIndex               InterfaceIndex,
    snMacAuthVlanId                Integer32,
    snMacAuthMac                   MacAddress,
    snMacAuthState                 INTEGER,
    snMacAuthTimeStamp             TimeStamp,
    snMacAuthAge                   Integer32,
    snMacAuthDot1x                 INTEGER
}

snMacAuthIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
    	"In order to identify a particular interface, this
		object shall identify the instance of the ifIndex
		object, defined in RFC 2863."
	::= { snMacAuthEntry 1 }

snMacAuthVlanId OBJECT-TYPE
     SYNTAX     Integer32
     MAX-ACCESS not-accessible
     STATUS     current
     DESCRIPTION
        "The ID of a VLAN of which this port is a member. Port must
        be untagged. For tagged port which belongs to multiple
        VLANs, this object return 0 which is an invalid VLAN ID
        value."
     ::= { snMacAuthEntry 2 }

snMacAuthMac OBJECT-TYPE
	SYNTAX     MacAddress
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"MAC Address to be authenticated."
	::= { snMacAuthEntry 3 }

snMacAuthState OBJECT-TYPE
	SYNTAX     INTEGER { authenticate(1), unauthenticate(2) }
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION
		"."
	::= { snMacAuthEntry 4 }

snMacAuthTimeStamp OBJECT-TYPE
	SYNTAX     TimeStamp
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION
		"Timestamp at which the MAC was authenticated or failed to be authenticated."
	::= { snMacAuthEntry 5 }

snMacAuthAge OBJECT-TYPE
	SYNTAX     Integer32
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION
		"Age of the mac session in which the MAC address is authenticated."
	::= { snMacAuthEntry 6 }

snMacAuthDot1x OBJECT-TYPE
	SYNTAX     INTEGER { disabled(0), enabled(1) }
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION
		"Indicates whether the Dot1x is enabled or not."
	::= { snMacAuthEntry 7 }

--
-- MAC Authentication MAC Session Clear Table
--

snMacAuthClearMacSessionTable OBJECT-TYPE
	SYNTAX     SEQUENCE OF SnMacAuthClearMacSessionEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"The status of clearing an MAC Session entry indexed by a MAC address."
	::= { snMacAuth 4 }

snMacAuthClearMacSessionEntry OBJECT-TYPE
	SYNTAX     SnMacAuthClearMacSessionEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"An entry of clearing an MAC Session entry indexed by a MAC address."
	INDEX { snMacAuthClearMacSessionIfIndex, snMacAuthClearMacSessionMac }
	::= { snMacAuthClearMacSessionTable 1 }

SnMacAuthClearMacSessionEntry ::= SEQUENCE {
    snMacAuthClearMacSessionIfIndex InterfaceIndex,
    snMacAuthClearMacSessionMac     MacAddress,
    snMacAuthClearMacSessionAction  INTEGER
}

snMacAuthClearMacSessionIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "ifIndex value of the local interface on which a clear command is issued and monitored."
	::= { snMacAuthClearMacSessionEntry 1 }

snMacAuthClearMacSessionMac OBJECT-TYPE
	SYNTAX     MacAddress
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION
		"An MAC Session entry indexed by a MAC address."
	::= { snMacAuthClearMacSessionEntry 2 }

snMacAuthClearMacSessionAction OBJECT-TYPE
	SYNTAX     INTEGER { valid(0), clear(1) }
	MAX-ACCESS read-write
	STATUS     current
	DESCRIPTION
		"valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
		 clear(1) - represents clearing an MAC Session entry indexed by a MAC address."
	::= { snMacAuthClearMacSessionEntry 3 }

END
