-- =====================================================================
-- Copyright (c) 2004-2022 New H3C Tech.  Co., Ltd.  All rights reserved.
--
-- Description: MLAG MIB
-- Reference:
-- Version: V1.0
-- History:
--   V1.0 Initial version, created by liuyafang
-- =====================================================================
HH3C-MLAG-MIB DEFINITIONS ::= BEGIN

IMPORTS
    hh3cCommon
        FROM HH3C-OID-MIB
    Integer32, OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY
        FROM SNMPv2-SMI
    MacAddress, TruthValue, RowStatus
        FROM SNMPv2-TC
    InetAddressIPv4, InetAddressIPv6
        FROM INET-ADDRESS-MIB
    PortList
        FROM Q-BRIDGE-MIB
    InterfaceIndex,ifIndex,ifDescr
        FROM IF-MIB;

hh3cMLag MODULE-IDENTITY
    LAST-UPDATED "202204131707Z"
    ORGANIZATION
        "New H3C Tech.  Co., Ltd."
    CONTACT-INFO
        "
        Platform Team New H3C Tech.  Co., Ltd.
        Hai-Dian District Beijing P.R.  China
        http://www.h3c.com
        Zip:100085
        "
    DESCRIPTION
        "
        This MIB defines objects for
        Multichassis Link Aggregation Group (M-LAG).
        "
    REVISION
        "202204131707Z"
    DESCRIPTION
        "MLAG MIB."
    ::= { hh3cCommon 176 }


--
-- Node definitions
--

hh3cMLagObjects OBJECT IDENTIFIER ::= { hh3cMLag 1 }


hh3cMLagBaseGroup OBJECT IDENTIFIER ::= { hh3cMLagObjects 1 }

hh3cMLagRoleGroup OBJECT IDENTIFIER ::= { hh3cMLagObjects 2 }

hh3cMLagKeepaliveGroup OBJECT IDENTIFIER ::= { hh3cMLagObjects 3 }

hh3cMLagTables OBJECT IDENTIFIER ::= { hh3cMLagObjects 4 }


hh3cMLagSystemMac OBJECT-TYPE
    SYNTAX MacAddress
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Multichassis Link Aggregation Group (M-LAG) system MAC address.
         The default value is six octets of zero."
    ::= { hh3cMLagBaseGroup 1 }

hh3cMLagSystemPriority OBJECT-TYPE
    SYNTAX Integer32 (0..65535)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "M-LAG system priority.  The default value is 32768."
    DEFVAL { 32768 }
    ::= { hh3cMLagBaseGroup 2 }

hh3cMLagSystemNumber OBJECT-TYPE
    SYNTAX Integer32 (0..2)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        " M-LAG system number."
    DEFVAL { 0 }
    ::= { hh3cMLagBaseGroup 3 }

hh3cMLagRestoreDelay OBJECT-TYPE
    SYNTAX Integer32 (1..3600)
    UNITS "seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Data restoration interval in seconds."
    DEFVAL { 30 }
    ::= { hh3cMLagBaseGroup 4 }

hh3cMLagAutoRecoveryReloadDelay OBJECT-TYPE
    SYNTAX Integer32 (0|240..3600)
    UNITS "seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Reload delay timer for M-LAG system auto-recovery."
    DEFVAL { 0 }
    ::= { hh3cMLagBaseGroup 5 }


hh3cMLagRoleLocalRolePriority OBJECT-TYPE
    SYNTAX Integer32 (0..65535)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "M-LAG role priority of the local M-LAG member device."
    DEFVAL { 32768 }
    ::= { hh3cMLagRoleGroup 1 }

hh3cMLagRolePeerRolePriority OBJECT-TYPE
    SYNTAX Integer32 (0..65535)
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "M-LAG role priority of the peer M-LAG member device."
    ::= { hh3cMLagRoleGroup 2 }

hh3cMLagRoleLocalBridgeMac OBJECT-TYPE
    SYNTAX MacAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Bridge MAC address of the local M-LAG member device.
         The default value is six octets of zero."
    ::= { hh3cMLagRoleGroup 3 }

hh3cMLagRolePeerBridgeMac OBJECT-TYPE
    SYNTAX MacAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Bridge MAC address of the peer M-LAG member device.  If this address
         is unknown, the default value is six octets of zero."
    ::= { hh3cMLagRoleGroup 4 }

hh3cMLagRoleLocalConfiguredRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "M-LAG role calculated based on the role priority and bridge MAC
         address of the local M-LAG member device."
    ::= { hh3cMLagRoleGroup 5 }

hh3cMLagRolePeerConfiguredRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "M-LAG role calculated based on the role priority and bridge MAC
         address of the peer M-LAG member device."
    ::= { hh3cMLagRoleGroup 6 }

hh3cMLagRoleLocalEffectiveRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Current role of the local M-LAG member device."
    ::= { hh3cMLagRoleGroup 7 }

hh3cMLagRolePeerEffectiveRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Current role of the peer M-LAG member device."
    ::= { hh3cMLagRoleGroup 8 }


hh3cMLagKeepaliveDestIpv4 OBJECT-TYPE
    SYNTAX InetAddressIPv4
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Destination IPv4 address of the keepalive link.
         The default value is 0.0.0.0."
    ::= { hh3cMLagKeepaliveGroup 1 }

hh3cMLagKeepaliveSourceIpv4 OBJECT-TYPE
    SYNTAX InetAddressIPv4
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Source IPv4 address of the keepalive link.
         The default value is 0.0.0.0.
         This object must be used with the KeepaliveDestIpv4 object."
    ::= { hh3cMLagKeepaliveGroup 2 }

hh3cMLagKeepaliveDestIpv6 OBJECT-TYPE
    SYNTAX InetAddressIPv6
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Destination IPv6 address of the keepalive link.
         The default value is 0::0."
    ::= { hh3cMLagKeepaliveGroup 3 }

hh3cMLagKeepaliveSourceIpv6 OBJECT-TYPE
    SYNTAX InetAddressIPv6
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Source IPv6 address of the keepalive link.
         The default value is 0::0.
         This object must be used with the KeepaliveDestIpv6 object."
    ::= { hh3cMLagKeepaliveGroup 4 }

hh3cMLagKeepaliveUdpPort OBJECT-TYPE
    SYNTAX Integer32 (1..65535)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Keepalive destination UDP port."
    DEFVAL { 6400 }
    ::= { hh3cMLagKeepaliveGroup 5 }

hh3cMLagKeepaliveInterval OBJECT-TYPE
    SYNTAX Integer32 (100..10000)
    UNITS "milliseconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Keepalive interval."
    DEFVAL { 1000 }
        ::= { hh3cMLagKeepaliveGroup 6 }

hh3cMLagKeepaliveTimeout OBJECT-TYPE
    SYNTAX Integer32 (3..20)
    UNITS "seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Keepalive timeout time."
    DEFVAL { 5 }
        ::= { hh3cMLagKeepaliveGroup 7 }

hh3cMLagKeepaliveHoldTime OBJECT-TYPE
    SYNTAX Integer32 (3..10)
    UNITS "seconds"
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Keepalive hold time."
    DEFVAL { 3 }
        ::= { hh3cMLagKeepaliveGroup 8 }

hh3cMLagKeepaliveLinkStatus OBJECT-TYPE
    SYNTAX INTEGER
        {
        unknown(1),
        up(2),
        down(3)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Keepalive link status."
        ::= { hh3cMLagKeepaliveGroup 9 }

hh3cMLagKeepaliveVrf OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..31))
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "VPN instance name.  A zero-length string represents that the
         local device is on the public network."
    ::= { hh3cMLagKeepaliveGroup 10 }

hh3cMLagPeerLinkTable OBJECT-TYPE
    SYNTAX SEQUENCE OF Hh3cMLagPeerLinkEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The M-LAG peer-link table."
    ::= { hh3cMLagTables 1 }

hh3cMLagPeerLinkEntry OBJECT-TYPE
    SYNTAX Hh3cMLagPeerLinkEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The entry of hh3cMLagPeerLinkTable."
    INDEX { hh3cMLagPeerLinkNumber }
    ::= { hh3cMLagPeerLinkTable 1 }

Hh3cMLagPeerLinkEntry ::=
    SEQUENCE {
        hh3cMLagPeerLinkNumber
            Integer32,
        hh3cMLagPeerLinkIfIndex
            InterfaceIndex,
        hh3cMLagPeerLinkRowStatus
            RowStatus
     }

hh3cMLagPeerLinkNumber OBJECT-TYPE
    SYNTAX Integer32 (1..2)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The number of a peer link."
    ::= { hh3cMLagPeerLinkEntry 1 }

hh3cMLagPeerLinkIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndex
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Interface index."
    ::= { hh3cMLagPeerLinkEntry 2 }

hh3cMLagPeerLinkRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "This object is responsible for managing creation,
         deletion, and modification of rows.  The rows support active
         status and destroy operations."
    ::= { hh3cMLagPeerLinkEntry 3 }

hh3cMLagPortTable OBJECT-TYPE
    SYNTAX SEQUENCE OF Hh3cMLagPortEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The M-LAG interface table."
    ::= { hh3cMLagTables 2 }

hh3cMLagPortEntry OBJECT-TYPE
    SYNTAX Hh3cMLagPortEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The entry of hh3cMLagInfoTable."
    INDEX { hh3cMLagGroupId }
    ::= { hh3cMLagPortTable 1 }

Hh3cMLagPortEntry ::=
    SEQUENCE {
        hh3cMLagGroupId
            Integer32,
        hh3cMLagPortIfIndex
            InterfaceIndex,
        hh3cMLagPortRowStatus
            RowStatus
     }

hh3cMLagGroupId OBJECT-TYPE
    SYNTAX Integer32 (1..1024)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "M-LAG group identifier."
    ::= { hh3cMLagPortEntry 1 }

hh3cMLagPortIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndex
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Interface index of the Layer 2 aggregate interface."
    ::= { hh3cMLagPortEntry 2 }

hh3cMLagPortRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "This object is responsible for managing creation,
         deletion, and modification of rows.  The rows support active
         status and destroy operations."
    ::= { hh3cMLagPortEntry 3 }


hh3cMLagAllPortTable OBJECT-TYPE
    SYNTAX SEQUENCE OF Hh3cMLagAllPortEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The M-LAG port table."
    ::= { hh3cMLagTables 3 }

hh3cMLagAllPortEntry OBJECT-TYPE
    SYNTAX Hh3cMLagAllPortEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The entry of hh3cMLagAllPortTable."
    INDEX { hh3cMLagAllPortIfIndex }
    ::= { hh3cMLagAllPortTable 1 }

Hh3cMLagAllPortEntry ::=
    SEQUENCE {
        hh3cMLagAllPortIfIndex
            InterfaceIndex,
        hh3cMLagPortDrcpIsShortPeriod
            TruthValue,
        hh3cMLagPortPortStatus
            INTEGER,
        hh3cMLagPortLocalDRCPState
            OCTET STRING,
        hh3cMLagPortPeerDRCPState
            OCTET STRING,
        hh3cMLagPortLocalMemberList
            PortList,
        hh3cMLagPortPeerMemberList
            PortList
     }

hh3cMLagAllPortIfIndex OBJECT-TYPE
    SYNTAX InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Interface index."
    ::= { hh3cMLagAllPortEntry 1 }

hh3cMLagPortDrcpIsShortPeriod OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "
        Short Distributed Relay Control Protocol (DRCP)
        timeout timer flag, true or false.
        "
    ::= { hh3cMLagAllPortEntry 2 }

hh3cMLagPortPortStatus OBJECT-TYPE
    SYNTAX INTEGER
        {
        up(1),
        down(2)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Port status."
    ::= { hh3cMLagAllPortEntry 3 }

hh3cMLagPortLocalDRCPState OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "DRCP state flags on the local port.
         The flag field is one byte long,represented by ABCDEFGH
         from the lowest bit to the highest bit.A letter is displayed
         when its bit is 1 and is not displayed when its bit is 0.
         A-Indicates whether DRCP is enabled on the local device.
           1 indicates enabled.0 indicates disabled.
         B-Indicates whether DRCP is enabled on the M-LAG peer device.
           1 indicates enabled.0 indicates disabled.
         C-Indicates whether DRCP is enabled on a third M-LAG member device.
           1 indicates enabled.0 indicates disabled.
         D-Indicates whether the local peer-link interface has determined that
           DRCP is enabled on the M-LAG peer device.
           1 indicates yes.0 indicates no.
         E-Indicates the DRCP timeout timer.
           1 indicates the short timeout timer.
           0 indicates the long timeout timer.
         F-Indicates whether the local peer-link interface permits the packets
           that contain the negotiated gateway conversation IDs.
           1 indicates yes.0 indicates no.
         G-Indicates whether the local peer-link interface permits the packets that
           contain the negotiated port conversation IDs.
           1 indicates yes.0 indicates no.
         H-Indicates whether the local DRCPDU receive machine is in
           default or expired state.
           1 indicates yes.0 indicates no."
    ::= { hh3cMLagAllPortEntry 4 }

hh3cMLagPortPeerDRCPState OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "DRCP state flags on the local port.
         The flag field is one byte long,represented by ABCDEFGH
         from the lowest bit to the highest bit.A letter is displayed
         when its bit is 1 and is not displayed when its bit is 0.
         A-Indicates whether DRCP is enabled on the local device.
           1 indicates enabled.0 indicates disabled.
         B-Indicates whether DRCP is enabled on the M-LAG peer device.
           1 indicates enabled.0 indicates disabled.
         C-Indicates whether DRCP is enabled on a third M-LAG member device.
           1 indicates enabled.0 indicates disabled.
         D-Indicates whether the local peer-link interface has determined that
           DRCP is enabled on the M-LAG peer device.
           1 indicates yes.0 indicates no.
         E-Indicates the DRCP timeout timer.
           1 indicates the short timeout timer.
           0 indicates the long timeout timer.
         F-Indicates whether the local peer-link interface permits the packets
           that contain the negotiated gateway conversation IDs.
           1 indicates yes.0 indicates no.
         G-Indicates whether the local peer-link interface permits the packets that
           contain the negotiated port conversation IDs.
           1 indicates yes.0 indicates no.
         H-Indicates whether the local DRCPDU receive machine is in
           default or expired state.
           1 indicates yes.0 indicates no."
    ::= { hh3cMLagAllPortEntry 5 }

hh3cMLagPortLocalMemberList OBJECT-TYPE
    SYNTAX PortList
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Local M-LAG member device's Selected aggregation member ports in
         an M-LAG interface or peer-link interface."
    ::= { hh3cMLagAllPortEntry 6 }

hh3cMLagPortPeerMemberList OBJECT-TYPE
    SYNTAX PortList
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Peer M-LAG member device's Selected aggregation member ports in
         an M-LAG interface or peer-link interface."
    ::= { hh3cMLagAllPortEntry 7 }

-- trap --
hh3cMLagTrap      OBJECT IDENTIFIER ::= { hh3cMLag 2 }

hh3cMLagTrapPrex OBJECT IDENTIFIER ::= { hh3cMLagTrap 0 }

hh3cMLagGlobalCheckConsistency NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagConsistencyType
        }
    STATUS       current
    DESCRIPTION
        "Finished global configuration consistency check.  No inconsistency exists."
    ::= { hh3cMLagTrapPrex 1 }

hh3cMLagGlobalCheckInConsistency NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagConsistencyType
        }
    STATUS       current
    DESCRIPTION
        "Finished global configuration consistency check.  Inconsistency exists."
    ::= { hh3cMLagTrapPrex 2 }

hh3cMLagIfCheckConsistency NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagConsistencyType,
            ifIndex,
            ifDescr
        }
    STATUS       current
    DESCRIPTION
        "Finished M-LAG interface configuration consistency check.  No inconsistency exists."
    ::= { hh3cMLagTrapPrex 3 }

hh3cMLagIfCheckInConsistency NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagConsistencyType,
            ifIndex,
            ifDescr
        }
    STATUS       current
    DESCRIPTION
        "Finished M-LAG interface configuration consistency check.  Inconsistency exists."
    ::= { hh3cMLagTrapPrex 4 }

hh3cMLagPortGlobalDown NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagGroupIdForNotify
        }
    STATUS       current
    DESCRIPTION
        "The state of the M-LAG group changed to global down."
    ::= { hh3cMLagTrapPrex 5 }

hh3cMLagPortGlobalUp NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagGroupIdForNotify
        }
    STATUS       current
    DESCRIPTION
        "The state of the M-LAG group changed to global up."
    ::= { hh3cMLagTrapPrex 6 }

hh3cMLagPortSelected NOTIFICATION-TYPE
    OBJECTS
        {
            ifIndex,
            ifDescr,
            hh3cMLagGroupIdForNotify
        }
    STATUS       current
    DESCRIPTION
        "The local M-LAG interface has selected member ports."
    ::= { hh3cMLagTrapPrex 7 }

hh3cMLagPortNoSelected NOTIFICATION-TYPE
    OBJECTS
        {
            ifIndex,
            ifDescr,
            hh3cMLagGroupIdForNotify,
            hh3cMLagPortNotSelectedReason
        }
    STATUS       current
    DESCRIPTION
        "The local M-LAG interface does not have selected member ports."
    ::= { hh3cMLagTrapPrex 8 }

hh3cMLagPortPeerNoSelected NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagGroupIdForNotify
        }
    STATUS       current
    DESCRIPTION
        "The peer M-LAG interface does not have selected member ports."
    ::= { hh3cMLagTrapPrex 9 }

hh3cMLagPortPeerSelected NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagGroupIdForNotify
        }
    STATUS       current
    DESCRIPTION
        "The peer M-LAG interface has selected member ports."
    ::= { hh3cMLagTrapPrex 10 }

hh3cMLagPeerLinkUp NOTIFICATION-TYPE
    OBJECTS
        {
            ifIndex,
            ifDescr
        }
    STATUS       current
    DESCRIPTION
        "The peer link came up."
    ::= { hh3cMLagTrapPrex 11 }

hh3cMLagPeerLinkDown NOTIFICATION-TYPE
    OBJECTS
        {
            ifIndex,
            ifDescr
        }
    STATUS       current
    DESCRIPTION
        "The peer link went down."
    ::= { hh3cMLagTrapPrex 12 }

hh3cMLagKeepaliveDown NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagKeepAliveDownReason
        }
    STATUS       current
    DESCRIPTION
        "The keepalive link went down."
    ::= { hh3cMLagTrapPrex 13 }

hh3cMLagKeepaliveUp NOTIFICATION-TYPE
    STATUS       current
    DESCRIPTION
        "The keepalive link came up."
    ::= { hh3cMLagTrapPrex 14 }

hh3cMLagDeviceMadDown NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagMadDownReason
        }
    STATUS       current
    DESCRIPTION
        "The device changed to M-LAG MAD DOWN state."
    ::= { hh3cMLagTrapPrex 15 }

hh3cMLagDeviceMadRecovery NOTIFICATION-TYPE
    STATUS       current
    DESCRIPTION
        "The device recovered from M-LAG MAD DOWN state."
    ::= { hh3cMLagTrapPrex 16 }

hh3cMLagDeviceRoleChange NOTIFICATION-TYPE
    OBJECTS
        {
            hh3cMLagOldRole,
            hh3cMLagNewRole,
            hh3cMLagRoleChangeReason
        }
    STATUS       current
    DESCRIPTION
        "The device role has changed."
    ::= { hh3cMLagTrapPrex 17 }

hh3cMLagTrapOjbects OBJECT IDENTIFIER ::= { hh3cMLagTrap 1 }

hh3cMLagConsistencyType OBJECT-TYPE
    SYNTAX  INTEGER {
         type1(1),
         type2(2)
     }
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The consistency check type.
        type1: Type 1 configuration consistency check.
        type2: Type 2 configuration consistency check."
    ::= { hh3cMLagTrapOjbects 1 }

hh3cMLagGroupIdForNotify OBJECT-TYPE
    SYNTAX Integer32 (1..1024)
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "M-LAG group identifier."
    ::= { hh3cMLagTrapOjbects 2 }

hh3cMLagPortNotSelectedReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The M-LAG interface unselected reason."
    ::= { hh3cMLagTrapOjbects 3 }

hh3cMLagKeepAliveDownReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The keepalive link down reason."
    ::= { hh3cMLagTrapOjbects 4 }

hh3cMLagMadDownReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The M-LAG MAD DOWN reason."
    ::= { hh3cMLagTrapOjbects 5 }

hh3cMLagOldRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "Old role of the local M-LAG member device."
    ::= { hh3cMLagTrapOjbects 6 }

hh3cMLagNewRole OBJECT-TYPE
    SYNTAX INTEGER
        {
        none(0),
        primary(1),
        secondary(2)
        }
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "New role of the local M-LAG member device."
    ::= { hh3cMLagTrapOjbects 7 }

hh3cMLagRoleChangeReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The M-LAG role change reason."
    ::= { hh3cMLagTrapOjbects 8 }
END

--
-- hh3c-mlag.mib
--
