-- =========================================================================
-- Copyright (C) 2005 by HUAWEI-3COM TECHNOLOGIES. All rights reserved.
--
-- Description:  DHCP Server MIB
-- Reference:  Enterprise MIB
-- Version:V1.52
-- History:
--     initial version 2003-03-06
--     V1.0 6th Mar 2004
--  V1.1 Modified by chenhua 2004-08-13
--   Add 0 to the vlaue list of hwDHCPSIPResetFlag for get-opporation
--  V1.2 Modified by chenhua 2004-09-16
--   Modify  the default value of hwDHCPSWriteDataDelay  to 300
--  V1.3 2004-10-12 updated by gaolong
--   Import TEXTUAL-CONVENTION
--  v1.4 Modified by xinhaing 2004-03-03
--   Add a new table  : hwDHCPSIPInUseExTable
--   The satus of the table hwDHCPSIPInUseTable is modified to be deprecated
--   Correct some spelling errors in hwDHCPSIPInUseTable's description
--   Adjust file format
-- v1.5 2006-02-22 Modified by xuyufei
--   Modify the default value of hwDHCPSDetectingServerStatus to disabled
--   Modify the default value of hwDHCPSGlobalPoolClientNetbiosType
--   and hwDHCPSInterfacePoolClientNetbiosType to 0
--   Correct the description of hwDHCPSGlobalPoolOptionHexString,
--   hwDHCPSInterfacePoolOptionHexString, hwDHCPSGlobalPoolNumber,
--   hwDHCPSInterfacePoolNumber
-- v1.51 2006-04-13
--   change value range of hwDHCPSIPInUsePoolName and hwDHCPSIPInUsePoolNameEx
-- v1.52 2011-01-19 Modified by ganchanghua
--   change SYNTAX of hwDHCPSConflictIPDetectTime to OCTET STRING(SIZE(1..20))
-- =========================================================================
A3COM-HUAWEI-DHCPS-MIB DEFINITIONS ::= BEGIN
    IMPORTS
        huaweiMgmt, hwDhcp
            FROM A3COM-HUAWEI-OID-MIB
        ifIndex
            FROM RFC1213-MIB
        OBJECT-GROUP
            FROM SNMPv2-CONF
        IpAddress, Integer32, OBJECT-TYPE, MODULE-IDENTITY
            FROM SNMPv2-SMI
        RowStatus, MacAddress, TEXTUAL-CONVENTION
            FROM SNMPv2-TC;

    hwDHCPServerMib MODULE-IDENTITY
        LAST-UPDATED "200602200000Z"        -- February 20, 2006 at 00:00 GMT
        ORGANIZATION
            "Huawei 3Com Technologies Co., Ltd"
        CONTACT-INFO
            "Platform Team Huawei 3Com Technologies Co., Ltd.
            Hai-Dian District Beijing P.R. China
            http://www.huawei-3com.com
            Zip:100085"
        DESCRIPTION
            "This MIB describes objects used for managing DHCP server."
        ::= { hwDhcp 2 }
--
-- Textual Conventions
--

    EnabledStatus ::= TEXTUAL-CONVENTION
        STATUS      current
        DESCRIPTION
            "To descript the status of some function is Enabled or
            Disabled."
        SYNTAX      INTEGER
            {
                enabled(1),
                disabled(0)
            }

--
-- Node definitions
--

    hwDHCPServerMibObject OBJECT IDENTIFIER ::= { hwDHCPServerMib 1 }

--  Part 1: For DHCP server global pool
--
-- =================================================================
-- 1st Table of hwDHCPServerMibObject: hwDHCPSGlobalPoolTable
-- =================================================================
    hwDHCPSGlobalPoolTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSGlobalPoolEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for creating DHCP server global pools."
        ::= { hwDHCPServerMibObject 1 }

    hwDHCPSGlobalPoolEntry OBJECT-TYPE
        SYNTAX      HwDHCPSGlobalPoolEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry containing objects for creating or
            deleting a global pool for the DHCP server."
        INDEX { hwDHCPSGlobalPoolName }
        ::= { hwDHCPSGlobalPoolTable 1 }

    HwDHCPSGlobalPoolEntry ::=
        SEQUENCE
            {
                hwDHCPSGlobalPoolName         OCTET STRING,
                hwDHCPSGlobalPoolRowStatus    RowStatus
            }

    hwDHCPSGlobalPoolName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "DHCP server global pool name."
        ::= { hwDHCPSGlobalPoolEntry 1 }

    hwDHCPSGlobalPoolRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus. Three actions are used: active,
            createAndGo, destroy."
        ::= { hwDHCPSGlobalPoolEntry 2 }

--  =================================================================
-- 2nd Table of hwDHCPServerMibObject: hwDHCPSGlobalPoolConfigTable
-- =================================================================
    hwDHCPSGlobalPoolConfigTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSGlobalPoolConfigEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing the configurations of dhcp
            server global pools."
        ::= { hwDHCPServerMibObject 2 }

    hwDHCPSGlobalPoolConfigEntry OBJECT-TYPE
        SYNTAX      HwDHCPSGlobalPoolConfigEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry containing the objects for configuring
            the network ip or host ip etc. to global pools for
            DHCP server."
        INDEX { hwDHCPSGlobalPoolName }
        ::= { hwDHCPSGlobalPoolConfigTable 1 }

    HwDHCPSGlobalPoolConfigEntry ::=
        SEQUENCE
            {
                hwDHCPSGlobalPoolType              INTEGER,
                hwDHCPSGlobalPoolNetwork           IpAddress,
                hwDHCPSGlobalPoolNetworkMask       IpAddress,
                hwDHCPSGlobalPoolHostIPAddr        IpAddress,
                hwDHCPSGlobalPoolHostMask          IpAddress,
                hwDHCPSGlobalPoolHostHAddr         MacAddress,
                hwDHCPSGlobalPoolConfigUndoFlag    INTEGER
            }

    hwDHCPSGlobalPoolType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                null(0),
                host(1),
                network(2)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Type of a DHCP global pool. Any operations of
            this object will be bound with the operations
            of hwDHCPSGlobalPoolNetwork, hwDHCPSGlobalPoolHostIPAddr,
            or hwDHCPSGlobalPoolHostHAddr.
            That means any operation of this object alone will
            be regarded as invalid operation."
        ::= { hwDHCPSGlobalPoolConfigEntry 1 }

    hwDHCPSGlobalPoolNetwork OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Network ip of a DHCP global pool.
            To delete a configured network ip, please set
            hwDHCPSGlobalPoolConfigUndoFlag to 1."
        ::= { hwDHCPSGlobalPoolConfigEntry 2 }

    hwDHCPSGlobalPoolNetworkMask OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Net mask of a DHCP global pool(network).
            The SET operation to this object ought to be with
            the SET of hwDHCPSGlobalPoolNetwork together, and
            any SET operation alone to this object will be
            regarded as an invalid operation.
            When a network ip of a DHCP global pool was
            deleted, the net mask would also be deleted
            automatically, and no further operation needed."
        ::= { hwDHCPSGlobalPoolConfigEntry 3 }

    hwDHCPSGlobalPoolHostIPAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Host ip of a DHCP global pool.
            To delete a configured network ip, please set
            hwDHCPSGlobalPoolConfigUndoFlag to 2."
        ::= { hwDHCPSGlobalPoolConfigEntry 4 }

    hwDHCPSGlobalPoolHostMask OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Net mask of a DHCP global pool(host)
            The SET operation to this object ought to be with
            the SET of hwDHCPSGlobalPoolHostIPAddr together,
            and any SET operation alone to this object will be
            regarded as an invalid operation.
            When a host ip of a DHCP global pool was
            deleted, the net mask would also be deleted
            automatically, and no further operation needed."
        ::= { hwDHCPSGlobalPoolConfigEntry 5 }

    hwDHCPSGlobalPoolHostHAddr OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Hardware address of a DHCP global pool(host).
            To delete a configured hardware address, please
            set hwDHCPSGlobalPoolConfigUndoFlag to 3."
        ::= { hwDHCPSGlobalPoolConfigEntry 6 }

    hwDHCPSGlobalPoolConfigUndoFlag OBJECT-TYPE
        SYNTAX      INTEGER
            {
                undonetworkip(1),
                undohostip(2),
                undohosthaddr(3)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Flag of undo operation for hwDHCPSGlobalPoolConfigTable."
        ::= { hwDHCPSGlobalPoolConfigEntry 7 }

--  =================================================================
-- 3rd Table of hwDHCPServerMibObject: hwDHCPSGlobalPoolParaTable
-- =================================================================
    hwDHCPSGlobalPoolParaTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSGlobalPoolParaEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring parameters to DHCP global
            pools."
        ::= { hwDHCPServerMibObject 3 }

    hwDHCPSGlobalPoolParaEntry OBJECT-TYPE
        SYNTAX      HwDHCPSGlobalPoolParaEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry containing the objects for the
            configurations of parameters of DHCP global pools."
        INDEX { hwDHCPSGlobalPoolName }
        ::= { hwDHCPSGlobalPoolParaTable 1 }

    HwDHCPSGlobalPoolParaEntry ::=
        SEQUENCE
            {
                hwDHCPSGlobalPoolLeaseDay                 INTEGER,
                hwDHCPSGlobalPoolLeaseHour                INTEGER,
                hwDHCPSGlobalPoolLeaseMinute              INTEGER,
                hwDHCPSGlobalPoolLeaseUnlimited           INTEGER,
                hwDHCPSGlobalPoolDomainName               OCTET STRING,
                hwDHCPSGlobalPoolClientGatewayIPString    OCTET STRING,
                hwDHCPSGlobalPoolClientGatewayIPUndo      IpAddress,
                hwDHCPSGlobalPoolClientDNSIPString        OCTET STRING,
                hwDHCPSGlobalPoolClientDNSIPUndo          IpAddress,
                hwDHCPSGlobalPoolClientNetbiosType        INTEGER,
                hwDHCPSGlobalPoolClientNbnsIPString       OCTET STRING,
                hwDHCPSGlobalPoolClientNbnsIPUndo         IpAddress,
                hwDHCPSGlobalPoolParaUndoFlag             INTEGER,
                hwDHCPSGlobalPoolIPInUseReset             INTEGER
            }

    hwDHCPSGlobalPoolLeaseDay OBJECT-TYPE
        SYNTAX      INTEGER(0..365)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of days of the lease."
        DEFVAL { 1 }
        ::= { hwDHCPSGlobalPoolParaEntry 1 }

    hwDHCPSGlobalPoolLeaseHour OBJECT-TYPE
        SYNTAX      INTEGER(0..23)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of hours of the lease."
        DEFVAL { 0 }
        ::= { hwDHCPSGlobalPoolParaEntry 2 }

    hwDHCPSGlobalPoolLeaseMinute OBJECT-TYPE
        SYNTAX      INTEGER(0..59)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of minutes of the lease."
        DEFVAL { 0 }
        ::= { hwDHCPSGlobalPoolParaEntry 3 }

    hwDHCPSGlobalPoolLeaseUnlimited OBJECT-TYPE
        SYNTAX      INTEGER
            {
                invalid(0),
                unlimited(1)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A flag denoting if the lease of a pool is
            unlimited."
        ::= { hwDHCPSGlobalPoolParaEntry 4 }

    hwDHCPSGlobalPoolDomainName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Domain name for DHCP clients."
        ::= { hwDHCPSGlobalPoolParaEntry 5 }

    hwDHCPSGlobalPoolClientGatewayIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "String of gateway ip addresses for DHCP clients.
            Since mostly 8 ip can be configured for a pool
            totally, a string is defined to get or configure 8 ip
            ip at a time."
        ::= { hwDHCPSGlobalPoolParaEntry 6 }

    hwDHCPSGlobalPoolClientGatewayIPUndo OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A gateway ip address to delete. This object is
            only for deleting a given ip of gateway router."
        ::= { hwDHCPSGlobalPoolParaEntry 7 }

    hwDHCPSGlobalPoolClientDNSIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "String of DNS server ip addresses for DHCP clients.
            Since mostly 8 ip can be configured for a pool
            totally, a string is defined to get or configure 8
            ip at a time."
        ::= { hwDHCPSGlobalPoolParaEntry 8 }

    hwDHCPSGlobalPoolClientDNSIPUndo OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A DNS server ip address to delete. This object
            is only for deleting a given ip of DNS server."
        ::= { hwDHCPSGlobalPoolParaEntry 9 }

    hwDHCPSGlobalPoolClientNetbiosType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                null(0),
                bnode(1),
                pnode(2),
                mnode(4),
                hnode(8)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "NetBios node type for DHCP clients."
        DEFVAL { 0 }
        ::= { hwDHCPSGlobalPoolParaEntry 10 }

    hwDHCPSGlobalPoolClientNbnsIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "String of NetBios server ip addresses for DHCP
            clients. Since mostly 8 ip can be configured for
            a pool totally, so a string is defined to get or
            configure 8 ip at a time."
        ::= { hwDHCPSGlobalPoolParaEntry 11 }

    hwDHCPSGlobalPoolClientNbnsIPUndo OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A NetBios server ip address to delete. This
            object is only for deleting a given ip of NetBios
            server."
        ::= { hwDHCPSGlobalPoolParaEntry 12 }

    hwDHCPSGlobalPoolParaUndoFlag OBJECT-TYPE
        SYNTAX      INTEGER
            {
                undoDomain(1),
                undoLease(2),
                undoGateway(3),
                undoDns(4),
                undoNbns(5),
                undoNbType(6)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Flag of undo-operation for hwDHCPSGlobalPoolParaTable."
        ::= { hwDHCPSGlobalPoolParaEntry 13 }

    hwDHCPSGlobalPoolIPInUseReset OBJECT-TYPE
        SYNTAX      INTEGER
            {
                reset(1)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Reset the auto binding ip of the given global
            pool for DHCP server."
        ::= { hwDHCPSGlobalPoolParaEntry 14 }

--  =================================================================
-- 4th Table of hwDHCPServerMibObject: hwDHCPSGlobalPoolOptionTable
-- =================================================================
    hwDHCPSGlobalPoolOptionTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSGlobalPoolOptionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring options to DHCP global pools."
        ::= { hwDHCPServerMibObject 4 }

    hwDHCPSGlobalPoolOptionEntry OBJECT-TYPE
        SYNTAX      HwDHCPSGlobalPoolOptionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry containing the objects for configuring
            options to DHCP global pools."
        INDEX { hwDHCPSGlobalPoolName, hwDHCPSGlobalPoolOptionCode }
        ::= { hwDHCPSGlobalPoolOptionTable 1 }

    HwDHCPSGlobalPoolOptionEntry ::=
        SEQUENCE
            {
                hwDHCPSGlobalPoolOptionCode         INTEGER,
                hwDHCPSGlobalPoolOptionType         INTEGER,
                hwDHCPSGlobalPoolOptionAscii        OCTET STRING,
                hwDHCPSGlobalPoolOptionHexString    OCTET STRING,
                hwDHCPSGlobalPoolOptionIPString     OCTET STRING,
                hwDHCPSGlobalPoolOptionRowStatus    RowStatus
             }

    hwDHCPSGlobalPoolOptionCode OBJECT-TYPE
        SYNTAX      INTEGER(1..254)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Option code."
        ::= { hwDHCPSGlobalPoolOptionEntry 1 }

    hwDHCPSGlobalPoolOptionType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                ascii(1),
                hex(2),
                ip(3)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Option type."
        ::= { hwDHCPSGlobalPoolOptionEntry 2 }

    hwDHCPSGlobalPoolOptionAscii OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..63))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ascii string of an option."
        ::= { hwDHCPSGlobalPoolOptionEntry 3 }

    hwDHCPSGlobalPoolOptionHexString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..143))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Hex string of an option. 1st to 16th hex strings,
            which are 2 bytes, 4 bytes, 6 bytes or 8 bytes,
            can be configured at most simultaneously.
            That means the format of each string
            must be '12', '1234', '123456' or '12345678'."
        ::= { hwDHCPSGlobalPoolOptionEntry 4 }

    hwDHCPSGlobalPoolOptionIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ip string of an option. 1 to 8 ip addresses  can
            be configured at most simultaneously."
        ::= { hwDHCPSGlobalPoolOptionEntry 5 }

    hwDHCPSGlobalPoolOptionRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus. Three actions are used: active,
            createAndGo, destroy."
        ::= { hwDHCPSGlobalPoolOptionEntry 6 }

--  =================================================================
-- 5th Table of hwDHCPServerMibObject:hwDHCPSGlobalTreeTable
-- =================================================================
    hwDHCPSGlobalTreeTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSGlobalTreeEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing the information of the tree of
            DHCP global pools."
        ::= { hwDHCPServerMibObject 5 }

    hwDHCPSGlobalTreeEntry OBJECT-TYPE
        SYNTAX      HwDHCPSGlobalTreeEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry of objects containing the information
            for displaying the tree of DHCP global pools."
        INDEX { hwDHCPSGlobalPoolName }
        ::= { hwDHCPSGlobalTreeTable 1 }

    HwDHCPSGlobalTreeEntry ::=
        SEQUENCE
            {
                hwDHCPSGlobalTreeParentNodeName        OCTET STRING,
                hwDHCPSGlobalTreeChildNodeName         OCTET STRING,
                hwDHCPSGlobalTreePreSiblingNodeName    OCTET STRING,
                hwDHCPSGlobalTreeSiblingNodeName       OCTET STRING
             }

    hwDHCPSGlobalTreeParentNodeName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Pool name of the parent node."
        ::= { hwDHCPSGlobalTreeEntry 1 }

    hwDHCPSGlobalTreeChildNodeName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Pool name of the child node."
        ::= { hwDHCPSGlobalTreeEntry 2 }

    hwDHCPSGlobalTreePreSiblingNodeName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Pool name of the presibling node."
        ::= { hwDHCPSGlobalTreeEntry 3 }

    hwDHCPSGlobalTreeSiblingNodeName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Pool name of the sibling node."
        ::= { hwDHCPSGlobalTreeEntry 4 }

--  Part 2: For DHCP server interface pool
--
-- =================================================================
-- 6th Table of hwDHCPServerMibObject: hwDHCPSInterfacePoolParaTable
-- =================================================================
    hwDHCPSInterfacePoolParaTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSInterfacePoolParaEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring parameters to DHCP interface
            pools."
        ::= { hwDHCPServerMibObject 6 }

    hwDHCPSInterfacePoolParaEntry OBJECT-TYPE
        SYNTAX      HwDHCPSInterfacePoolParaEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry of objects for configuring parameters
            to DHCP interface pools.
            The index of this entry is the ifIndex of ethernet."
        INDEX { ifIndex }
        ::= { hwDHCPSInterfacePoolParaTable 1 }

    HwDHCPSInterfacePoolParaEntry ::=
        SEQUENCE
            {
                hwDHCPSInterfacePoolLeaseDay              INTEGER,
                hwDHCPSInterfacePoolLeaseHour             INTEGER,
                hwDHCPSInterfacePoolLeaseMinute           INTEGER,
                hwDHCPSInterfacePoolLeaseUnlimited        INTEGER,
                hwDHCPSInterfacePoolDomainName            OCTET STRING,
                hwDHCPSInterfacePoolClientDNSIPString     OCTET STRING,
                hwDHCPSInterfacePoolClientDNSIPUndo       IpAddress,
                hwDHCPSInterfacePoolClientNetbiosType     INTEGER,
                hwDHCPSInterfacePoolClientNbnsIPString    OCTET STRING,
                hwDHCPSInterfacePoolClientNbnsIPUndo      IpAddress,
                hwDHCPSInterfacePoolParaUndoFlag          INTEGER,
                hwDHCPSInterfacePoolIPInUseReset          INTEGER
    }

    hwDHCPSInterfacePoolLeaseDay OBJECT-TYPE
        SYNTAX      INTEGER(0..365)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of days of the lease."
        DEFVAL { 1 }
        ::= { hwDHCPSInterfacePoolParaEntry 1 }

    hwDHCPSInterfacePoolLeaseHour OBJECT-TYPE
        SYNTAX      INTEGER(0..23)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of hours of the lease."
        DEFVAL { 0 }
        ::= { hwDHCPSInterfacePoolParaEntry 2 }

    hwDHCPSInterfacePoolLeaseMinute OBJECT-TYPE
        SYNTAX      INTEGER(0..59)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Number of minutes of the lease."
        DEFVAL { 0 }
        ::= { hwDHCPSInterfacePoolParaEntry 3 }

    hwDHCPSInterfacePoolLeaseUnlimited OBJECT-TYPE
        SYNTAX      INTEGER
            {
                invalid(0),
                unlimited(1)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A flag denoting if the lease of a pool is
            unlimited."
        ::= { hwDHCPSInterfacePoolParaEntry 4 }

    hwDHCPSInterfacePoolDomainName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..255))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Domain name for DHCP clients."
        ::= { hwDHCPSInterfacePoolParaEntry 5 }

    hwDHCPSInterfacePoolClientDNSIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "String of DNS server ip addresses for DHCP clients.
            Since mostly 8 ip can be configured for a pool
            totally, a string is defined to get or configure 8
            ip at a time."
        ::= { hwDHCPSInterfacePoolParaEntry 6 }

    hwDHCPSInterfacePoolClientDNSIPUndo OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A DNS server ip address to delete. This object
            is only for deleting a given ip of DNS server."
        ::= { hwDHCPSInterfacePoolParaEntry 7 }

    hwDHCPSInterfacePoolClientNetbiosType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                 null(0),
                 bnode(1),
                 pnode(2),
                 mnode(4),
                 hnode(8)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "NetBios node type for DHCP clients."
        DEFVAL { 0 }
        ::= { hwDHCPSInterfacePoolParaEntry 8 }

    hwDHCPSInterfacePoolClientNbnsIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "String of NetBios server ip addresses for DHCP
            clients. Since mostly 8 ip can be configured for
            a pool totally, so a string is defined to get or
            configure 8 ip at a time."
        ::= { hwDHCPSInterfacePoolParaEntry 9 }

    hwDHCPSInterfacePoolClientNbnsIPUndo OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A NetBios server ip address to delete. This
            object is only for deleting a given ip of NetBios
            server."
        ::= { hwDHCPSInterfacePoolParaEntry 10 }

    hwDHCPSInterfacePoolParaUndoFlag OBJECT-TYPE
        SYNTAX      INTEGER
            {
                undoDomain(1),
                undoLease(2),
                undoDns(4),
                undoNbns(5),
                undoNbType(6)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Flag of undo-operation for
            hwDHCPSInterfacePoolParaTable."
        ::= { hwDHCPSInterfacePoolParaEntry 11 }

    hwDHCPSInterfacePoolIPInUseReset OBJECT-TYPE
        SYNTAX      INTEGER
            {
                reset(1)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Reset the auto binding ip of the given interface
            pool for DHCP server."
        ::= { hwDHCPSInterfacePoolParaEntry 12 }

--  =====================================================================
-- 7th Table of hwDHCPServerMibObject: hwDHCPSInterfacePoolOptionTable
-- =====================================================================
    hwDHCPSInterfacePoolOptionTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSInterfacePoolOptionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring options to DHCP interface pools."
        ::= { hwDHCPServerMibObject 7 }

    hwDHCPSInterfacePoolOptionEntry OBJECT-TYPE
        SYNTAX      HwDHCPSInterfacePoolOptionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry of objects for configuring options
            to DHCP interface pools.
            The index of this entry is the ifIndex of ethernet."
        INDEX { ifIndex, hwDHCPSInterfacePoolOptionCode }
        ::= { hwDHCPSInterfacePoolOptionTable 1 }

    HwDHCPSInterfacePoolOptionEntry ::=
        SEQUENCE
            {
                hwDHCPSInterfacePoolOptionCode         INTEGER,
                hwDHCPSInterfacePoolOptionType         INTEGER,
                hwDHCPSInterfacePoolOptionAscii        OCTET STRING,
                hwDHCPSInterfacePoolOptionHexString    OCTET STRING,
                hwDHCPSInterfacePoolOptionIPString     OCTET STRING,
                hwDHCPSInterfacePoolOptionRowStatus    RowStatus
             }

    hwDHCPSInterfacePoolOptionCode OBJECT-TYPE
        SYNTAX      INTEGER(1..254)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Option Code."
        ::= { hwDHCPSInterfacePoolOptionEntry 1 }

    hwDHCPSInterfacePoolOptionType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                ascii(1),
                hex(2),
                ip(3)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Option type."
        ::= { hwDHCPSInterfacePoolOptionEntry 2 }

    hwDHCPSInterfacePoolOptionAscii OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..63))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ascii string of an option."
        ::= { hwDHCPSInterfacePoolOptionEntry 3 }

    hwDHCPSInterfacePoolOptionHexString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..143))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Hex string of an option. 1st to 16th hex strings,
            which are 2 bytes, 4 bytes, 6 bytes or 8 bytes,
            can be configured at most simultaneously.
            That means the format of each string
            must be '12', '1234', '123456' or '12345678'."
        ::= { hwDHCPSInterfacePoolOptionEntry 4 }

    hwDHCPSInterfacePoolOptionIPString OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(0..129))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ip string of an option. 1 to 8 ip addresses  can
            be configured at most simultaneously."
        ::= { hwDHCPSInterfacePoolOptionEntry 5 }

    hwDHCPSInterfacePoolOptionRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus. Three actions are used: active,
            createAndGo, destroy."
        ::= { hwDHCPSInterfacePoolOptionEntry 6 }

--  =========================================================================
-- 8th Table of hwDHCPServerMibObject: hwDHCPSInterfacePoolStaticBindTable
-- =========================================================================
    hwDHCPSInterfacePoolStaticBindTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSInterfacePoolStaticBindEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring static binding to DHCP
            interface pools."
        ::= { hwDHCPServerMibObject 8 }

    hwDHCPSInterfacePoolStaticBindEntry OBJECT-TYPE
        SYNTAX      HwDHCPSInterfacePoolStaticBindEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry of objects for configuring static
            binding to DHCP interface pools.
            The index of this entry is the ifIndex of ethernet."
        INDEX { ifIndex, hwDHCPSInterfacePoolStaticBindIP }
        ::= { hwDHCPSInterfacePoolStaticBindTable 1 }

    HwDHCPSInterfacePoolStaticBindEntry ::=
        SEQUENCE
            {
                hwDHCPSInterfacePoolStaticBindIP           IpAddress,
                hwDHCPSInterfacePoolStaticBindMac          MacAddress,
                hwDHCPSInterfacePoolStaticBindRowStatus    RowStatus
            }

    hwDHCPSInterfacePoolStaticBindIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Ip address in static binding for DHCP
            interface pools."
        ::= { hwDHCPSInterfacePoolStaticBindEntry 1 }

    hwDHCPSInterfacePoolStaticBindMac OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Hardware address in static binding for DHCP
            interface pools."
        ::= { hwDHCPSInterfacePoolStaticBindEntry 2 }

    hwDHCPSInterfacePoolStaticBindRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus. Three actions are used: active,
            createAndGo, destroy."
        ::= { hwDHCPSInterfacePoolStaticBindEntry 3 }

--  Part 3: For DHCP server
--
-- =================================================================
-- 9th Table of hwDHCPServerMibObject: hwDHCPSIPInUseTable
-- =================================================================
    hwDHCPSIPInUseTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSIPInUseEntry
        MAX-ACCESS  not-accessible
        STATUS      deprecated
        DESCRIPTION
            "A table for displaying the information of ip in use
            for DHCP server pools."
        ::= { hwDHCPServerMibObject 9 }

    hwDHCPSIPInUseEntry OBJECT-TYPE
        SYNTAX      HwDHCPSIPInUseEntry
        MAX-ACCESS  not-accessible
        STATUS      deprecated
        DESCRIPTION
            "An entry of objects for displaying information
            of ip in use for DHCP server pools."
        INDEX { hwDHCPSIPInUseHAddr }
        ::= { hwDHCPSIPInUseTable 1 }

    HwDHCPSIPInUseEntry ::=
        SEQUENCE
            {
                hwDHCPSIPInUseHAddr        MacAddress,
                hwDHCPSIPInUseIP           IpAddress,
                hwDHCPSIPInUseEndLease     OCTET STRING,
                hwDHCPSIPInUseType         INTEGER,
                hwDHCPSIPInUsePoolName     OCTET STRING,
                hwDHCPSIPInUseInterface    INTEGER,
                hwDHCPSIPInUseVlan         INTEGER,
                hwDHCPSIPInUseAtmpvc       INTEGER
            }

    hwDHCPSIPInUseHAddr OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Hardware address."
        ::= { hwDHCPSIPInUseEntry 1 }

    hwDHCPSIPInUseIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Ip address in use."
        ::= { hwDHCPSIPInUseEntry 2 }

    hwDHCPSIPInUseEndLease OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..20))
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "End time of lease.
            The structure of the OCTET STRING is
            month/day/year hour:munite:second --
            MM/DD/YYYY hh:mm:ss. "
        ::= { hwDHCPSIPInUseEntry 3 }

    hwDHCPSIPInUseType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                manual(1),
                auto(2),
                release(3)
            }
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Type of binding."
        ::= { hwDHCPSIPInUseEntry 4 }

    hwDHCPSIPInUsePoolName OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..255))
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Name of the DHCP server pool the ip belongs to."
        ::= { hwDHCPSIPInUseEntry 5 }

    hwDHCPSIPInUseInterface OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Interface index information."
        ::= { hwDHCPSIPInUseEntry 6 }

    hwDHCPSIPInUseVlan OBJECT-TYPE
        SYNTAX      INTEGER(1..4094)
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Vlan information."
        ::= { hwDHCPSIPInUseEntry 7 }

    hwDHCPSIPInUseAtmpvc OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      deprecated
        DESCRIPTION
            "Pvc information."
        ::= { hwDHCPSIPInUseEntry 8 }

--  =================================================================
-- 10th Table of hwDHCPServerMibObject: hwDHCPSForbiddenIPTable
-- =================================================================
    hwDHCPSForbiddenIPTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSForbiddenIPEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for configuring forbidden ip to DHCP server."
        ::= { hwDHCPServerMibObject 10 }

    hwDHCPSForbiddenIPEntry OBJECT-TYPE
        SYNTAX      HwDHCPSForbiddenIPEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry for configuring forbidden ip to DHCP
            server."
        INDEX { hwDHCPSForbiddenIPStart, hwDHCPSForbiddenIPEnd }
        ::= { hwDHCPSForbiddenIPTable 1 }

    HwDHCPSForbiddenIPEntry ::=
        SEQUENCE
            {
                hwDHCPSForbiddenIPStart        IpAddress,
                hwDHCPSForbiddenIPEnd          IpAddress,
                hwDHCPSForbiddenIPRowStatus    RowStatus
            }

    hwDHCPSForbiddenIPStart OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Start ip of forbidden ip."
        ::= { hwDHCPSForbiddenIPEntry 1 }

    hwDHCPSForbiddenIPEnd OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "End ip of forbidden ip."
        ::= { hwDHCPSForbiddenIPEntry 2 }

    hwDHCPSForbiddenIPRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus. Three actions are used: active,
            createAndGo, destroy."
        ::= { hwDHCPSForbiddenIPEntry 3 }

--  =================================================================
-- 11th Table of hwDHCPServerMibObject: hwDHCPSConflictIPTable
-- =================================================================
    hwDHCPSConflictIPTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF HwDHCPSConflictIPEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table for displaying the information of conflict
            ip for DHCP server."
        ::= { hwDHCPServerMibObject 11 }

    hwDHCPSConflictIPEntry OBJECT-TYPE
        SYNTAX      HwDHCPSConflictIPEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry for displaying the information of
            conflict ip for DHCP server."
        INDEX { hwDHCPSConflictIP }
        ::= { hwDHCPSConflictIPTable 1 }

    HwDHCPSConflictIPEntry ::=
        SEQUENCE
            {
                hwDHCPSConflictIP              IpAddress,
                hwDHCPSConflictIPType          INTEGER,
                hwDHCPSConflictIPDetectTime    OCTET STRING
            }

    hwDHCPSConflictIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Conflict ip."
        ::= { hwDHCPSConflictIPEntry 1 }

    hwDHCPSConflictIPType OBJECT-TYPE
        SYNTAX      INTEGER
            {
                ping(1),
                arp(2)
            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Type of the detection of conflict ip."
        ::= { hwDHCPSConflictIPEntry 2 }

    hwDHCPSConflictIPDetectTime OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..20))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Time when the conflict is detected.
            The structure of the OCTET STRING is
            month/day/year hour:munite:second --
            MM/DD/YYYY hh:mm:ss."
        ::= { hwDHCPSConflictIPEntry 3 }

--  Part 4: Non-table object
--
    hwDHCPSServiceStatus OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The status of DHCP service."
        DEFVAL { enabled }
        ::= { hwDHCPServerMibObject 12 }

    hwDHCPSDetectingServerStatus OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The status of DHCP servers detecting function."
        DEFVAL { disabled }
        ::= { hwDHCPServerMibObject 13 }

    hwDHCPSPingNum OBJECT-TYPE
        SYNTAX      INTEGER(0..10)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The number of ping packets sent out."
        DEFVAL { 2 }
        ::= { hwDHCPServerMibObject 14 }

    hwDHCPSPingTimeout OBJECT-TYPE
        SYNTAX      INTEGER(0..10000)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The delay for the reply of a ping packet.
            Unit: millisecond."
        DEFVAL { 500 }
        ::= { hwDHCPServerMibObject 15 }

    hwDHCPSWriteDataStatus OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The status of the function writing data to the
            harddisk."
        DEFVAL { disabled }
        ::= { hwDHCPServerMibObject 16 }

    hwDHCPSWriteDataDirection OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The direction of writing data to a harddisk."
        ::= { hwDHCPServerMibObject 17 }

    hwDHCPSWriteDataDelay OBJECT-TYPE
        SYNTAX      INTEGER(300..86400)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The allowable delay of writing data to the
            harddisk. Unit: second."
        DEFVAL { 300 }
        ::= { hwDHCPServerMibObject 18 }

    hwDHCPSWriteDataRecover OBJECT-TYPE
        SYNTAX      EnabledStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The flag used to recover DHCP data with the data on
            the harddisk."
        ::= { hwDHCPServerMibObject 19 }

    hwDHCPSIPInUseResetIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "An ip in use that will be cleared. 0 returned for SET
            operation."
        ::= { hwDHCPServerMibObject 20 }

    hwDHCPSConflictIPResetIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A conflict ip that will be cleared. 0 returned for
            SET operation."
        ::= { hwDHCPServerMibObject 21 }

    hwDHCPSIPResetFlag OBJECT-TYPE
        SYNTAX      INTEGER
            {
                invalid(0),
                ipInUse(1),
                conflictIp(2)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "A flag that descript the reset operation."
        ::= { hwDHCPServerMibObject 22 }

    hwDHCPSGlobalPoolNumber OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of DHCP server global-pools."
        ::= { hwDHCPServerMibObject 23 }

    hwDHCPSGlobalPoolAutoBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of auto binding ip in DHCP server global-pools."
        ::= { hwDHCPServerMibObject 24 }

    hwDHCPSGlobalPoolManualBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of manual binding ip in DHCP
            server global-pools."
        ::= { hwDHCPServerMibObject 25 }

    hwDHCPSGlobalPoolExpiredBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of expired binding ip in DHCP
            server global-pools."
        ::= { hwDHCPServerMibObject 26 }

    hwDHCPSInterfacePoolNumber OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of DHCP server interface-pools."
        ::= { hwDHCPServerMibObject 27 }

    hwDHCPSInterfacePoolAutoBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of auto binding ip in DHCP server
            interface-pools."
        ::= { hwDHCPServerMibObject 28 }

    hwDHCPSInterfacePoolManualBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of manual binding ip in DHCP server
            interface-pools."
        ::= { hwDHCPServerMibObject 29 }

    hwDHCPSInterfacePoolExpiredBindingNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of expired binding ip in DHCP server
            interface-pools."
        ::= { hwDHCPServerMibObject 30 }

    hwDHCPSBadPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the bad packets received."
        ::= { hwDHCPServerMibObject 31 }

    hwDHCPSBootRequestPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the packets received by DHCP
            Server from DHCP clients."
        ::= { hwDHCPServerMibObject 32 }

    hwDHCPSDiscoverPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Discover packets
            received from the DHCP clients."
        ::= { hwDHCPServerMibObject 33 }

    hwDHCPSRequestPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Request packets
            received from the DHCP clients."
        ::= { hwDHCPServerMibObject 34 }

    hwDHCPSDeclinePktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Decline packets
            received from the DHCP clients."
        ::= { hwDHCPServerMibObject 35 }

    hwDHCPSReleasePktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Release packets
            received from the DHCP clients."
        ::= { hwDHCPServerMibObject 36 }

    hwDHCPSInformPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Inform packets
            received from the DHCP clients."
        ::= { hwDHCPServerMibObject 37 }

    hwDHCPSBootReplyPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the packets sent by DHCP server
            to DHCP clients."
        ::= { hwDHCPServerMibObject 38 }

    hwDHCPSOfferPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Offer packets
            sent by the DHCP server."
        ::= { hwDHCPServerMibObject 39 }

    hwDHCPSAckPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Ack packets
            sent by the DHCP server."
        ::= { hwDHCPServerMibObject 40 }

    hwDHCPSNakPktNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The total number of the DHCP Nak packets
            sent by the DHCP server."
        ::= { hwDHCPServerMibObject 41 }

    hwDHCPSStatisticsReset OBJECT-TYPE
        SYNTAX      INTEGER
            {
                reset(1)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Reset the above statistic information of packets
            received and sent by the DHCP server."
        ::= { hwDHCPServerMibObject 42 }

-- =================================================================
-- 43th Table of hwDHCPServerMibObject: hwDHCPSIPInUseTableEx
-- =================================================================
    hwDHCPSIPInUseExTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HwDHCPSIPInUseExEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table for displaying the information of ip in use
            for DHCP Server pools. "
        ::= { hwDHCPServerMibObject 43 }

    hwDHCPSIPInUseExEntry OBJECT-TYPE
        SYNTAX      HwDHCPSIPInUseExEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry of objects for displaying information
            of ip in use for DHCP server pools."
        INDEX { hwDHCPSIPInUseHAddrEx, hwDHCPSIPInUseVlanIdEx }
        ::= { hwDHCPSIPInUseExTable 1 }

    HwDHCPSIPInUseExEntry ::=
        SEQUENCE
            {
                hwDHCPSIPInUseHAddrEx               MacAddress,
                hwDHCPSIPInUseVlanIdEx              INTEGER,
                hwDHCPSIPInUseIPEx                  IpAddress,
                hwDHCPSIPInUseEndLeaseEx            OCTET STRING,
                hwDHCPSIPInUseTypeEx                INTEGER,
                hwDHCPSIPInUsePoolNameEx            OCTET STRING,
                hwDHCPSIPInUseIfIndexEx             INTEGER,
                hwDHCPSIPInUseServerPortVlanIdEx    INTEGER,
                hwDHCPSIPInUseAtmpvcEx              INTEGER
            }

    hwDHCPSIPInUseHAddrEx OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
            "Hardware address."
        ::= { hwDHCPSIPInUseExEntry 1 }

    hwDHCPSIPInUseVlanIdEx OBJECT-TYPE
        SYNTAX      INTEGER(1..4094|60000)
        MAX-ACCESS  accessible-for-notify
        STATUS      current
        DESCRIPTION
            "User's vlanID.
            60000 means that a client doesn't have vlanID or have an
            invalid vlanID."
        ::= { hwDHCPSIPInUseExEntry 2 }

    hwDHCPSIPInUseIPEx OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Ip address in use."
        ::= { hwDHCPSIPInUseExEntry 3 }

    hwDHCPSIPInUseEndLeaseEx OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..20))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "End time of lease.
            The structure of the OCTET STRING is
            month/day/year hour:munite:second --
            MM/DD/YYYY hh:mm:ss."
        ::= { hwDHCPSIPInUseExEntry 4 }

    hwDHCPSIPInUseTypeEx OBJECT-TYPE
        SYNTAX      INTEGER
            {
                manual(1),
                auto(2),
                release(3)
            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Type of binding."
        ::= { hwDHCPSIPInUseExEntry 5 }

    hwDHCPSIPInUsePoolNameEx OBJECT-TYPE
        SYNTAX      OCTET STRING(SIZE(1..255))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Name of the DHCP server pool the ip belongs to."
        ::= { hwDHCPSIPInUseExEntry 6 }

    hwDHCPSIPInUseIfIndexEx OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Interface index information."
        ::= { hwDHCPSIPInUseExEntry 7 }

    hwDHCPSIPInUseServerPortVlanIdEx OBJECT-TYPE
        SYNTAX      INTEGER(1..4094)
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Vlan information of port on server through
             which the client user accesses server."
        ::= { hwDHCPSIPInUseExEntry 8 }

    hwDHCPSIPInUseAtmpvcEx OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Pvc information."
        ::= { hwDHCPSIPInUseExEntry 9 }

--  Conformance information
--
    hwDHCPServerMIBConformance OBJECT IDENTIFIER ::= { hwDHCPServerMib 2 }

    hwDHCPServerMIBCompliances OBJECT IDENTIFIER ::= { hwDHCPServerMIBConformance 1 }

    hwDHCPServerMIBGroups OBJECT IDENTIFIER ::= { hwDHCPServerMIBConformance 2 }

--  Units of conformance
--
    hwDHCPServerMIBGroup OBJECT-GROUP
        OBJECTS { hwDHCPSGlobalPoolName, hwDHCPSGlobalPoolRowStatus, hwDHCPSGlobalPoolType, hwDHCPSGlobalPoolNetwork, hwDHCPSGlobalPoolNetworkMask,
            hwDHCPSGlobalPoolHostIPAddr, hwDHCPSGlobalPoolHostMask, hwDHCPSGlobalPoolHostHAddr, hwDHCPSGlobalPoolConfigUndoFlag, hwDHCPSGlobalPoolLeaseDay,
            hwDHCPSGlobalPoolLeaseHour, hwDHCPSGlobalPoolLeaseMinute, hwDHCPSGlobalPoolLeaseUnlimited, hwDHCPSGlobalPoolDomainName, hwDHCPSGlobalPoolClientGatewayIPString,
            hwDHCPSGlobalPoolClientGatewayIPUndo, hwDHCPSGlobalPoolClientDNSIPString, hwDHCPSGlobalPoolClientDNSIPUndo, hwDHCPSGlobalPoolClientNetbiosType, hwDHCPSGlobalPoolClientNbnsIPString,
            hwDHCPSGlobalPoolClientNbnsIPUndo, hwDHCPSGlobalPoolParaUndoFlag, hwDHCPSGlobalPoolIPInUseReset, hwDHCPSGlobalPoolOptionCode, hwDHCPSGlobalPoolOptionType,
            hwDHCPSGlobalPoolOptionAscii, hwDHCPSGlobalPoolOptionHexString, hwDHCPSGlobalPoolOptionIPString, hwDHCPSGlobalPoolOptionRowStatus, hwDHCPSGlobalTreeParentNodeName,
            hwDHCPSGlobalTreeChildNodeName, hwDHCPSGlobalTreePreSiblingNodeName, hwDHCPSGlobalTreeSiblingNodeName, hwDHCPSInterfacePoolLeaseDay, hwDHCPSInterfacePoolLeaseHour,
            hwDHCPSInterfacePoolLeaseMinute, hwDHCPSInterfacePoolLeaseUnlimited, hwDHCPSInterfacePoolDomainName, hwDHCPSInterfacePoolClientDNSIPString, hwDHCPSInterfacePoolClientDNSIPUndo,
            hwDHCPSInterfacePoolClientNetbiosType, hwDHCPSInterfacePoolClientNbnsIPString, hwDHCPSInterfacePoolClientNbnsIPUndo, hwDHCPSInterfacePoolParaUndoFlag, hwDHCPSInterfacePoolIPInUseReset,
            hwDHCPSInterfacePoolOptionCode, hwDHCPSInterfacePoolOptionType, hwDHCPSInterfacePoolOptionAscii, hwDHCPSInterfacePoolOptionHexString, hwDHCPSInterfacePoolOptionIPString,
            hwDHCPSInterfacePoolOptionRowStatus, hwDHCPSInterfacePoolStaticBindIP, hwDHCPSInterfacePoolStaticBindMac, hwDHCPSInterfacePoolStaticBindRowStatus, hwDHCPSIPInUseHAddr,
            hwDHCPSIPInUseIP, hwDHCPSIPInUseEndLease, hwDHCPSIPInUseType, hwDHCPSIPInUsePoolName, hwDHCPSIPInUseInterface,
            hwDHCPSIPInUseVlan, hwDHCPSIPInUseAtmpvc, hwDHCPSForbiddenIPStart, hwDHCPSForbiddenIPEnd, hwDHCPSForbiddenIPRowStatus,
            hwDHCPSConflictIP, hwDHCPSConflictIPType, hwDHCPSConflictIPDetectTime, hwDHCPSServiceStatus, hwDHCPSDetectingServerStatus,
            hwDHCPSPingNum, hwDHCPSPingTimeout, hwDHCPSWriteDataStatus, hwDHCPSWriteDataDirection, hwDHCPSWriteDataDelay,
            hwDHCPSWriteDataRecover, hwDHCPSIPInUseResetIP, hwDHCPSConflictIPResetIP, hwDHCPSIPResetFlag, hwDHCPSGlobalPoolNumber,
            hwDHCPSGlobalPoolAutoBindingNum, hwDHCPSGlobalPoolManualBindingNum, hwDHCPSGlobalPoolExpiredBindingNum, hwDHCPSInterfacePoolNumber, hwDHCPSInterfacePoolAutoBindingNum,
            hwDHCPSInterfacePoolManualBindingNum, hwDHCPSInterfacePoolExpiredBindingNum, hwDHCPSBadPktNum, hwDHCPSBootRequestPktNum, hwDHCPSDiscoverPktNum,
            hwDHCPSRequestPktNum, hwDHCPSDeclinePktNum, hwDHCPSReleasePktNum, hwDHCPSInformPktNum, hwDHCPSBootReplyPktNum,
            hwDHCPSOfferPktNum, hwDHCPSAckPktNum, hwDHCPSNakPktNum, hwDHCPSStatisticsReset,hwDHCPSIPInUseHAddrEx,hwDHCPSIPInUseVlanIdEx,
            hwDHCPSIPInUseIPEx, hwDHCPSIPInUseEndLeaseEx,hwDHCPSIPInUseTypeEx, hwDHCPSIPInUsePoolNameEx, hwDHCPSIPInUseIfIndexEx,
            hwDHCPSIPInUseServerPortVlanIdEx, hwDHCPSIPInUseAtmpvcEx }
        STATUS      current
        DESCRIPTION
            "The basic collection of objects providing management of
            DHCP server."
        ::= { hwDHCPServerMIBGroups 1 }


    END
