-- =================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: Description Of Portal
-- Reference:
-- Version: V1.6
-- History:
--   V1.0 2008-12-30, Created by d04528
--   V1.1 2009-4-30, Modified by h02978
--        Added node hpnicfPortalServerPort
--        Added table hpnicfPortalIfInfoTable, including the following nodes:
--            hpnicfPortalAuthReqNumber
--            hpnicfPortalAuthSuccNumber
--            hpnicfPortalAuthFailNumber
--        Added trap node hpnicfPortalServerGet
--   V1.2 2010-5-31, Modified by y07111
--        Added table hpnicfPortalIfServerTable, including the following nodes:
--            hpnicfPortalIfServerIndex
--            hpnicfPortalIfServerUrl
--            hpnicfPortalIfServerRowStatus
--        Added hpnicfPortalNasId
--   V1.3 2010-11-8, Modified by y07111
--        Added table hpnicfPortalStatistic,including the following nodes:
--        hpnicfPortalStatAuthReq
--        hpnicfPortalStatAckLogout
--        hpnicfPortalStatNotifyLogout
--        hpnicfPortalStatChallengeTimeout
--        hpnicfPortalStatChallengeBusy
--        hpnicfPortalStatChallengeFail
--        hpnicfPortalStatAuthTimeout
--        hpnicfPortalStatAuthFail
--        hpnicfPortalStatPwdError
--        hpnicfPortalStatAuthBusy
--        hpnicfPortalStatAuthDisordered
--        hpnicfPortalStatAuthUnknownError
--   V1.4 2011-08-18, Added by liqian 04379
--        Added table hpnicfPortalIfVlanNasIDTable, including the following nodes:
--        hpnicfPortalIfVlanNasIDIfIndex
--        hpnicfPortalIfVlanNasIDVlanID
--        hpnicfPortalIfVlanNasIDNasID
--        Added table hpnicfPortalSSIDFreeRuleTable, including the following nodes:
--        hpnicfPortalSSIDFreeRuleIndex
--        hpnicfPortalSSIDFreeRuleSrcSSID
--        hpnicfPortalSSIDFreeRuleRowStatus
--        Added table hpnicfPortalMacTriggerSrvTable, including the following nodes:
--        hpnicfPortalMacTriggerSrvIndex
--        hpnicfPortalMacTriggerSrvIPAddrType
--        hpnicfPortalMacTriggerSrvIP
--        hpnicfPortalMacTriggerSrvPort
--        hpnicfPortalMacTriggerSrvRowStatus
--        Added table hpnicfPortalMacTriggerOnIfTable, including the following nodes:
--        hpnicfPortalMacTriggerOnIfIfIndex
--        hpnicfPortalMacTriggerOnIfDetctFlowPeriod
--        hpnicfPortalMacTriggerOnIfThresholdFlow
--        hpnicfPortalMacTriggerOnIfRowStatus
--        Added table hpnicfPortalPktStatistic ,including the following nodes:
--        hpnicfPortalPktStaReqAuthNum
--        hpnicfPortalPktStaAckAuthSuccess
--        hpnicfPortalPktStaAckAuthReject
--        hpnicfPortalPktStaAckAuthEstablish
--        hpnicfPortalPktStaAckAuthBusy
--        hpnicfPortalPktStaAckAuthAuthFail
--        hpnicfPortalPktStaReqChallengeNum
--        hpnicfPortalPktStaAckChallengeSuccess
--        hpnicfPortalPktStaAckChallengeReject
--        hpnicfPortalPktStaAckChallengeEstablish
--        hpnicfPortalPktStaAckChallengeBusy
--        hpnicfPortalPktStaAckChallengeAuthFail
--        2011-11-8, Added by q04356
--        Added table hpnicfPortalTrapVarObjects, including the following nodes:
--        hpnicfPortalFirstTrapTime
--        Added table hpnicfPortalFreeRuleTable, including the following nodes:
--        hpnicfPortalFreeRuleIndex
--        hpnicfPortalFreeRuleSrcIfIndex
--        hpnicfPortalFreeRuleSrcVlanID
--        hpnicfPortalFreeRuleSrcMac
--        hpnicfPortalFreeRuleAddrType
--        hpnicfPortalFreeRuleSrcAddr
--        hpnicfPortalFreeRuleSrcPrefix
--        hpnicfPortalFreeRuleDstAddr
--        hpnicfPortalFreeRuleDstPrefix
--        hpnicfPortalFreeRuleProtocol
--        hpnicfPortalFreeRuleSrcPort
--        hpnicfPortalFreeRuleDstPort
--        hpnicfPortalFreeRuleRowStatus
--        Added table hpnicfPortalForbiddenRuleTable, including the following nodes:
--        hpnicfPortalForbiddenRuleIndex
--        hpnicfPortalForbiddenRuleSrcIfIndex
--        hpnicfPortalForbiddenRuleSrcVlanID
--        hpnicfPortalForbiddenRuleSrcMac
--        hpnicfPortalForbiddenRuleAddrType
--        hpnicfPortalForbiddenRuleSrcAddr
--        hpnicfPortalForbiddenRuleSrcPrefix
--        hpnicfPortalForbiddenRuleDstAddr
--        hpnicfPortalForbiddenRuleDstPrefix
--        hpnicfPortalForbiddenRuleProtocol
--        hpnicfPortalForbiddenRuleSrcPort
--        hpnicfPortalForbiddenRuleDstPort
--        hpnicfPortalForbiddenRuleRowStatus
--        Added node in table hpnicfPortalStatistic
--        hpnicfPortalStatAuthResp
--        hpnicfPortalStatChallengeReq
--        hpnicfPortalStatChallengeResp
--   V1.5 2012-11-21, Added by l09300
--        Added node in table hpnicfPortalSSIDFreeRuleTable
--        hpnicfPortalSSIDFreeRuleSrcSpot
--   V1.6 2013-08-29, Added by q04356
--        Added nodes in table hpnicfPortalStatistic
--        hpnicfPortalStatHttpReq
--        hpnicfPortalStatHttpResp
--        Added node in table hpnicfPortalTrapVarObjects
--        hpnicfPortalServerIP
--        Added objects hpnicfPortalServerPort and hpnicfPortalServerIP in
--        trap nodes hpnicfPortalServerGet and hpnicfPortalServerLost
-- =================================================================
HPN-ICF-PORTAL-MIB DEFINITIONS ::= BEGIN
IMPORTS
    hpnicfCommon
        FROM HPN-ICF-OID-MIB
    OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY, Integer32, Counter64, Unsigned32,
    TimeTicks
        FROM SNMPv2-SMI
    RowStatus, MacAddress
        FROM SNMPv2-TC
    ifIndex, InterfaceIndex
        FROM IF-MIB
    InetAddressPrefixLength, InetAddressType, InetAddress, InetAddressIPv4
        FROM INET-ADDRESS-MIB;

hpnicfPortal MODULE-IDENTITY
    LAST-UPDATED "201111080000Z"            -- Nov 8th, 2011 at 00:00 GMT
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "The MIB module is used for managing portal."
    ::= { hpnicfCommon 99 }


hpnicfPortalConfig OBJECT IDENTIFIER ::= { hpnicfPortal 1 }

--
-- PORTAL MAX USER NUMBER
--

hpnicfPortalMaxUserNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Specify the maximum number of online users,
        the value to be set should meet the following two conditions:
        1. Less than or equal to hpnicfPortalUserNumberUpperLimit.
        2. Greater than or equal to one.

        The default value is equal to hpnicfPortalUserNumberUpperLimit."
    ::= { hpnicfPortalConfig 1 }

--
-- PORTAL CURRENT USER NUMBER
--

hpnicfPortalCurrentUserNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The current number of users connecting to the portal."
    ::= { hpnicfPortalConfig 2 }

--
-- PORTAL STATUS
--

hpnicfPortalStatus OBJECT-TYPE
    SYNTAX      INTEGER
    {
         enabled(1),
         disabled(2)
    }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It indicates the portal status.
         enabled:
            Portal is enabled on one or more interfaces.
         disabled:
            Portal is not enabled on any interface."
    ::= { hpnicfPortalConfig 3 }

--
-- PORTAL USER NUMBER_UPPER_LIMIT
--

hpnicfPortalUserNumberUpperLimit OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The upper limit of hpnicfPortalMaxUserNumber."
    ::= { hpnicfPortalConfig 4 }

--
-- PORTAL NAS-ID Config
--
hpnicfPortalNasId OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The nas id of this device."
    ::= { hpnicfPortalConfig 5 }

--
-- PORTAL TABLES
--

hpnicfPortalTables OBJECT IDENTIFIER ::= { hpnicfPortal 2 }


--
-- PORTAL server table
--
hpnicfPortalServerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalServerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table defines the name and URL of portal server.
        It can not be created and destroyed by MIB."
    ::= { hpnicfPortalTables 1 }

hpnicfPortalServerEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalServerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for each name and URL of portal server.
        It is indexed using the object hpnicfPortalServerName."
    INDEX
        {
            hpnicfPortalServerName
        }
    ::= { hpnicfPortalServerTable 1 }


HpnicfPortalServerEntry ::= SEQUENCE
    {
        hpnicfPortalServerName               OCTET STRING,
        hpnicfPortalServerUrl                OCTET STRING,
        hpnicfPortalServerPort               Integer32
    }

hpnicfPortalServerName OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (1..32))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalServerTable, it shows
        the name of the portal server."
    ::= { hpnicfPortalServerEntry 1 }

hpnicfPortalServerUrl OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (1..127))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "It shows the uniform resource locator to the portal server.
        Users which have not logon to portal will be redirected to the
        portal server according to hpnicfPortalServerUrl.

        The value is consisted of protocol, IP address and relative path.
        For example: HTTP://10.1.1.1/portal

        It is not configurable when the portal server has been enabled."
    ::= { hpnicfPortalServerEntry 2 }

hpnicfPortalServerPort OBJECT-TYPE
    SYNTAX      Integer32 (1..65534)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "It shows the UDP port of the portal server.

        The port will be used when client sends packets to portal server.
        Default value is 50100.

        It is not configurable when the portal server has been enabled."
    ::= { hpnicfPortalServerEntry 3 }

--
-- PORTAL If Info Table
--
hpnicfPortalIfInfoTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalIfInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes the portal information on some interface."
    ::= { hpnicfPortalTables 2 }

hpnicfPortalIfInfoEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalIfInfoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for a interface on which
        portal has been enabled.
        It is indexed using the object ifIndex."
    INDEX
        {
            ifIndex
        }
    ::= { hpnicfPortalIfInfoTable 1 }


HpnicfPortalIfInfoEntry ::= SEQUENCE
    {
        hpnicfPortalAuthReqNumber            Integer32,
        hpnicfPortalAuthSuccNumber           Integer32,
        hpnicfPortalAuthFailNumber           Integer32
    }

hpnicfPortalAuthReqNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication request messages
        which are sent by portal module to AAA module."
    ::= { hpnicfPortalIfInfoEntry 1 }


hpnicfPortalAuthSuccNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication success response messages
        which are sent by AAA module to portal module."
    ::= { hpnicfPortalIfInfoEntry 2 }

hpnicfPortalAuthFailNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication failure response messages
        which are sent by AAA module to portal module."
    ::= { hpnicfPortalIfInfoEntry 3 }

--
-- PORTAL If Config Table
--
hpnicfPortalIfServerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalIfServerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes the portal information on some interface."
    ::= { hpnicfPortalTables 3 }

hpnicfPortalIfServerEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalIfServerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for a interface on which
        portal has been enabled.
        It is indexed using the object ifIndex."
    INDEX
        {
            hpnicfPortalIfServerIndex
        }
    ::= { hpnicfPortalIfServerTable 1 }

HpnicfPortalIfServerEntry ::= SEQUENCE
    {
        hpnicfPortalIfServerIndex                   Integer32,
        hpnicfPortalIfServerUrl                     OCTET STRING,
        hpnicfPortalIfServerRowStatus               RowStatus
    }

hpnicfPortalIfServerIndex  OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfIfPtServerTable, it shows
        the index of the portal server."
    ::={ hpnicfPortalIfServerEntry 1 }

hpnicfPortalIfServerUrl OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "It shows the uniform resource locator to the portal server.
        Users which have not logon to portal will be redirected to the
        portal server according to hpnicfPortalServerIfUrl.
        The value is consisted of protocol, IP address and relative path.
        For example: HTTP://10.1.1.1/portal
        It is not configurable when the portal server has been enabled."
    ::= { hpnicfPortalIfServerEntry 2 }

hpnicfPortalIfServerRowStatus OBJECT-TYPE
    SYNTAX   RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation.  To create a new row, portal server must be specified.
        To destroy an existent row, the portal server MUST NOT be referred by
        interface."
    ::= { hpnicfPortalIfServerEntry 3 }

-- PORTAL Vlan Not binding NAS ID Table
hpnicfPortalIfVlanNasIDTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalIfVlanNasIDEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes the interface on which portal has been enabled,
        the Vlan that the interface belongs to and the NAS ID to which the Vlan
        is bound."
    ::= { hpnicfPortalTables 4 }

hpnicfPortalIfVlanNasIDEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalIfVlanNasIDEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for a interface on which portal has been
        enabled, the Vlan that the interface belongs to and the NAS ID to which
        the Vlan is bound.
        It is indexed using the object ifIndex and Vlan that the interface
        belongs to."
    INDEX
        {
            hpnicfPortalIfVlanNasIDIfIndex,
            hpnicfPortalIfVlanNasIDVlanID
        }
    ::= { hpnicfPortalIfVlanNasIDTable 1 }

HpnicfPortalIfVlanNasIDEntry ::= SEQUENCE
    {
        hpnicfPortalIfVlanNasIDIfIndex         InterfaceIndex,
        hpnicfPortalIfVlanNasIDVlanID          Integer32,
        hpnicfPortalIfVlanNasIDNasID           OCTET STRING
    }

hpnicfPortalIfVlanNasIDIfIndex  OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalIfVlanNasIDTable, it shows
        the interface on which portal has been enabled."
    ::={ hpnicfPortalIfVlanNasIDEntry 1 }

hpnicfPortalIfVlanNasIDVlanID OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalIfVlanNasIDTable, it shows
        the Vlan that the interface belongs to."
    ::= { hpnicfPortalIfVlanNasIDEntry 2 }

hpnicfPortalIfVlanNasIDNasID OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(0..64))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It is the NAS ID to which the Vlan is bound to."
    ::= { hpnicfPortalIfVlanNasIDEntry 3 }

--
-- PORTAL SSID Free-rule Config Table
--

hpnicfPortalSSIDFreeRuleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalSSIDFreeRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes SSID portal-free rule(s) allows specified users
        to access specified external websites without portal authentication."
    ::= { hpnicfPortalTables 5 }

hpnicfPortalSSIDFreeRuleEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalSSIDFreeRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for SSID portal-free rule.
        It is indexed using the object Index."
    INDEX
        {
            hpnicfPortalSSIDFreeRuleIndex
        }
    ::= { hpnicfPortalSSIDFreeRuleTable 1 }

HpnicfPortalSSIDFreeRuleEntry ::= SEQUENCE
    {
        hpnicfPortalSSIDFreeRuleIndex                   Integer32,
        hpnicfPortalSSIDFreeRuleSrcSSID                 OCTET STRING,
        hpnicfPortalSSIDFreeRuleRowStatus               RowStatus,
        hpnicfPortalSSIDFreeRuleSrcSpot                 OCTET STRING
    }

hpnicfPortalSSIDFreeRuleIndex  OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalSSIDFreeRuleTable, it shows
        the index of the SSID portal-free rule."
    ::={ hpnicfPortalSSIDFreeRuleEntry 1 }

hpnicfPortalSSIDFreeRuleSrcSSID  OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(1..128))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The SSID match against the packet's source SSID."
    ::={ hpnicfPortalSSIDFreeRuleEntry 2 }

hpnicfPortalSSIDFreeRuleRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation."
    ::= { hpnicfPortalSSIDFreeRuleEntry 3 }

hpnicfPortalSSIDFreeRuleSrcSpot  OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE(0..63))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The spot match against the packet's source spot."
    ::={ hpnicfPortalSSIDFreeRuleEntry 4 }

--
-- PORTAL MAC Trigger Server
--

hpnicfPortalMacTriggerSrvTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalMacTriggerSrvEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes the configration of MAC Trigger Portal server."
    ::= { hpnicfPortalTables 6 }

hpnicfPortalMacTriggerSrvEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalMacTriggerSrvEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in the table for MAC Trigger Portal server.
        It is indexed using the object Index."
    INDEX
        {
            hpnicfPortalMacTriggerSrvIndex
        }
    ::= { hpnicfPortalMacTriggerSrvTable 1 }

HpnicfPortalMacTriggerSrvEntry ::= SEQUENCE
    {
        hpnicfPortalMacTriggerSrvIndex              Integer32,
        hpnicfPortalMacTriggerSrvIPAddrType         InetAddressType,
        hpnicfPortalMacTriggerSrvIP                 InetAddress,
        hpnicfPortalMacTriggerSrvPort               Integer32,
        hpnicfPortalMacTriggerSrvRowStatus          RowStatus
    }

hpnicfPortalMacTriggerSrvIndex  OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalMacTriggerSrvTable, it shows
        the index of the MAC Trigger Portal server."
    ::={ hpnicfPortalMacTriggerSrvEntry 1 }

hpnicfPortalMacTriggerSrvIPAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of MAC Trigger Portal server IP address.  While
       other types of addresses are defined in the InetAddressType
       textual convention, and DNS names, a classifier can only look at
       packets on the wire."
    ::={ hpnicfPortalMacTriggerSrvEntry 2 }

hpnicfPortalMacTriggerSrvIP OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "It shows the IP address of MAC Trigger Portal server."
    ::= { hpnicfPortalMacTriggerSrvEntry 3 }

hpnicfPortalMacTriggerSrvPort OBJECT-TYPE
    SYNTAX      Integer32 (1..65534)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "It shows the UDP port of MAC Trigger Portal server.
        The port will be used when client sends packets to MAC Trigger Portal server.
        Default value is 50100."
    ::= { hpnicfPortalMacTriggerSrvEntry 4 }

hpnicfPortalMacTriggerSrvRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation."
    ::= { hpnicfPortalMacTriggerSrvEntry 5 }

--
-- PORTAL Eanble MAC Trigger on interface
--

hpnicfPortalMacTriggerOnIfTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalMacTriggerOnIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes the configration of Portal MAC Trigger on
        interface."
    ::= { hpnicfPortalTables 7 }

hpnicfPortalMacTriggerOnIfEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalMacTriggerOnIfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in the table for Portal MAC Trigger configuration on
        interface.  It is indexed using the object Index."
    INDEX
        {
            hpnicfPortalMacTriggerOnIfIfIndex
        }
    ::= { hpnicfPortalMacTriggerOnIfTable 1 }

HpnicfPortalMacTriggerOnIfEntry ::= SEQUENCE
    {
        hpnicfPortalMacTriggerOnIfIfIndex               InterfaceIndex,
        hpnicfPortalMacTriggerOnIfDetctFlowPeriod       Integer32,
        hpnicfPortalMacTriggerOnIfThresholdFlow         Unsigned32,
        hpnicfPortalMacTriggerOnIfRowStatus             RowStatus
    }

hpnicfPortalMacTriggerOnIfIfIndex  OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the interface index and the index of
        hpnicfPortalMacTriggerOnIfTable."
    ::={ hpnicfPortalMacTriggerOnIfEntry 1 }

hpnicfPortalMacTriggerOnIfDetctFlowPeriod  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "It shows the period of detecting the user flow when
        MAC Trigger and Portal is enabled.  The unit is second."
    ::={ hpnicfPortalMacTriggerOnIfEntry 2 }

hpnicfPortalMacTriggerOnIfThresholdFlow  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "It shows the threshold flow of the user to triggering authentication
        when MAC Trigger and Portal is enabled.  The unit is byte."
    ::={ hpnicfPortalMacTriggerOnIfEntry 3 }

hpnicfPortalMacTriggerOnIfRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation."
    ::= { hpnicfPortalMacTriggerOnIfEntry 4 }

--
-- PORTAL Free-rule Config Table
--

hpnicfPortalFreeRuleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalFreeRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes portal-free rule(s) allows specified users to
         access specified external websites without portal authentication."
    ::= { hpnicfPortalTables 8 }

hpnicfPortalFreeRuleEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalFreeRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for portal-free rule.
        It is indexed using the object Index."
    INDEX
        {
            hpnicfPortalFreeRuleIndex
        }
    ::= { hpnicfPortalFreeRuleTable 1 }

HpnicfPortalFreeRuleEntry ::= SEQUENCE
    {
        hpnicfPortalFreeRuleIndex                   Integer32,
        hpnicfPortalFreeRuleSrcIfIndex              InterfaceIndex,
        hpnicfPortalFreeRuleSrcVlanID               Integer32,
        hpnicfPortalFreeRuleSrcMac                  MacAddress,
        hpnicfPortalFreeRuleAddrType                InetAddressType,
        hpnicfPortalFreeRuleSrcAddr                 InetAddress,
        hpnicfPortalFreeRuleSrcPrefix               InetAddressPrefixLength,
        hpnicfPortalFreeRuleDstAddr                 InetAddress,
        hpnicfPortalFreeRuleDstPrefix               InetAddressPrefixLength,
        hpnicfPortalFreeRuleProtocol                INTEGER,
        hpnicfPortalFreeRuleSrcPort                 Integer32,
        hpnicfPortalFreeRuleDstPort                 Integer32,
        hpnicfPortalFreeRuleRowStatus               RowStatus
    }

hpnicfPortalFreeRuleIndex  OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalFreeRuleTable, it shows
        the index of the portal-free rule."
    ::={ hpnicfPortalFreeRuleEntry 1 }

hpnicfPortalFreeRuleSrcIfIndex  OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The index of source interface."
    ::={ hpnicfPortalFreeRuleEntry 2 }

hpnicfPortalFreeRuleSrcVlanID  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The identification of source vlan."
    ::={ hpnicfPortalFreeRuleEntry 3 }

hpnicfPortalFreeRuleSrcMac  OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The MAC address to match against the packet's source MAC address."
    ::={ hpnicfPortalFreeRuleEntry 4 }

hpnicfPortalFreeRuleAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of IP address used by this classifier entry.  While
       other types of addresses are defined in the InetAddressType
       textual convention, and DNS names, a classifier can only look at
       packets on the wire."
    ::={ hpnicfPortalFreeRuleEntry 5 }

hpnicfPortalFreeRuleSrcAddr  OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The IP address to match against the packet's source IP
       address. This may be a DNS name or an IPv4 or IPv6
       prefix.  hpnicfPortalFreeRuleSrcPrefix indicates the
       number of bits that are relevant."
    ::={ hpnicfPortalFreeRuleEntry 6 }

hpnicfPortalFreeRuleSrcPrefix  OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The length of the CIDR Prefix carried in
       hpnicfPortalFreeRuleSrcAddr. In IPv4 addresses, a length of 0
       indicates a match of any address; a length of 32 indicates a
       match of a single host address, and a length between 0 and 32
       indicates the use of a CIDR Prefix. IPv6 is similar, except that
       prefix lengths range from 0..128."
    ::={ hpnicfPortalFreeRuleEntry 7 }

hpnicfPortalFreeRuleDstAddr  OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The IP address to match against the packet's destination IP
       address. This may be a DNS name or an IPv4 or IPv6
       prefix.  hpnicfPortalFreeRuleDstPrefix indicates the
       number of bits that are relevant."
    ::={ hpnicfPortalFreeRuleEntry 8 }

hpnicfPortalFreeRuleDstPrefix  OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The length of the CIDR Prefix carried in
       hpnicfPortalFreeRuleDstAddr. In IPv4 addresses, a length of 0
       indicates a match of any address; a length of 32 indicates a
       match of a single host address, and a length between 0 and 32
       indicates the use of a CIDR Prefix. IPv6 is similar, except that
       prefix lengths range from 0..128."
    ::={ hpnicfPortalFreeRuleEntry 9 }

hpnicfPortalFreeRuleProtocol  OBJECT-TYPE
    SYNTAX      INTEGER
    {
        invalid(0),
        tcp(6),
        udp(17)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The protocol-type of port."
    ::={ hpnicfPortalFreeRuleEntry 10 }

hpnicfPortalFreeRuleSrcPort  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The source port allows users to access."
    ::={ hpnicfPortalFreeRuleEntry 11 }

hpnicfPortalFreeRuleDstPort  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The destination port allows users to access."
    ::={ hpnicfPortalFreeRuleEntry 12 }

hpnicfPortalFreeRuleRowStatus OBJECT-TYPE
    SYNTAX   RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation."
    ::= { hpnicfPortalFreeRuleEntry 13 }

--
-- PORTAL Forbidden-rule Config Table
--

hpnicfPortalForbiddenRuleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfPortalForbiddenRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table describes a portal-forbidden rule does not allow specified
         users to access specified external websites."
    ::= { hpnicfPortalTables 9 }

hpnicfPortalForbiddenRuleEntry OBJECT-TYPE
    SYNTAX      HpnicfPortalForbiddenRuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "There is a row in this table for portal-forbidden rule.
         It is indexed using the object Index."
    INDEX
        {
            hpnicfPortalForbiddenRuleIndex
        }
    ::= { hpnicfPortalForbiddenRuleTable 1 }

HpnicfPortalForbiddenRuleEntry ::= SEQUENCE
    {
        hpnicfPortalForbiddenRuleIndex                   Integer32,
        hpnicfPortalForbiddenRuleSrcIfIndex              InterfaceIndex,
        hpnicfPortalForbiddenRuleSrcVlanID               Integer32,
        hpnicfPortalForbiddenRuleSrcMac                  MacAddress,
        hpnicfPortalForbiddenRuleAddrType                InetAddressType,
        hpnicfPortalForbiddenRuleSrcAddr                 InetAddress,
        hpnicfPortalForbiddenRuleSrcPrefix               InetAddressPrefixLength,
        hpnicfPortalForbiddenRuleDstAddr                 InetAddress,
        hpnicfPortalForbiddenRuleDstPrefix               InetAddressPrefixLength,
        hpnicfPortalForbiddenRuleProtocol                INTEGER,
        hpnicfPortalForbiddenRuleSrcPort                 Integer32,
        hpnicfPortalForbiddenRuleDstPort                 Integer32,
        hpnicfPortalForbiddenRuleRowStatus               RowStatus
    }

hpnicfPortalForbiddenRuleIndex  OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "It is the index of the table of hpnicfPortalForbiddenRuleTable, it shows
        the index of the portal-forbidden rule."
    ::={ hpnicfPortalForbiddenRuleEntry 1 }

hpnicfPortalForbiddenRuleSrcIfIndex  OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The index of source interface."
    ::={ hpnicfPortalForbiddenRuleEntry 2 }

hpnicfPortalForbiddenRuleSrcVlanID  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The identification of source vlan."
    ::={ hpnicfPortalForbiddenRuleEntry 3 }

hpnicfPortalForbiddenRuleSrcMac  OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The MAC address to match against the packet's source MAC address."
    ::={ hpnicfPortalForbiddenRuleEntry 4 }

hpnicfPortalForbiddenRuleAddrType  OBJECT-TYPE
    SYNTAX      InetAddressType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of IP address used by this classifier entry.  While
       other types of addresses are defined in the InetAddressType
       textual convention, and DNS names, a classifier can only look at
       packets on the wire."
    ::={ hpnicfPortalForbiddenRuleEntry 5 }

hpnicfPortalForbiddenRuleSrcAddr  OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The IP address to match against the packet's source IP
       address. This may be a DNS name or an IPv4 or IPv6
       prefix.  hpnicfPortalForbiddenRuleSrcPrefix indicates the
       number of bits that are relevant."
    ::={ hpnicfPortalForbiddenRuleEntry 6 }

hpnicfPortalForbiddenRuleSrcPrefix  OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The length of the CIDR Prefix carried in
       hpnicfPortalFreeRuleSrcAddr. In IPv4 addresses, a length of 0
       indicates a match of any address; a length of 32 indicates a
       match of a single host address, and a length between 0 and 32
       indicates the use of a CIDR Prefix. IPv6 is similar, except that
       prefix lengths range from 0..128."
    ::={ hpnicfPortalForbiddenRuleEntry 7 }

hpnicfPortalForbiddenRuleDstAddr  OBJECT-TYPE
    SYNTAX      InetAddress
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The IP address to match against the packet's destination IP
       address. This may be a DNS name or an IPv4 or IPv6
       prefix.  hpnicfPortalForbiddenRuleDstPrefix indicates the
       number of bits that are relevant."
    ::={ hpnicfPortalForbiddenRuleEntry 8 }

hpnicfPortalForbiddenRuleDstPrefix  OBJECT-TYPE
    SYNTAX      InetAddressPrefixLength
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The length of the CIDR Prefix carried in
       hpnicfPortalFreeRuleDstAddr. In IPv4 addresses, a length of 0
       indicates a match of any address; a length of 32 indicates a
       match of a single host address, and a length between 0 and 32
       indicates the use of a CIDR Prefix. IPv6 is similar, except that
       prefix lengths range from 0..128."
    ::={ hpnicfPortalForbiddenRuleEntry 9 }

hpnicfPortalForbiddenRuleProtocol  OBJECT-TYPE
    SYNTAX      INTEGER
    {
        invalid(0),
        tcp(6),
        udp(17)
    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The protocol-type of port."
    ::={ hpnicfPortalForbiddenRuleEntry 10 }

hpnicfPortalForbiddenRuleSrcPort  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The source port does not allow users to access."
    ::={ hpnicfPortalForbiddenRuleEntry 11 }

hpnicfPortalForbiddenRuleDstPort  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The destination port does not allow users to access."
    ::={ hpnicfPortalForbiddenRuleEntry 12 }

hpnicfPortalForbiddenRuleRowStatus OBJECT-TYPE
    SYNTAX   RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "This object is responsible for managing the creation, deletion and
        modification of rows, which support active status and CreateAndGo,
        Destroy operation."
    ::= { hpnicfPortalForbiddenRuleEntry 13 }

--
-- Define the portal Traps.
--

hpnicfPortalTraps OBJECT IDENTIFIER ::= { hpnicfPortal 3 }

hpnicfPortalTrapPrefix OBJECT IDENTIFIER ::= { hpnicfPortalTraps 0 }

hpnicfPortalServerLost NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPortalServerName,
            hpnicfPortalFirstTrapTime,
            hpnicfPortalServerIP,
            hpnicfPortalServerPort
        }
    STATUS      current
    DESCRIPTION
        "This trap is generated when the device finds that the portal server
        is unreachable, the portal server's name is hpnicfPortalServerName, and
        the portal server's IP is hpnicfPortalServerIP, and the portal server's
        port is hpnicfPortalServerPort, and the portal server has been enabled."
    ::= { hpnicfPortalTrapPrefix 1 }

hpnicfPortalServerGet NOTIFICATION-TYPE
    OBJECTS
        {
            hpnicfPortalServerName,
            hpnicfPortalFirstTrapTime,
            hpnicfPortalServerIP,
            hpnicfPortalServerPort
        }
    STATUS      current
    DESCRIPTION
        "This trap is generated when the device finds that the state of portal
        server changes from unreachable state to reachable,
        the portal server's name is hpnicfPortalServerName, and the portal server's
        IP is hpnicfPortalServerIP, and the portal server's port is hpnicfPortalServerPort,
        and the portal server has been enabled."
    ::= { hpnicfPortalTrapPrefix 2 }

hpnicfPortalTrapVarObjects OBJECT IDENTIFIER ::= { hpnicfPortalTraps 1 }

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

hpnicfPortalServerIP OBJECT-TYPE
    SYNTAX      InetAddressIPv4
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The portal server's IP."
    ::= { hpnicfPortalTrapVarObjects 2 }

-- PORTAL STATISTIC

hpnicfPortalStatistic OBJECT IDENTIFIER ::= { hpnicfPortal 4 }

-- PORTAL AUTH REQ STATISTIC

hpnicfPortalStatAuthReq OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of portal authentication requests from the
        portal server."
    ::= { hpnicfPortalStatistic 1 }

-- PORTAL ACK LOGOUT STATISTIC

hpnicfPortalStatAckLogout OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of logout requests from the portal server."
    ::= { hpnicfPortalStatistic 2 }

-- PORTAL NOTIFY LOGOUT STATISTIC

hpnicfPortalStatNotifyLogout OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of logout requests from the access device."
    ::= { hpnicfPortalStatistic 3 }

-- PORTAL CHALLENGE TIMEOUT STATISTIC

hpnicfPortalStatChallengeTimeout OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of challenge from the portal server without
        response."
    ::= { hpnicfPortalStatistic 4 }

-- PORTAL CHALLENGE BUSY STATISTIC

hpnicfPortalStatChallengeBusy OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of device-busy responses for challenges from
        the portal server."
    ::= { hpnicfPortalStatistic 5 }

-- PORTAL CHALLENGE FAIL STATISTIC

hpnicfPortalStatChallengeFail OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of challenges from the portal server with
        failure response."
    ::= { hpnicfPortalStatistic 6 }

-- PORTAL authenticate TIMEOUT STATISTIC

hpnicfPortalStatAuthTimeout OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication requests from the portal
        server without responses."
    ::= { hpnicfPortalStatistic 7 }

-- PORTAL authenticate FAIL STATISTIC

hpnicfPortalStatAuthFail OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication requests from the portal
        server with failure responses."
    ::= { hpnicfPortalStatistic 8 }

-- PORTAL PASSWORD ERROR STATISTIC

hpnicfPortalStatPwdError OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of password errors."
    ::= { hpnicfPortalStatistic 9 }

-- PORTAL authenticate BUSY STATISTIC

hpnicfPortalStatAuthBusy OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of device-busy responses to authentication
        requests from the portal server."
    ::= { hpnicfPortalStatistic 10 }

-- PORTAL authenticate DISORDER STATISTIC

hpnicfPortalStatAuthDisordered OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of disordered authentication packets from
        the portal server."
    ::= { hpnicfPortalStatistic 11 }

-- PORTAL authenticate UNKNOWN ERROR STATISTIC

hpnicfPortalStatAuthUnknownError OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of unknown errors."
    ::= { hpnicfPortalStatistic 12 }
-- PORTAL authenticate response STATISTIC

hpnicfPortalStatAuthResp OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of authentication response messages
        which are sent by device to portal server."
    ::= { hpnicfPortalStatistic 13 }

-- PORTAL authenticate challenge request STATISTIC

hpnicfPortalStatChallengeReq OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of challenge request messages
        which are sent by portal server to device."
    ::= { hpnicfPortalStatistic 14 }

-- PORTAL authenticate challenge response STATISTIC

hpnicfPortalStatChallengeResp OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of challenge response messages
        which are sent by device to portal server."
    ::= { hpnicfPortalStatistic 15 }

-- PORTAL http request statistic

hpnicfPortalStatHttpReq OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of http request messages
        which are sent by portal user to device."
    ::= { hpnicfPortalStatistic 16 }

-- PORTAL http response statistic

hpnicfPortalStatHttpResp OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of http response messages
        which are sent by  device to portal user."
    ::= { hpnicfPortalStatistic 17 }

-- PORTAL PACKET STATISTIC BY ERROR CODE

hpnicfPortalPktStatistic OBJECT IDENTIFIER ::= { hpnicfPortal 5 }

-- PORTAL REQ AUTH STATISTIC

hpnicfPortalPktStaReqAuthNum OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of portal authentication requests from the
        portal server."
    ::= { hpnicfPortalPktStatistic 1 }

hpnicfPortalPktStaAckAuthSuccess OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to REQ-AUTH packet of
        portal server including error code 0 in the packet, that is
        authentication success."
    ::= { hpnicfPortalPktStatistic 2 }

hpnicfPortalPktStaAckAuthReject OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to REQ-AUTH packet of
        portal server including error code 1 in the packet, that is rejected
        by server."
    ::= { hpnicfPortalPktStatistic 3 }

hpnicfPortalPktStaAckAuthEstablish OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to REQ-AUTH packet of
        portal server including error code 2 in the packet, that is the link
        is already established."
    ::= { hpnicfPortalPktStatistic 4 }

hpnicfPortalPktStaAckAuthBusy OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to REQ-AUTH packet of
        portal server including error code 3 in the packet, that is the
        system is busy."
    ::= { hpnicfPortalPktStatistic 5 }

hpnicfPortalPktStaAckAuthAuthFail OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to REQ-AUTH packet of
        portal server including error code 4 in the packet, that is
        authentication fail."
    ::= { hpnicfPortalPktStatistic 6 }

hpnicfPortalPktStaReqChallengeNum OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of portal challenge requests from the
        portal server."
    ::= { hpnicfPortalPktStatistic 7 }

hpnicfPortalPktStaAckChallengeSuccess OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to challenge packet of
        portal server including error code 0 in the packet, that is
        challenge is success."
    ::= { hpnicfPortalPktStatistic 8 }

hpnicfPortalPktStaAckChallengeReject OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to challenge packet of
        portal server including error code 1 in the packet, that is
        challenge is rejected by server."
    ::= { hpnicfPortalPktStatistic 9 }

hpnicfPortalPktStaAckChallengeEstablish OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to challenge packet of
        portal server including error code 2 in the packet, that is the
        link is alreadys established."
    ::= { hpnicfPortalPktStatistic 10 }

hpnicfPortalPktStaAckChallengeBusy OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to challenge packet of
        portal server including error code 3 in the packet, that is the
        system is busy."
    ::= { hpnicfPortalPktStatistic 11 }

hpnicfPortalPktStaAckChallengeAuthFail OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the total number of the response to challenge packet of
        portal server including error code 4 in the packet, that is
        authentication fail."
    ::= { hpnicfPortalPktStatistic 12 }

END

