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

IMPORTS
    hh3cCommon
        FROM HH3C-OID-MIB
    Integer32, OBJECT-TYPE,NOTIFICATION-TYPE,MODULE-IDENTITY
        FROM SNMPv2-SMI;

hh3cStrunk MODULE-IDENTITY
    LAST-UPDATED "202107191126Z"    -- July 19, 2021 at 11:26 GMT
    ORGANIZATION
        "New H3C Technologies 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
        "
        Smart Trunk (S-Trunk) is used on two PEs that provide dual-homed
        access for a CE for link and node redundancy. It virtualizes two
        PEs into one system through a multichassis link aggregation
        called smart trunk.
        "

    REVISION "202107191126Z"
    DESCRIPTION
        "The initial revision of this MIB module."
    ::= { hh3cCommon 208 }


-- trap --
hh3cStrunkTrap      OBJECT IDENTIFIER ::= { hh3cStrunk 1 }


-- All trap definitions should be placed under this object.
hh3cStrunkTrapPrex OBJECT IDENTIFIER ::= { hh3cStrunkTrap 0 }

hh3cStrunkMemberStatusChange NOTIFICATION-TYPE
    OBJECTS
        {   hh3cStrunkMemberType,
            hh3cStrunkMemberId,
            hh3cStrunkMemberStatus,
            hh3cStrunkMemberReason
        }
    STATUS       current
    DESCRIPTION
        "This trap indicates that S-Trunk member role changed."
    ::= { hh3cStrunkTrapPrex 1 }

hh3cStrunkStatusChange NOTIFICATION-TYPE
    OBJECTS {   hh3cStrunkGroupId,
                hh3cStrunkGroupStatus,
                hh3cStrunkGroupReason
            }
    STATUS       current
    DESCRIPTION
        "This trap indicates that S-Trunk Group role changed."
    ::= { hh3cStrunkTrapPrex 2 }

-- All objects used for TRAP only are defined here.
hh3cStrunkTrapOjbects OBJECT IDENTIFIER ::= { hh3cStrunkTrap 1 }

hh3cStrunkMemberType OBJECT-TYPE
    SYNTAX  INTEGER {
         bagg(1),
         ragg(2)
     }
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The member type of the S-Trunk.
        bagg: The bridge aggregation type.
        ragg: The route aggregation type."
    ::= { hh3cStrunkTrapOjbects 1 }

hh3cStrunkMemberId OBJECT-TYPE
    SYNTAX       Integer32
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The member id of the S-Trunk."
    ::= { hh3cStrunkTrapOjbects 2 }

hh3cStrunkMemberStatus OBJECT-TYPE
    SYNTAX  INTEGER {
         primary(1),
         secondary(2)
     }
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The status of the S-Trunk.
        primary: The S-Trunk member is primary role.
        secondary: The S-Trunk member is secondary role."
    ::= { hh3cStrunkTrapOjbects 3 }

hh3cStrunkMemberReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        " The S-Trunk member change reason."
    ::= { hh3cStrunkTrapOjbects 4 }

hh3cStrunkGroupId OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        " The group id of the S-Trunk."
    ::= { hh3cStrunkTrapOjbects 5 }

hh3cStrunkGroupStatus OBJECT-TYPE
    SYNTAX  INTEGER {
            init(1),
            primary(2),
            secondary(3)
        }
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        "The group status of the S-Trunk.
        init: The S-Trunk group is primary role.
        primary: The S-Trunk group is primary role.
        secondary: The S-Trunk group is secondary role."
    ::= { hh3cStrunkTrapOjbects 6 }

hh3cStrunkGroupReason OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS   accessible-for-notify
    STATUS       current
    DESCRIPTION
        " The S-Trunk group change reason."
    ::= { hh3cStrunkTrapOjbects 7 }
END
