-- =================================================================
-- Copyright (c) 2004-2012 Hangzhou H3C Tech. Co., Ltd.  All rights reserved.
--
-- Description: description of entity extend properties.
-- Reference:
-- History V2.8
-- V1.0 Created by weixinzhe, Thursday, April 22, 2004 at 18:26:02
-- V1.1 modified by yelinhui, add h3cEntityExtMacAddress
-- V1.2 modified by panxidong, add h3cEntityExtErrorStatus
-- V1.3 2004-10-12 updated by gaolong
--      Remove BITS from IMPORTS
-- V1.4 2005-02-25 modified by longyin
--      Add error status stackPortBlocked(22) and stackPortFailed(23)
--      for h3cEntityExtErrorStatus
-- V1.5 2006-05-16 modified by wangsihai
--      Add error status sensorError(81) in h3cEntityExtErrorStatus
-- V1.6 2006-07-03 modified by lifengguang
--      Add h3cEntityExtManuTable
-- V1.7 2007-09-21 modified by lifengguang
--      Add notification object h3cEntityExtSFPAlarmOn and h3cEntityExtSFPAlarmOff
--      Add h3cEntityExtPowerTable
-- V1.8 2007-11-19 modified by jinyi
--      Add h3cEntityExtCpuMaxUsage
-- V1.9 2008-02-27 modified by lifengguang
--      Add Trap nodes: h3cEntityExtSFPPhony
-- V2.0 2008-07-11 modified by lisong
--      Add h3cProcessTable
--      Add notification object h3cEntityInsert and h3cEntityRemove
-- V2.1 2008-07-14 modified by lifengguang
--      Add error status hardwareFaulty(91) in h3cEntityExtErrorStatus
--      Add Trap nodes: h3cEntityExtForcedPowerOff and h3cEntityExtForcedPowerOn
--      Add Trap nodes: h3cEntityExtFaultAlarmOn and h3cEntityExtFaultAlarmOff
-- V2.2 2008-10-24 modified by lifengguang
--      Add nodes h3cEntityExtLowerTemperatureThreshold and
--      h3cEntityExtShutdownTemperatureThreshold in h3cEntityExtStateTable
--      Add trap nodes h3cEntityExtResourceLack and h3cEntityExtResourceEnough
--      in h3cEntityExtTrapsPrefix
--      Add trap nodes h3cEntityExtTemperatureLower, h3cEntityExtTemperatureTooUp
--      and h3cEntityExtTemperatureNormal in h3cEntityExtTrapsPrefix
-- V2.3 2009-04-07 Added trap nodes h3cEntityExternalAlarmOccur and
--      h3cEntityExternalAlarmRecover
-- v2.4 2009-05-05 Added h3cEntityExtCpuAvgUsage, h3cEntityExtMemAvgUsage,
--      h3cEntityExtPhyMemSize, h3cEntityExtMemType, h3cEntityExtPhyCpuFrequency,
--      h3cEntityExtFirstUsedDate,
--      h3cEntityExtCpuUsageThresholdRecover, h3cEntityExtMemUsageThresholdRecover
-- V2.5 2010-08-09
--      Added h3cEntityExtShutdownLowerTemperatureThreshold,
--      h3cEntityExtCriticalLowerTemperatureThreshold,
--      h3cEntityExtCritLowerTempThresholdNotification and
--      h3cEntityExtTemperatureTooLow by zhanglei 06807.
--      Added h3cEntityExtMemAllocatedFailed, h3cEntityExtECCParityAlarm,
--      h3cEntityExtTrapDescription, h3cEntityExtECCParityAlarmStatus
--      by zhangqingjun 02357.
--      Modified description of h3cEntityExtPhyMemSize by haoyan 06611.
-- V2.6 2010-12-06
--      Added h3cEntityExtFanDirectionNotPreferred, h3cEntityExtFanDirectionNotAccord
--      by lifengguang 03035.
-- V2.7 2011-04-06
--      Added h3cEntityExtSFPInvalid, h3cEntityExtSFPInvalidNow and
--      h3cEntityExtSFPInvalidInDays by songhao 02718.
--      Changed SYNTAX of h3cEntityExtMemSize and h3cEntityExtPhyMemSize
--      from Integer32 to Unsigned32 by songhao 02718.
-- V2.8 2011-08-30
--      Added h3cEntityExtCpuUsageRecoverThreshold;
--      Added h3cEntityExtCpuUsageRecoverThreshold to h3cEntityExtCpuUsageThresholdNotfication and 
--      h3cEntityExtCpuUsageThresholdRecover by shuaixiaojuan 04117.
--      Added h3cEntityExtFirstTrapTime by duyanbing 04404.
-- =================================================================
A3COM-HUAWEI-ENTITY-EXT-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        h3cCommon
            FROM A3COM-HUAWEI-OID-MIB
        OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUP
            FROM SNMPv2-CONF
        OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE, Integer32,
        Unsigned32, Gauge32, TimeTicks
            FROM SNMPv2-SMI
        TEXTUAL-CONVENTION, MacAddress, DateAndTime, DisplayString
            FROM SNMPv2-TC
        SnmpAdminString
            FROM SNMP-FRAMEWORK-MIB
        entPhysicalIndex, entPhysicalName, entPhysicalDescr
            FROM ENTITY-MIB;

    h3cEntityExtend MODULE-IDENTITY
        LAST-UPDATED "201111260000Z"
        ORGANIZATION
            "Hangzhou H3C Technologies Co., Ltd."
        CONTACT-INFO
            "Platform Team H3C Technologies Co., Ltd.
             Hai-Dian District Beijing P.R. China
             http://www.h3c.com
             Zip: 100085"
        DESCRIPTION
            "The private MIB file includes the general extent
            information of the device."
        ::= { h3cCommon 6 }

    H3cAdminState  ::=  TEXTUAL-CONVENTION
        STATUS            current
        DESCRIPTION
            "The administrative state for this object, and it is possible to
            set the state when needed.
            A value of locked means the resource is administratively prohibited
            from use. A value of shuttingDown means that usage is
            administratively limited to current instances of use.
            A value of unlocked means the resource is not administratively
            prohibited from use."
        REFERENCE
            "ITU Recommendation X.731, 'Information Technology - Open
            Systems Interconnection - System Management: State
            Management Function', 1992"
        SYNTAX  INTEGER
        {
            notSupported(1),
            locked(2),
            shuttingDown(3),
            unlocked(4)
        }

    H3cOperState  ::=  TEXTUAL-CONVENTION
        STATUS            current
        DESCRIPTION
            " Represents the possible values of operational states.
            A value of disabled means the resource is totally
            inoperable. A value of enabled means the resource
            is partially or fully operable."
        REFERENCE
            "ITU Recommendation X.731, 'Information Technology - Open
            Systems Interconnection - System Management: State
            Management Function', 1992"
        SYNTAX  INTEGER
        {
            notSupported (1),
            disabled(2),
            enabled(3),
            dangerous(4)
        }
    H3cAlarmStatus  ::=  TEXTUAL-CONVENTION
        STATUS            current
        DESCRIPTION
            "Represents the possible values of alarm status.
            When no bits of this attribute are set, then none of the
            status conditions described below are present. When the
            value of under repair is set, the resource is currently
            being repaired.

            When the value of critical is set, one or more critical
            alarms are active against the resource. When the value of
            major is set, one or more major alarms are active against
            the resource. When the value of minor is set, one or more
            minor alarms are active against the resource. When the
            value of warning is set, one or more warning alarms are
            active against the resource. When the value of
            indeterminate is set, one or more  alarms of indeterminate
            severity are active against the resource.
            When the value of alarm outstanding is set, one or more
            alarms is active against the resource. The fault may or may
            not be disabling."
            REFERENCE
            "ITU Recommendation X.731, 'Information Technology - Open
            Systems Interconnection - System Management: State
            Management Function', 1992"
        SYNTAX           BITS
        {
            notSupported (0),
            underRepair(1),
            critical(2),
            major(3),
            minor(4),
            alarmOutstanding(5),
            warning (6), -- Not defined in X.731
            indeterminate (7) -- Not defined in X.731
        }


    H3cStandbyStatus  ::=  TEXTUAL-CONVENTION
        STATUS            current
        DESCRIPTION
                " Represents the possible values of standby status.

                  A value of hotStandby means the resource is not providing
                  service, but is will be immediately able to take over the
                  role of the resource to be backed-up, without the need for
                  initialization activity, and will contain the same
                  information as the resource to be backed up. A value of
                  coldStandy means that the resource is to back-up another
                  resource, but will not be immediately able to take over
                  the role of a resource to be backed up, and will require
                  some initialization activity. A value of providingService
                  means the resource is providing service."
        REFERENCE
            "ITU Recommendation X.731, 'Information Technology - Open
            Systems Interconnection - System Management: State
            Management Function', 1992"
        SYNTAX            INTEGER
        {
            notSupported (1),
            hotStandby(2),
            coldStandby(3),
            providingService(4)
        }


    h3cEntityExtObjects OBJECT IDENTIFIER ::= { h3cEntityExtend 1 }


--  MIB contains four groups

    h3cEntityExtState OBJECT IDENTIFIER ::= { h3cEntityExtObjects 1 }

    h3cEntityExtStateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cEntityExtStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "This table contains one row per physical entity, There is
            always at least one row for an 'overall' physical entity.
            The information in each row may be not include all the object
            in this table, because of the entity need not some of the
            information here."
        ::= { h3cEntityExtState 1 }

    h3cEntityExtStateEntry OBJECT-TYPE
        SYNTAX H3cEntityExtStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The information about a particular physical entity."
        INDEX { h3cEntityExtPhysicalIndex }
        ::= { h3cEntityExtStateTable 1 }

    H3cEntityExtStateEntry ::= SEQUENCE {
        h3cEntityExtPhysicalIndex
            Integer32,
        h3cEntityExtAdminStatus
            H3cAdminState,
        h3cEntityExtOperStatus
            H3cOperState,
        h3cEntityExtStandbyStatus
            H3cStandbyStatus,
        h3cEntityExtAlarmLight
            H3cAlarmStatus,
        h3cEntityExtCpuUsage
            Integer32,
        h3cEntityExtCpuUsageThreshold
            Integer32,
        h3cEntityExtMemUsage
            Integer32,
        h3cEntityExtMemUsageThreshold
            Integer32,
        h3cEntityExtMemSize
            Unsigned32,
        h3cEntityExtUpTime
            Integer32,
        h3cEntityExtTemperature
            Integer32,
        h3cEntityExtTemperatureThreshold
            Integer32,
        h3cEntityExtVoltage
            Integer32,
        h3cEntityExtVoltageLowThreshold
            Integer32,
        h3cEntityExtVoltageHighThreshold
            Integer32,
        h3cEntityExtCriticalTemperatureThreshold
            Integer32,
        h3cEntityExtMacAddress
            MacAddress,
        h3cEntityExtErrorStatus
            INTEGER,
        h3cEntityExtCpuMaxUsage
            Integer32,
        h3cEntityExtLowerTemperatureThreshold
            Integer32,
        h3cEntityExtShutdownTemperatureThreshold
            Integer32,
        h3cEntityExtPhyMemSize
            Unsigned32,
        h3cEntityExtPhyCpuFrequency
            Integer32,
        h3cEntityExtFirstUsedDate
            DateAndTime,
        h3cEntityExtCpuAvgUsage
            Integer32,
        h3cEntityExtMemAvgUsage
            Integer32,
        h3cEntityExtMemType
            OCTET STRING,
        h3cEntityExtCriticalLowerTemperatureThreshold
            Integer32,
        h3cEntityExtShutdownLowerTemperatureThreshold
            Integer32,
        h3cEntityExtCpuUsageRecoverThreshold
            Integer32
     }

    h3cEntityExtPhysicalIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The index of h3cEntityExtStateTable.
            This index is identical to entPhysicalIndex in ENTITY-MIB"
        ::= { h3cEntityExtStateEntry 1 }

    h3cEntityExtAdminStatus OBJECT-TYPE
        SYNTAX H3cAdminState
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The administrative state for this object."
        ::= { h3cEntityExtStateEntry 2 }

    h3cEntityExtOperStatus OBJECT-TYPE
        SYNTAX H3cOperState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The operate state for this object."
        ::= { h3cEntityExtStateEntry 3 }

    h3cEntityExtStandbyStatus OBJECT-TYPE
        SYNTAX H3cStandbyStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "This object is used for monitoring standby status.
            Not all entities support this object."
        ::= { h3cEntityExtStateEntry 4 }

    h3cEntityExtAlarmLight OBJECT-TYPE
        SYNTAX H3cAlarmStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The alarm status for this entity. It does not include
            the severity of alarms raised on child components. In
            this condition, there will be a alarm light on the entity,
            the object should have the same status with it."
        ::= { h3cEntityExtStateEntry 5 }

    h3cEntityExtCpuUsage OBJECT-TYPE
        SYNTAX Integer32 (0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The CPU usage for this entity. Generally, the CPU usage
            will calculate the overall CPU usage on the entity, and it
            is not sensible with the number of CPU on the entity."
        ::= { h3cEntityExtStateEntry 6 }

    h3cEntityExtCpuUsageThreshold OBJECT-TYPE
        SYNTAX Integer32 (0..100)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the CPU usage. When the CPU usage exceeds
            the threshold, a notification will be sent."
        ::= { h3cEntityExtStateEntry 7 }

    h3cEntityExtMemUsage OBJECT-TYPE
        SYNTAX Integer32 (0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The memory usage for the entity. This object indicates what
            percent of memory are used."
        ::= { h3cEntityExtStateEntry 8 }

    h3cEntityExtMemUsageThreshold OBJECT-TYPE
        SYNTAX Integer32 (0..100)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the Memory usage, When the memory usage
            exceeds the threshold, a notification will be sent."
        ::= { h3cEntityExtStateEntry 9 }

    h3cEntityExtMemSize OBJECT-TYPE
        SYNTAX Unsigned32
        UNITS "bytes"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The size of memory for the entity."
        ::= { h3cEntityExtStateEntry 10 }

    h3cEntityExtUpTime OBJECT-TYPE
        SYNTAX Integer32
        UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The uptime for the entity. The meaning of uptime is
            when the entity is up, and the value of the object
            will add 1 seconds while the entity is running."
        ::= { h3cEntityExtStateEntry 11 }

    h3cEntityExtTemperature OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The temperature for the entity."
        ::= { h3cEntityExtStateEntry 12 }

    h3cEntityExtTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the temperature. When the temperature
            exceeds the threshold, a notification will be sent."
        ::= { h3cEntityExtStateEntry 13 }

    h3cEntityExtVoltage OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The voltage for the entity."
        ::= { h3cEntityExtStateEntry 14 }

    h3cEntityExtVoltageLowThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The low-threshold for the voltage.
            When voltage is lower than low-threshold, a notification will be
            sent."
        ::= { h3cEntityExtStateEntry 15 }

    h3cEntityExtVoltageHighThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The high-threshold for the voltage.
            When voltage greater than high-threshold, a notification will be
            sent."
        ::= { h3cEntityExtStateEntry 16 }

    h3cEntityExtCriticalTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " The threshold for the critical Temperature. When temperature
            exceeds the critical temperature, a notification will be sent."
        ::= { h3cEntityExtStateEntry 17 }

    h3cEntityExtMacAddress OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "MAC Address of the entity."
        ::= { h3cEntityExtStateEntry 18 }

    h3cEntityExtErrorStatus OBJECT-TYPE
        SYNTAX INTEGER
            {
            notSupported(1),
            normal(2),
            postFailure(3),
            entityAbsent(4),
            poeError(11),
            stackError(21),
            stackPortBlocked(22),
            stackPortFailed(23),
            sfpRecvError(31),
            sfpSendError(32),
            sfpBothError(33),
            fanError (41),
            psuError(51),
            rpsError(61),
            moduleFaulty(71),
            sensorError(81),
            hardwareFaulty(91)
            }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Indicate the error state of this entity object. Now it only
            supports Port, general power supply, RPS power supply and
            board/Subcard. It may have one of these values.
            The following four values  can be used for all kinds of entities.

            notSupported(1) means this entity can not support this function.
            normal(2) means the statement of this entity is normal. for ports,
            it doesn't differentiate 10M/s, 100M/s, 1000M/s, duplex and
            half-duplex. For fan, power supply and board-Subcard, it means
            their states are normal.
            postFailure(3)  means the entity fails to POST.
            entityAbsent(4) means the entity is absent now.


            The following values is depended on the entity .

            For Port entities, it may have the following  values. If its POST
            is failure,
            then the value of the instance will be postFailure(3), otherwise
            the value will be normal(2).

            If enable power supply over Ethernet on this port is failure,
            the value of this instance will be poeError(11), otherwise it will
            be normal(2).

            For stack port, if it connects to another stack port normally, and
            these two units merge into one stack, then the value of this
            instance will be normal(2).
            If something wrong occurs and the unit can not merge into stack,
            the value of this instance will be stackPortFailed(23).  If the
            stack port forms resilient daisy chain with another stack port
            on the other unit, the value of this instance will be
            stackPortBlocked(22).


            For SFP ports, if it fail to receive, the value of this instance
            will be sfpRecvError(31), if it fail to send, the value is
            sfpSendError(32), if it fail to send and receive, the value is
            sfpBothError(33), otherwise it will be normal(2).

            fanError(41) means that the fan stops working.

            psuError(51) means that the Power Supply Unit is in the state of
            fault.

            rpsError(61) means the RPS is in the state of fault.

            moduleFaulty(71) means the Module is in the state of fault.

            sensorError(81) means the sensor is in the state of fault.

            hardwareFaulty(91) means the hardware of specified entity is in the state of fault.

            NMS must be compatible with the states which may be added
            in the future."
        ::= { h3cEntityExtStateEntry 19 }

    h3cEntityExtCpuMaxUsage OBJECT-TYPE
        SYNTAX Integer32(0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The maximal CPU usage for the entity in the period of time."
        ::= { h3cEntityExtStateEntry 20 }

    h3cEntityExtLowerTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the lower Temperature. When temperature runs
            under the threshold, a notification will be sent."
        ::= { h3cEntityExtStateEntry 21 }

    h3cEntityExtShutdownTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the shutdown Temperature. When temperature
            exceeds the threshold, a notification will be sent and the entity
            will be shutdown."
        ::= { h3cEntityExtStateEntry 22 }

    h3cEntityExtPhyMemSize OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The memory size of entity. This is the physical attribute of entity."
        ::= { h3cEntityExtStateEntry 23 }

    h3cEntityExtPhyCpuFrequency OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The CPU frequency of entity. Unit of measure is MHZ."
        ::= { h3cEntityExtStateEntry 24 }

    h3cEntityExtFirstUsedDate OBJECT-TYPE
        SYNTAX DateAndTime (SIZE(8))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The first used date of the entity."
        ::= { h3cEntityExtStateEntry 25 }

    h3cEntityExtCpuAvgUsage OBJECT-TYPE
        SYNTAX Integer32(0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The average CPU usage for the entity in a period of time."
        ::= { h3cEntityExtStateEntry 26 }

    h3cEntityExtMemAvgUsage OBJECT-TYPE
        SYNTAX Integer32(0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The average memory usage for the entity in a period of time."
        ::= { h3cEntityExtStateEntry 27 }

    h3cEntityExtMemType OBJECT-TYPE
        SYNTAX OCTET STRING(SIZE (0..64))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The memory type of entity."
        ::= { h3cEntityExtStateEntry 28 }

    h3cEntityExtCriticalLowerTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the critical Temperature.  When temperature
            exceeds the critical lower temperature, a notification will be sent."
        ::= { h3cEntityExtStateEntry 29 }

    h3cEntityExtShutdownLowerTemperatureThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold for the shutdown Temperature.  When temperature
            exceeds the lower threshold, a notification will be sent and the entity
            will be shutdown."
        ::= { h3cEntityExtStateEntry 30 }

    h3cEntityExtCpuUsageRecoverThreshold OBJECT-TYPE
        SYNTAX Integer32 (0..100)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The recover threshold for the CPU usage.  When the CPU usage falls down to
            the threshold, a notification is sent.  The h3cEntityExtCpuUsageRecoverThreshold 
            must be less than or equal to the h3cEntityExtCpuUsageThreshold."
        DEFVAL      { 100 }
        ::= { h3cEntityExtStateEntry 31 }


    h3cEntityExtManu OBJECT IDENTIFIER ::= { h3cEntityExtObjects 2 }

    h3cEntityExtManuTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cEntityExtManuEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The table about device manufacture information."
        ::= { h3cEntityExtManu 1 }

    h3cEntityExtManuEntry OBJECT-TYPE
        SYNTAX H3cEntityExtManuEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The device manufacture information about a particular physical
            entity."
        INDEX { h3cEntityExtManuPhysicalIndex }
        ::= { h3cEntityExtManuTable 1 }

    H3cEntityExtManuEntry ::= SEQUENCE {
        h3cEntityExtManuPhysicalIndex
            Integer32,
        h3cEntityExtManuSerialNum
            SnmpAdminString,
        h3cEntityExtManuBuildInfo
            SnmpAdminString,
        h3cEntityExtManuBOM
            SnmpAdminString,
        h3cEntityExtMacAddressCount
            Unsigned32
     }

    h3cEntityExtManuPhysicalIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The index of h3cEntityExtManuTable.
            This index is identical to entPhysicalIndex in ENTITY-MIB."
        ::= { h3cEntityExtManuEntry 1 }

    h3cEntityExtManuSerialNum OBJECT-TYPE
        SYNTAX SnmpAdminString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Manufacture serial number.
            The manufacture serial number of the entity such as chassis,
            module, and so on.  It is got from the device when manufacturing.
            For low level box-device, the manufacture serial number is the
            device-number of System Control Board(SCB for short), it is written
            into the SCB directly; for middle level or high level frame-device,
            the manufacture serial number is the device-numbers of SCB and
            Service Board, because the SCB, Service Board and chassis are
            separate to sale and the device-number of chassis can not be
            written into board."
        ::= { h3cEntityExtManuEntry 2 }

    h3cEntityExtManuBuildInfo OBJECT-TYPE
        SYNTAX SnmpAdminString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Device version information.
            The device version information of the entity such as chassis,
            module, and so on.  It consists of software version information
            and hardware version information."
        ::= { h3cEntityExtManuEntry 3 }

    h3cEntityExtManuBOM OBJECT-TYPE
        SYNTAX SnmpAdminString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Device BOM code.
            The device BOM code of the entity such as chassis, module, and so
            on.  It is the component code of ERP system, which can be
            disassembled from device-number."
        ::= { h3cEntityExtManuEntry 4 }

    h3cEntityExtMacAddressCount OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "MAC address count.
            The count of MAC addresses of the entity, such as chassis, module,
            or port, and so on."
        ::= { h3cEntityExtManuEntry 5 }

    h3cEntityExtPower OBJECT IDENTIFIER ::= { h3cEntityExtObjects 3 }

    h3cEntityExtPowerTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cEntityExtPowerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "This table describes the power information of all the physical
            entity on the device, such as the fans, the subcards, the boards,
            etc."
        ::= { h3cEntityExtPower 1 }

    h3cEntityExtPowerEntry OBJECT-TYPE
        SYNTAX H3cEntityExtPowerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The entity power information about a particular physical entity."
        INDEX { h3cEntityExtPowerPhysicalIndex }
        ::= { h3cEntityExtPowerTable 1 }

    H3cEntityExtPowerEntry ::= SEQUENCE {
        h3cEntityExtPowerPhysicalIndex
            Integer32,
        h3cEntityExtNominalPower
            Gauge32,
        h3cEntityExtCurrentPower
            Gauge32,
        h3cEntityExtAveragePower
            Integer32,
        h3cEntityExtPeakPower
            Integer32
     }

    h3cEntityExtPowerPhysicalIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The index of h3cEntityExtPowerTable.
            This index is identical to entPhysicalIndex in ENTITY-MIB."
        ::= { h3cEntityExtPowerEntry 1 }

    h3cEntityExtNominalPower OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The nominal power of the entity expressed in milliWatts."
        ::= { h3cEntityExtPowerEntry 2 }

    h3cEntityExtCurrentPower OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The measured usage power of the entity expressed in milliWatts."
        ::= { h3cEntityExtPowerEntry 3 }

    h3cEntityExtAveragePower OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The average power consumed by the entity expressed in milliWatts.
            Writing a value of zero to this object resets its value to zero.
            Writing any other value to this object has no effect on its value
            and an error is returned."
        ::= { h3cEntityExtPowerEntry 4 }

    h3cEntityExtPeakPower OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The peak power consumed by the entity expressed in milliWatts.
            Writing a value of zero to this object resets its value to zero.
            Writing any other value to this object has no effect on its value
            and an error is returned."
        ::= { h3cEntityExtPowerEntry 5 }

-- Process Table
    h3cProcessObjects OBJECT IDENTIFIER ::= { h3cEntityExtObjects 4 }

    h3cProcessTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H3cProcessEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The Table describes the information about a particular process,
            namely a task."
        ::= { h3cProcessObjects 1 }

    h3cProcessEntry OBJECT-TYPE
        SYNTAX H3cProcessEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "The information about a particular process, namely a task."
        INDEX { h3cProcessID }
        ::= { h3cProcessTable 1 }

    H3cProcessEntry ::= SEQUENCE {
        h3cProcessID          Unsigned32,
        h3cProcessName        DisplayString,
        h3cProcessUtil5Min    Unsigned32
     }

    h3cProcessID OBJECT-TYPE
        SYNTAX          Unsigned32
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This object indicates the identifier of process, namely task ID
            in system."
    ::= { h3cProcessEntry 1 }

    h3cProcessName OBJECT-TYPE
        SYNTAX          DisplayString(SIZE(1..32))
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This object indicates the process name."
    ::= { h3cProcessEntry 2 }

    h3cProcessUtil5Min OBJECT-TYPE
        SYNTAX          Unsigned32(0..100)
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION
            "This object provides a general idea of how busy a process caused
            the processor to be over a 5 minute period.  The ratio is calculated
            by the overall CPU usage caused by the process."
    ::= { h3cProcessEntry 3 }

-- End

    h3cEntityExtTraps OBJECT IDENTIFIER ::= { h3cEntityExtend 2 }

    h3cEntityExtTrapsPrefix OBJECT IDENTIFIER ::= { h3cEntityExtTraps 0 }
    h3cEntityExtTrapsInfor OBJECT IDENTIFIER ::= { h3cEntityExtTraps 1 }

    h3cEntityExtTemperatureThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtTemperature,
            h3cEntityExtTemperatureThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtTemperatureThresholdNotification
            indicates the temperature exceeded the threshold.
            In this condition, user should check the status and the
            environment of the entity, sometimes it happens because
            of the failure of air-condition."
        ::= { h3cEntityExtTrapsPrefix 1 }

    h3cEntityExtVoltageLowThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtVoltage,
            h3cEntityExtVoltageLowThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtVoltageLowThresholdNotification indicates
            the voltage is lower than the threshold.

            If the voltage is lower too much than the entity needs,
            the entity will halt."
        ::= { h3cEntityExtTrapsPrefix 2 }

    h3cEntityExtVoltageHighThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtVoltage,
            h3cEntityExtVoltageHighThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtVoltageHighThresholdNotification indicates
            the voltage is higher than the threshold.

            If the voltage is higher too much than the entity needs,
            The entity may be damaged by the high voltage."
        ::= { h3cEntityExtTrapsPrefix 3 }

    h3cEntityExtCpuUsageThresholdNotfication NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtCpuUsage,
            h3cEntityExtCpuUsageThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight,
            h3cEntityExtCpuUsageRecoverThreshold,
            h3cEntityExtFirstTrapTime
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtCpuUsageThresholdNotfication indicates
            the entity is overloaded."
        ::= { h3cEntityExtTrapsPrefix 4 }

    h3cEntityExtMemUsageThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtMemUsage,
            h3cEntityExtMemUsageThreshold,
            h3cEntityExtMemSize,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight,
            h3cEntityExtFirstTrapTime
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtMemUsageThresholdNotification indicates
            the entity is overloaded."
        ::= { h3cEntityExtTrapsPrefix 5 }

    h3cEntityExtOperEnabled NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the entity is operable at present."
        ::= { h3cEntityExtTrapsPrefix 6 }

    h3cEntityExtOperDisabled NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the entity is not operable at present."
        ::= { h3cEntityExtTrapsPrefix 7 }

    h3cEntityExtCriticalTemperatureThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtTemperature,
            h3cEntityExtCriticalTemperatureThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtCriticalTemperatureThresholdNotification
            indicates the temperature exceeds the critical temperature.
            In this condition, user should check the status and the
            environment of the entity, sometimes it happens because
            of the failure of air-condition."
        ::= { h3cEntityExtTrapsPrefix 8 }

    h3cEntityExtSFPAlarmOn NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtErrorStatus,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap is generated when the SFP module fails
            or runs abnormally for some particular reason."
        ::= { h3cEntityExtTrapsPrefix 9 }

    h3cEntityExtSFPAlarmOff NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtErrorStatus,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap is generated when the SFP module restores to
            normal status."
        ::= { h3cEntityExtTrapsPrefix 10 }

    h3cEntityExtSFPPhony NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "This module is NOT sold by authorized manufacturer.
            The normal function of the device or assume the maintenance
            responsibility thereof will NOT be guaranteed.
            The trap is generated periodically after a phony module has been
            found."
        ::= { h3cEntityExtTrapsPrefix 11 }

    h3cEntityInsert NOTIFICATION-TYPE
        OBJECTS { entPhysicalDescr, h3cEntityExtAdminStatus, h3cEntityExtOperStatus }
        STATUS current
        DESCRIPTION
            "The trap is generated when a removeable entity inserting to
            device."
        ::= { h3cEntityExtTrapsPrefix 12 }

    h3cEntityRemove NOTIFICATION-TYPE
        OBJECTS { entPhysicalDescr, h3cEntityExtAdminStatus, h3cEntityExtOperStatus }
        STATUS current
        DESCRIPTION
            "The trap is generated when a removeable entity removing from
            device."
        ::= { h3cEntityExtTrapsPrefix 13 }

    h3cEntityExtForcedPowerOff NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the entity is forced to power off."
        ::= { h3cEntityExtTrapsPrefix 14 }

    h3cEntityExtForcedPowerOn NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the entity is forced to power on."
        ::= { h3cEntityExtTrapsPrefix 15 }

    h3cEntityExtFaultAlarmOn NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtErrorStatus,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates a fault occures on the specified entity."
        ::= { h3cEntityExtTrapsPrefix 16 }

    h3cEntityExtFaultAlarmOff NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtErrorStatus,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight
            }
        STATUS current
        DESCRIPTION
            "The trap indicates a fault disappears on the specified entity."
        ::= { h3cEntityExtTrapsPrefix 17 }

    h3cEntityExtResourceLack NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "The trap indicates that a kind of resource is not enough on the
            specified entity."
        ::= { h3cEntityExtTrapsPrefix 18 }

    h3cEntityExtResourceEnough NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "The trap indicates that the entity recovers from the status of no
            enough resource."
        ::= { h3cEntityExtTrapsPrefix 19 }

    h3cEntityExtTemperatureLower NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtTemperature,
            h3cEntityExtLowerTemperatureThreshold,
            h3cEntityExtAdminStatus
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the temperature of a specified entity is under
            the lower threshold. In this condition, user should check the
            status and the environment of the entity, sometimes it goes wrong
            for some reason."
        ::= { h3cEntityExtTrapsPrefix 20 }

    h3cEntityExtTemperatureTooUp NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtTemperature,
            h3cEntityExtShutdownTemperatureThreshold,
            h3cEntityExtAdminStatus
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the temperature of a specified entity exceeded
            the shutdown threshold. In this condition, user should check the
            status and the environment of the entity, sometimes it goes wrong
            for some reason."
        ::= { h3cEntityExtTrapsPrefix 21 }

    h3cEntityExtTemperatureNormal NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtTemperature,
            h3cEntityExtLowerTemperatureThreshold,
            h3cEntityExtTemperatureThreshold,
            h3cEntityExtAdminStatus
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the temperature of a specified entity recover
            from abnormal status."
        ::= { h3cEntityExtTrapsPrefix 22 }

    h3cEntityExternalAlarmOccur NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "The trap is generated when the monitored device connected to the
             specified entity fails."
        ::= { h3cEntityExtTrapsPrefix 23 }

    h3cEntityExternalAlarmRecover NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "The trap is generated when the failed device connected to the
             specified entity returns to normal."
        ::= { h3cEntityExtTrapsPrefix 24 }

    h3cEntityExtCpuUsageThresholdRecover NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtCpuUsage,
            h3cEntityExtCpuUsageThreshold,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight,
            h3cEntityExtCpuUsageRecoverThreshold,
            h3cEntityExtFirstTrapTime
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the CPU usage descends the threshold."
        ::= { h3cEntityExtTrapsPrefix 25 }

    h3cEntityExtMemUsageThresholdRecover NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtMemUsage,
            h3cEntityExtMemUsageThreshold,
            h3cEntityExtMemSize,
            h3cEntityExtAdminStatus,
            h3cEntityExtAlarmLight,
            h3cEntityExtFirstTrapTime
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the memory usage descends the threshold."
        ::= { h3cEntityExtTrapsPrefix 26 }

    h3cEntityExtMemAllocatedFailed NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtTrapDescription
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the memory allocated failed."
        ::= { h3cEntityExtTrapsPrefix 27 }

    h3cEntityExtECCParityAlarm NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtECCParityAlarmStatus,
            h3cEntityExtTrapDescription
            }
        STATUS current
        DESCRIPTION
            "The trap indicates the ECC(Error Correction Code) parity error alarm."
        ::= { h3cEntityExtTrapsPrefix 28 }

    h3cEntityExtCritLowerTempThresholdNotification NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtTemperature,
            h3cEntityExtCriticalLowerTemperatureThreshold
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtCritLowerTempThresholdNotification
            indicates the temperature is lower than the threshold.

            If the temperature is lower too much than the entity needs,
            the entity will halt."
        ::= { h3cEntityExtTrapsPrefix 29 }

    h3cEntityExtTemperatureTooLow NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtTemperature,
            h3cEntityExtShutdownLowerTemperatureThreshold
            }
        STATUS current
        DESCRIPTION
            "The h3cEntityExtTemperatureTooLow indicates the temperature
            is lower than the threshold.

            If the temperature is lower too much than the entity needs,
            the entity halts now."
        ::= { h3cEntityExtTrapsPrefix 30 }

    h3cEntityExtFanDirectionNotPreferred NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "This trap indicates the specified fan's direction does not
            accord with preferred. The two parameters indicate the entity
            index and physical name of fan."
        ::= { h3cEntityExtTrapsPrefix 31 }

    h3cEntityExtFanDirectionNotAccord NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "This trap indicates the direction of fans does not accord
            with each other. The two parameters indicate the parent
            entity of the fans."
        ::= { h3cEntityExtTrapsPrefix 32 }

    h3cEntityExtSFPInvalid NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName,
            h3cEntityExtSFPInvalidInDays
            }
        STATUS current
        DESCRIPTION
            "The transceiver module is not compatible with the interface card.
            The authorized manufacturer therefore shall NOT guarantee
            the normal function of the transceiver.
            The transceiver module will be invalidated in days.
            Please replace it with a compatible one as soon as possible.
            The trap is generated periodically after a phony transceiver module
            has been found."
        ::= { h3cEntityExtTrapsPrefix 33 }

    h3cEntityExtSFPInvalidNow NOTIFICATION-TYPE
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            entPhysicalName
            }
        STATUS current
        DESCRIPTION
            "This transceiver module is not compatible with the interface card.
            The authorized manufacturer therefore shall NOT guarantee
            the normal function of the transceiver.
            The trap is generated after a phony transceiver module
            has been found."
        ::= { h3cEntityExtTrapsPrefix 34 }

    h3cEntityExtTrapDescription OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE (0..255))
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
            "The information of trap."
        ::= { h3cEntityExtTrapsInfor 1 }

    h3cEntityExtECCParityAlarmStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                         other(1),
                         l1cache(2),       -- cpu l1 data cache err
                         l2cache(3),       -- cpu l2 data cache err
                         sdram(4),         -- sdram err for cpu
                         mac(5),           -- mac err
                         tcam(6),          -- tcam err
                         ingressbuffer(7), -- IB err
                         egressbuffer(8),  -- EB err
                         lpm(9),           -- lpm err
                         controlmemory(10) -- controlmemory err
                        }
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
               "ECC parity error."
        ::= { h3cEntityExtTrapsInfor 2 }

    h3cEntityExtSFPInvalidInDays OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
            "The days when the transceiver module is still valid,
            but after those days, it will be invaldated."
        ::= { h3cEntityExtTrapsInfor 3 }

    h3cEntityExtFirstTrapTime OBJECT-TYPE
        SYNTAX      TimeTicks
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
            "Represents the first trap time."
        ::= { h3cEntityExtTrapsInfor 4 }

--  Conformance and Compliance
    h3cEntityExtConformance OBJECT IDENTIFIER ::= { h3cEntityExtend 3 }

    h3cEntityExtCompliances OBJECT IDENTIFIER ::= { h3cEntityExtConformance 1 }

--  this module
    h3cEntityExtCompliance MODULE-COMPLIANCE
        STATUS current
        DESCRIPTION
            "The compliance statement for systems supporting this MIB."
        MODULE -- this module
            MANDATORY-GROUPS { h3cEntityExtGroup, h3cEntityExtNotificationGroup,
                               h3cEntityExtManuGroup, h3cEntityExtPowerGroup }
            OBJECT h3cEntityExtAdminStatus
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
            OBJECT h3cEntityExtCpuUsageThreshold
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
            OBJECT h3cEntityExtMemUsageThreshold
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
            OBJECT h3cEntityExtTemperatureThreshold
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
            OBJECT h3cEntityExtVoltageLowThreshold
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
            OBJECT h3cEntityExtVoltageHighThreshold
                MIN-ACCESS read-only
                DESCRIPTION
                    "Write access is not required."
        ::= { h3cEntityExtCompliances 1 }

    h3cEntityExtGroups OBJECT IDENTIFIER ::= { h3cEntityExtConformance 2 }

    h3cEntityExtGroup OBJECT-GROUP
        OBJECTS {
            h3cEntityExtPhysicalIndex,
            h3cEntityExtAdminStatus,
            h3cEntityExtOperStatus,
            h3cEntityExtStandbyStatus,
            h3cEntityExtAlarmLight,
            h3cEntityExtCpuUsage,
            h3cEntityExtCpuUsageThreshold,
            h3cEntityExtMemUsage,
            h3cEntityExtMemUsageThreshold,
            h3cEntityExtMemSize,
            h3cEntityExtUpTime,
            h3cEntityExtTemperature,
            h3cEntityExtTemperatureThreshold,
            h3cEntityExtVoltage,
            h3cEntityExtVoltageLowThreshold,
            h3cEntityExtVoltageHighThreshold,
            h3cEntityExtCriticalTemperatureThreshold,
            h3cEntityExtMacAddress,
            h3cEntityExtErrorStatus,
            h3cEntityExtCpuMaxUsage,
            h3cEntityExtLowerTemperatureThreshold,
            h3cEntityExtShutdownTemperatureThreshold,
            h3cEntityExtPhyMemSize,
            h3cEntityExtPhyCpuFrequency,
            h3cEntityExtFirstUsedDate,
            h3cEntityExtCpuAvgUsage,
            h3cEntityExtMemAvgUsage,
            h3cEntityExtMemType,
            h3cEntityExtCriticalLowerTemperatureThreshold,
            h3cEntityExtShutdownLowerTemperatureThreshold,
            h3cEntityExtCpuUsageRecoverThreshold
            }
        STATUS current
        DESCRIPTION
            "Entity Extend group."
        ::= { h3cEntityExtGroups 1 }

    h3cEntityExtNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS { h3cEntityExtTemperatureThresholdNotification,
                h3cEntityExtVoltageLowThresholdNotification,
                h3cEntityExtVoltageHighThresholdNotification,
                h3cEntityExtCpuUsageThresholdNotfication,
                h3cEntityExtMemUsageThresholdNotification,
                h3cEntityExtOperEnabled,
                h3cEntityExtOperDisabled,
                h3cEntityExtCriticalTemperatureThresholdNotification,
                h3cEntityExtSFPAlarmOn,
                h3cEntityExtSFPAlarmOff,
                h3cEntityExtSFPPhony,
                h3cEntityInsert,
                h3cEntityRemove,
                h3cEntityExtForcedPowerOff,
                h3cEntityExtForcedPowerOn,
                h3cEntityExtFaultAlarmOn,
                h3cEntityExtFaultAlarmOff,
                h3cEntityExtResourceLack,
                h3cEntityExtResourceEnough,
                h3cEntityExtTemperatureLower,
                h3cEntityExtTemperatureTooUp,
                h3cEntityExtTemperatureNormal,
                h3cEntityExternalAlarmOccur,
                h3cEntityExternalAlarmRecover,
                h3cEntityExtCpuUsageThresholdRecover,
                h3cEntityExtMemUsageThresholdRecover,
                h3cEntityExtMemAllocatedFailed,
                h3cEntityExtECCParityAlarm,
                h3cEntityExtCritLowerTempThresholdNotification,
                h3cEntityExtTemperatureTooLow,
                h3cEntityExtFanDirectionNotPreferred,
                h3cEntityExtFanDirectionNotAccord,
                h3cEntityExtSFPInvalid,
                h3cEntityExtSFPInvalidNow
                }
        STATUS current
        DESCRIPTION
            "Entity Extend Notification group."
            ::= { h3cEntityExtGroups 2 }

    h3cEntityExtManuGroup OBJECT-GROUP
        OBJECTS {
            h3cEntityExtManuPhysicalIndex,
            h3cEntityExtManuSerialNum,
            h3cEntityExtManuBuildInfo,
            h3cEntityExtManuBOM,
            h3cEntityExtMacAddressCount
            }
        STATUS current
        DESCRIPTION
            "Standard Device Manufacture Information group."
        ::= { h3cEntityExtGroups 3 }

    h3cEntityExtPowerGroup OBJECT-GROUP
        OBJECTS {
            h3cEntityExtPowerPhysicalIndex,
            h3cEntityExtNominalPower,
            h3cEntityExtCurrentPower,
            h3cEntityExtAveragePower,
            h3cEntityExtPeakPower
            }
        STATUS current
        DESCRIPTION
            "Standard Entity Power Information group."
        ::= { h3cEntityExtGroups 4 }

    END
