ELTEX-MES-DOT1X DEFINITIONS ::= BEGIN

-- Title:      ELTEX MES 802.1x Extension Private
-- Version:    1.0
-- Date:       6 Jun 2019

IMPORTS
    eltMes                            FROM ELTEX-MES
    TruthValue, RowStatus             FROM SNMPv2-TC
    MODULE-IDENTITY, OBJECT-TYPE      FROM SNMPv2-SMI
    rldot1xAuthenticationPortEntry    FROM RADLAN-DOT1X-MIB
    VlanIndex, PortList               FROM Q-BRIDGE-MIB
    dot1xPaePortNumber                FROM IEEE8021-PAE-MIB;

eltMesDot1x MODULE-IDENTITY
    LAST-UPDATED "201906060000Z"
    ORGANIZATION "Eltex Enterprise Co, Ltd."
    CONTACT-INFO "www.eltex-co.ru"
    DESCRIPTION
        "This private MIB module defines Eltex's private 802.1x MIBs."
    REVISION     "201906060000Z"
    DESCRIPTION  "Initial revision."
    ::= { eltMes 95 }

EltDot1xActionTrackDeadType  ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION    "An enumerated value which indicates action that is
                    performed when the server is unreachable."
    SYNTAX INTEGER {
       none(0),
       force-authorized(1)
    }

EltDot1xActionTrackAliveType  ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION    "An enumerated value which indicates action that is
                    performed when the server becomes reachable."
    SYNTAX INTEGER {
       none(0),
       reauthentication(1)
    }

--
-- 802.1x Radius Attributes
--
eltMesDot1xRadiusAttr     OBJECT IDENTIFIER ::= { eltMesDot1x 1 }
eltMesDot1xMacAuth        OBJECT IDENTIFIER ::= { eltMesDot1x 2 }
eltMesDot1xAuthentication OBJECT IDENTIFIER ::= { eltMesDot1x 3 }
eltMesDot1xCritical       OBJECT IDENTIFIER ::= { eltMesDot1x 4 }
eltMesDot1xActionTrack    OBJECT IDENTIFIER ::= { eltMesDot1x 5 }

eltdot1xAuthenticationPortTable OBJECT-TYPE 
    SYNTAX SEQUENCE OF Eltdot1xAuthenticationPortEntry
    MAX-ACCESS         not-accessible
    STATUS             current
    DESCRIPTION
        ""
    ::= { eltMesDot1xAuthentication 1 }

eltdot1xAuthenticationPortEntry OBJECT-TYPE
    SYNTAX      Eltdot1xAuthenticationPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of system level information for each port
         supported by the Port Access Entity. An entry appears
         in this table for each port of this system."
    AUGMENTS { rldot1xAuthenticationPortEntry }
    ::= { eltdot1xAuthenticationPortTable 1 }

Eltdot1xAuthenticationPortEntry ::= SEQUENCE {
    eltdot1xRadiusAttAclEnabled TruthValue
}

eltdot1xRadiusAttAclEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Defines if treat Data-filter that received from Radius attributes
         in Radius-Accept message."
    DEFVAL      { false }
    ::= { eltdot1xAuthenticationPortEntry 1 }
    
eltdot1xCriticalVlanSupported OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicate if critical vlan is supported."
    ::= { eltMesDot1xCritical 1 }

eltdot1xCriticalVlanVID OBJECT-TYPE
    SYNTAX      VlanIndex
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Specify the critical vlan tag, 0 for non existing."
    ::= { eltMesDot1xCritical 2 }

eltdot1xCriticalVlanPorts OBJECT-TYPE
    SYNTAX      PortList
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The ports that can be members in the critical vlan"
    ::= { eltMesDot1xCritical 3 }

eltDot1xPortActionTrackTable OBJECT-TYPE 
    SYNTAX SEQUENCE OF EltDot1xPortActionTrackEntry
    MAX-ACCESS         not-accessible
    STATUS             current
    DESCRIPTION
        "802.1x port behaviour configuration table for different
         authentication scenarios."
    ::= { eltMesDot1xActionTrack 1 }

eltDot1xPortActionTrackEntry OBJECT-TYPE
    SYNTAX      EltDot1xPortActionTrackEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "802.1x port behaviour configuration entry for different
         authentication scenarios."
    INDEX { dot1xPaePortNumber }
    ::= { eltDot1xPortActionTrackTable 1 }

EltDot1xPortActionTrackEntry ::= SEQUENCE {
    eltDot1xPortActionTrackDead
        EltDot1xActionTrackDeadType,
    eltDot1xPortActionTrackAlive
        EltDot1xActionTrackAliveType
}

eltDot1xPortActionTrackDead OBJECT-TYPE
    SYNTAX        EltDot1xActionTrackDeadType
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Action configuration for the case when the server becomes unreachable."
    DEFVAL { none }
    ::= { eltDot1xPortActionTrackEntry 1 }

eltDot1xPortActionTrackAlive OBJECT-TYPE
    SYNTAX        EltDot1xActionTrackAliveType
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Action configuration for the case when the server becomes reachable."
    DEFVAL { none }
    ::= { eltDot1xPortActionTrackEntry 2 }

END
