-- ==================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: DHCP MIB
-- Reference:
-- Version: V1.0
-- History:
--(1) Created by Zhang Shilin, 2001.6.29
--(2) Revised by Qi Zhenglin, 2002.01.08
-- ==================================================================

-- ==================================================================
--
-- Varibles and types be imported
--
-- ==================================================================

HPN-ICF-LswDHCP-MIB DEFINITIONS ::= BEGIN

IMPORTS

    RowStatus, MacAddress
        FROM SNMPv2-TC

    MODULE-IDENTITY,OBJECT-TYPE, IpAddress
        FROM SNMPv2-SMI

    hpnicflswCommon
        FROM HPN-ICF-OID-MIB;

-- ==================================================================
--
-- ======================= definition begin =========================
--
-- ==================================================================
hpnicfLswDhcpMib MODULE-IDENTITY
            LAST-UPDATED "200106290000Z"
            ORGANIZATION
                ""
            CONTACT-INFO
                ""
            DESCRIPTION
            ""
            REVISION "200106290000Z"
            DESCRIPTION
            ""
            ::= { hpnicflswCommon  8 }

    hpnicfLswDhcpMibObject OBJECT IDENTIFIER ::= {  hpnicfLswDhcpMib 1  }

    hpnicfDhcpGroupTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF HpnicfDhcpGroupEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION "A table containing the information of dhcp group "
        ::= { hpnicfLswDhcpMibObject 1 }


     hpnicfDhcpGroupEntry OBJECT-TYPE
        SYNTAX  HpnicfDhcpGroupEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION "A table entry containing the information of dhcp group "
        INDEX   { hpnicfDhcpGroupID }
        ::= { hpnicfDhcpGroupTable 1 }

    HpnicfDhcpGroupEntry    ::=
    SEQUENCE {
        hpnicfDhcpGroupID           INTEGER ,
        hpnicfIpDhcpServerAddress1  IpAddress ,
        hpnicfIpDhcpServerAddress2  IpAddress ,
        hpnicfDhcpRowStatus         RowStatus
        }

    hpnicfDhcpGroupID OBJECT-TYPE
        SYNTAX  INTEGER  (0..19)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION " DHCP group identifier "
        ::= { hpnicfDhcpGroupEntry 1 }

    hpnicfIpDhcpServerAddress1 OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " The first IP address of DHCP server group "
        ::= { hpnicfDhcpGroupEntry 2 }

    hpnicfIpDhcpServerAddress2 OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " The second IP address of DHCP server group "
        ::= { hpnicfDhcpGroupEntry 3 }

    hpnicfDhcpRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION " Operation status of this table entry     "
        ::= { hpnicfDhcpGroupEntry 4 }

    hpnicfDhcpSecurityTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF HpnicfDhcpSecurityEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION "A table containing the information of dhcp security "
        ::= { hpnicfLswDhcpMibObject 2 }


     hpnicfDhcpSecurityEntry OBJECT-TYPE
        SYNTAX  HpnicfDhcpSecurityEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION "A table containing the information of dhcp security "
        INDEX   { hpnicfDhcpClientIpAddress }
        ::= { hpnicfDhcpSecurityTable 1 }

    HpnicfDhcpSecurityEntry    ::=
    SEQUENCE {
        hpnicfDhcpClientIpAddress   IpAddress ,
        hpnicfDhcpClientMacAddress  MacAddress,
        hpnicfDhcpClientProperty    INTEGER ,
        hpnicfDhcpClientRowStatus   RowStatus
        }

    hpnicfDhcpClientIpAddress OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION " DHCP client's net ip address "
        ::= { hpnicfDhcpSecurityEntry 1 }

    hpnicfDhcpClientMacAddress OBJECT-TYPE
        SYNTAX  MacAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " DHCP client's mac address     "
        ::= { hpnicfDhcpSecurityEntry 2 }

    hpnicfDhcpClientProperty OBJECT-TYPE
        SYNTAX  INTEGER
        {
            static(1),
            dynamic(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " Property of client address     "
        ::= { hpnicfDhcpSecurityEntry 3 }

    hpnicfDhcpClientRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION " status of this table's entry.     "
        ::= { hpnicfDhcpSecurityEntry 4 }


    hpnicfDhcpToL3IfTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF HpnicfDhcpToL3IfEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION "A table configuring dhcp for layer 3 interface"
        ::= { hpnicfLswDhcpMibObject 3 }


    hpnicfDhcpToL3IfEntry OBJECT-TYPE
        SYNTAX  HpnicfDhcpToL3IfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION "A table configuring dhcp for layer 3 interface "
        INDEX   { hpnicfDhcpToL3VlanIfIndex }
        ::= { hpnicfDhcpToL3IfTable 1 }

    HpnicfDhcpToL3IfEntry    ::=
    SEQUENCE {
        hpnicfDhcpToL3VlanIfIndex  INTEGER ,
        hpnicfDhcpToL3GroupId      INTEGER,
        hpnicfDhcpToL3AddressCheck INTEGER ,
        hpnicfDhcpToL3RowStatus    RowStatus
        }

    hpnicfDhcpToL3VlanIfIndex OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION " vlan virtual interface index "
        ::= { hpnicfDhcpToL3IfEntry 1 }

    hpnicfDhcpToL3GroupId OBJECT-TYPE
        SYNTAX  INTEGER  (0..19)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " DHCP group id for this vlan virtual interface"
        ::= { hpnicfDhcpToL3IfEntry 2 }

    hpnicfDhcpToL3AddressCheck OBJECT-TYPE
        SYNTAX  INTEGER
        {
            enabled(1),
            disabled(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION " If dhcp security check enabled for this vlan virtual interface "
        ::= { hpnicfDhcpToL3IfEntry 3 }

    hpnicfDhcpToL3RowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION " status of this table's entry.     "
        ::= { hpnicfDhcpToL3IfEntry 4 }
END
