-- =================================================================
-- Copyright (c) 2010-2014 Hewlett-Packard Development Company, L.P.
--
-- Description:
--
-- A configuration management and statistical MIB, includes configuration of
-- RADIUS Server, and statistics about accounting server which complements
-- the IETF standard MIB as described in RFC2620.  In addition, there are four
-- traps supported to notify client the RADIUS Server's down and up state.
--
-- Reference: RFC2866, RADIUS-AUTH-CLIENT-MIB, RADIUS-ACC-CLIENT-MIB
-- Version: V2.4
-- History:
--  V1.0 Initial version 2004-07-13
--  V1.1 2004-10-12 updated by gaolong
--       Set size of DisplayString from 0 to 255.
--  V1.2 2005-03-10 updated by xulei
--       Modified description of this MIB
--       Modified MAX-ACCESS of nodes in hpnicfRdInfoTable
--       Modified description of nodes in hpnicfRdInfoTable
--       Added nodes of hpnicfRdInfoTable
--       Added hpnicfRdAccInfoTable
--       Added hpnicfRadiusAccServerTable
--       Added Traps
--  V1.3 2005-05-08 updated by xulei
--       Modified MAX-ACCESS of hpnicfRdPrimAccState and hpnicfRdSecAccState
--  V1.4 2005-06-03 updated by xulei
--       Modified SYNTAX and DESCRIPTION of hpnicfRdAccPacketUnit
--  V1.5 2008-05-19 updated by yangxu
--       Added nodes of hpnicfRdAccInfoTable
--       Added node of hpnicfRdAcctOnEnable
--       Added node of hpnicfRdAcctOnSendTimes
--       Added node of hpnicfRdAcctOnSendInterval
--  V1.6 2008-07-18 updated by d04528
--       Added nodes of hpnicfRadiusAuthenticating
--       Added node of hpnicfRadiusAuthClient
--       Added node of hpnicfRadiusAuthServerTable
--       Added node of hpnicfRadiusAuthServerEntry
--       Added node of hpnicfRadiusAuthFailureTimes
--       Added node of hpnicfRadiusAuthTimeoutTimes
--       Added node of hpnicfRadiusAuthRejectTimes
--  V1.7 2009-04-30 update by h02978
--       Added node of hpnicfRdSecKey
--       Added node of hpnicfRdSecAccKey
--       Added node of hpnicfRadiusAuthServerUpTrap
--       Added node of hpnicfRadiusAccServerUpTrap
--  V1.8 2009-08-05 update by h02978
--       Added node of hpnicfRadiusAuthErrThreshold
--       Added node of hpnicfRadiusAuthErrTrap
--  V1.9 2010-03-29 Modifyed by x04730
--       Modify SYNTAX of hpnicfRdAccRealTime
--       2010-07-14 Modifyed by x04730
--       Modify SYNTAX of hpnicfRdQuietTime
--       Modify SYNTAX of hpnicfRdAccQuietTime
--       2010-08-26 update by y06401
--       Added hpnicfRadiusSchAuthTable
--       Added hpnicfRadiusSchAccTable
--  V2.0 2010-03-29 Modifyed by y07111
--       Added nodes of hpnicfRadiusStatistic
--       Added node of hpnicfRadiusStatAccReq
--       Added node of hpnicfRadiusStatAccAck
--       Added node of hpnicfRadiusStatLogoutReq
--       Added node of hpnicfRadiusStatLogoutAck
--  V2.1 2011-11-28, Added by xuyonggang
--       Added node of hpnicfRadiusServerTrapVarObjects
--       2012-02-28 Modifyed by y002965
--       Added table of hpnicfRdSecondaryAuthServerTable
--       Added table of hpnicfRdSecondaryAcctServerTable
--       Added node of hpnicfRdPrimVpnName
--       Added node of hpnicfRdSecVpnName
--       Added node of hpnicfRdAuthNasIpAddrType
--       Added node of hpnicfRdAuthNasIpAddr
--       Added node of hpnicfRdPrimAccVpnName
--       Added node of hpnicfRdSecAccVpnName
--       Added node of hpnicfRdAccNasIpAddrType
--       Added node of hpnicfRdAccNasIpAddr
--       Change the length of hpnicfRdSecAccKey
--       Change the length of hpnicfRdAccKey
--       Change the length of hpnicfRdSecKey
--       Change the length of hpnicfRdKey
--  V2.2 2012-10-11, Added by liubo
--       Added node of hpnicfRdAuthNasIpv6Addr
--       Added node of hpnicfRdAccNasIpv6Addr
--       Modified the length of hpnicfRdSecAccKey
--       Modified the length of hpnicfRdAccKey
--       Modified the length of hpnicfRdSecKey
--       Modified the length of hpnicfRdKey
--       Modified the length of hpnicfRdPrimVpnName
--       Modified the length of hpnicfRdSecVpnName
--       Modified the length of hpnicfRdPrimAccVpnName
--       Modified the length of hpnicfRdSecAccVpnName
--       Modified the length of hpnicfRdSecondaryAuthVpnName
--       Modified the length of hpnicfRdSecondaryAccVpnName
--       Modified the length of hpnicfRdSecondaryAuthKey
--       Modified the length of hpnicfRdSecondaryAccKey
--       Modified the default value and description of hpnicfRdAcctOnSendTimes
--  V2.3 2013-03-30, Modified by luyu
--       Modified description of hpnicfRdSecondaryAccUdpPort
--       Modified the default value and description of hpnicfRadiusSchAccPrimUdpPort
--       Modified the default value and description of hpnicfRadiusSchAccSecUdpPort
--  V2.4 2014-06-07, Modified by liubo
--       Modified description of hpnicfRdSecondaryAuthRowStatus
--       Modified description of hpnicfRdSecondaryAccRowStatus
-- =================================================================
HPN-ICF-RADIUS-MIB DEFINITIONS ::= BEGIN
    IMPORTS
        hpnicfCommon
            FROM HPN-ICF-OID-MIB
        IpAddress, Integer32, Counter32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE,
        Unsigned32,Counter64, TimeTicks
            FROM SNMPv2-SMI
        RowStatus, TruthValue, DisplayString
            FROM SNMPv2-TC
        InetAddressType, InetAddress
            FROM INET-ADDRESS-MIB
        Ipv6Address
            FROM IPV6-TC
        radiusAuthServerIndex, radiusAuthServerAddress, radiusAuthClientServerPortNumber
            FROM RADIUS-AUTH-CLIENT-MIB
        radiusAccServerIndex, radiusAccServerAddress, radiusAccClientServerPortNumber
            FROM RADIUS-ACC-CLIENT-MIB;

    hpnicfRadius MODULE-IDENTITY
    LAST-UPDATED "201406071800Z"            -- June 7, 2014 at 18:00 GMT
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "The HPN-ICF-RADIUS-MIB contains objects to
        Manage configuration and Monitor running state
        for RADIUS feature."
    REVISION "201406071800Z"        -- June 7, 2014 at 18:00 GMT
    DESCRIPTION
        "Modified description of hpnicfRdSecondaryAuthRowStatus.
        Modified description of hpnicfRdSecondaryAccRowStatus"
    ::= { hpnicfCommon 13 }

    hpnicfRdObjects OBJECT IDENTIFIER ::= { hpnicfRadius 1 }

    hpnicfRdInfoTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRdInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS authentication servers."
    ::= { hpnicfRdObjects 1 }

    hpnicfRdInfoEntry OBJECT-TYPE
        SYNTAX HpnicfRdInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS authentication server."
        INDEX { hpnicfRdGroupName }
    ::= { hpnicfRdInfoTable 1 }

    HpnicfRdInfoEntry ::= SEQUENCE {
        hpnicfRdGroupName          DisplayString,
        hpnicfRdPrimAuthIp         IpAddress,
        hpnicfRdPrimUdpPort        Integer32,
        hpnicfRdPrimState          INTEGER,
        hpnicfRdSecAuthIp          IpAddress,
        hpnicfRdSecUdpPort         Integer32,
        hpnicfRdSecState           INTEGER,
        hpnicfRdKey                DisplayString,
        hpnicfRdRetry              Integer32,
        hpnicfRdTimeout            Integer32,
        hpnicfRdPrimAuthIpAddrType InetAddressType,
        hpnicfRdPrimAuthIpAddr     InetAddress,
        hpnicfRdSecAuthIpAddrType  InetAddressType,
        hpnicfRdSecAuthIpAddr      InetAddress,
        hpnicfRdServerType         INTEGER,
        hpnicfRdQuietTime          Integer32,
        hpnicfRdUserNameFormat     INTEGER,
        hpnicfRdRowStatus          RowStatus,
        hpnicfRdSecKey             DisplayString,
        hpnicfRdPrimVpnName        DisplayString,
        hpnicfRdSecVpnName         DisplayString,
        hpnicfRdAuthNasIpAddrType  InetAddressType,
        hpnicfRdAuthNasIpAddr      IpAddress,
        hpnicfRdAuthNasIpv6Addr    Ipv6Address
        }

    hpnicfRdGroupName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The name of the RADIUS authentication group referred to in this table
        entry."
    ::= { hpnicfRdInfoEntry 1 }


    hpnicfRdPrimAuthIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS deprecated
        DESCRIPTION
        "The IP address of primary RADIUS authentication server."
    ::= { hpnicfRdInfoEntry 2 }

    hpnicfRdPrimUdpPort OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The UDP port the client is using to send requests to
        primary RADIUS authentication server.  Default value is 1812."
    ::= { hpnicfRdInfoEntry 3 }

    hpnicfRdPrimState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The state of the primary RADIUS authentication server.
        1 (active) The primary authentication server is in active state.
        2 (block)  The primary authentication server is in block state."
    ::= { hpnicfRdInfoEntry 4 }

    hpnicfRdSecAuthIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS deprecated
        DESCRIPTION
        "The IP address of secondary RADIUS authentication server."
    ::= { hpnicfRdInfoEntry 5 }

    hpnicfRdSecUdpPort OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The UDP port the client is using to send requests to
        secondary RADIUS authentication server.  Default value is 1812."
    ::= { hpnicfRdInfoEntry 6 }

    hpnicfRdSecState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The state of the secondary RADIUS authentication server.
        1 (active) The secondary authentication server is in active state.
        2 (block)  The secondary authentication server is in block state."
    ::= { hpnicfRdInfoEntry 7 }

    hpnicfRdKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and RADIUS
        authentication server used in encoding and decoding
        sensitive data.
        When read, hpnicfRdKey always returns an Octet String of length zero."
    ::= { hpnicfRdInfoEntry 8 }

    hpnicfRdRetry OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The number of attempts the client will make when trying to send
        requests to a server before it will consider the attempt failed.
        Default value is 3."
    ::= { hpnicfRdInfoEntry 9 }

    hpnicfRdTimeout OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The timeout value the client will use when sending requests to a server.
        The unit is second.  Default value is 3."
    ::= { hpnicfRdInfoEntry 10 }

    hpnicfRdPrimAuthIpAddrType OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of primary RADIUS authentication
        server."
    ::= { hpnicfRdInfoEntry 11 }

    hpnicfRdPrimAuthIpAddr OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The IP address of primary RADIUS authentication server."
    ::= { hpnicfRdInfoEntry 12 }

    hpnicfRdSecAuthIpAddrType OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of secondary RADIUS authentication
        server."
    ::= { hpnicfRdInfoEntry 13 }

    hpnicfRdSecAuthIpAddr OBJECT-TYPE
        SYNTAX InetAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The IP address of secondary RADIUS authentication server."
    ::= { hpnicfRdInfoEntry 14 }

    hpnicfRdServerType OBJECT-TYPE
        SYNTAX INTEGER
        {
            standard(1),
            iphotel(2),
            portal(3),
            extended(4)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Specify the type of RADIUS server.
        1 (standard) - Server based on RFC protocol(s).
        2 (iphotel) - Server for IP-Hotel or 201+ system.
        3 (portal) - Server for iTellin Portal system.
        4 (extended) - Server based on RADIUS extensions.
        Default type is standard."
    ::= { hpnicfRdInfoEntry 15 }

    hpnicfRdQuietTime OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The time for server returning active.  The unit is minute.
         When the value is 0, the server state retains active.  Default value is 5."
    ::= { hpnicfRdInfoEntry 16 }

    hpnicfRdUserNameFormat OBJECT-TYPE
        SYNTAX INTEGER
        {
            withoutdomain(1),
            withdomain(2),
            keeporignal(3)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Specify the user-name format that is sent to RADIUS server.
        1 (withoutdomain) - send the user-name without domain.
        2 (withdomain) - send the user-name with domain.
        3 (keeporignal) - send the user-name as it is entered.
        Default format is withdomain."
    ::= { hpnicfRdInfoEntry 17 }


    hpnicfRdRowStatus   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, hpnicfRdGroupName must be specified.
        To destroy an existent row, the hpnicfRdGroupName MUST NOT be referred by
        hpnicfDomainTable in hpnicfDomainRadiusGroupName column."
    ::= { hpnicfRdInfoEntry 18 }


    hpnicfRdSecKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        authentication server used in encoding and decoding
        sensitive data.
        When read, hpnicfRdSecKey always returns an Octet String of length zero."
    ::= { hpnicfRdInfoEntry 19 }

    hpnicfRdPrimVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  read-create
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the primary RADIUS
        authentication server is placed."
    ::= { hpnicfRdInfoEntry 20 }

    hpnicfRdSecVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  read-create
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the secondary RADIUS
        authentication server is placed."
    ::= { hpnicfRdInfoEntry 21 }

    hpnicfRdAuthNasIpAddrType OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The type (IPv4 or IPv6) of the source IP used to communicate with
        RADIUS authentication server."
    ::= { hpnicfRdInfoEntry 22 }

    hpnicfRdAuthNasIpAddr OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The source IPv4 address used to communicate with the RADIUS authentication
        server."
    ::= { hpnicfRdInfoEntry 23 }

    hpnicfRdAuthNasIpv6Addr OBJECT-TYPE
        SYNTAX Ipv6Address
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The source IPv6 address used to communicate with the RADIUS authentication
        server."
    ::= { hpnicfRdInfoEntry 24 }

-- ***********************************************************************
--
--  Accounting Server Table
--
-- ***********************************************************************
    hpnicfRdAccInfoTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRdAccInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS accounting servers."
    ::= { hpnicfRdObjects 2 }

    hpnicfRdAccInfoEntry OBJECT-TYPE
        SYNTAX HpnicfRdAccInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS accounting server."
        INDEX { hpnicfRdAccGroupName }
    ::= { hpnicfRdAccInfoTable 1 }


    HpnicfRdAccInfoEntry ::= SEQUENCE {
        hpnicfRdAccGroupName           DisplayString,
        hpnicfRdPrimAccIpAddrType      InetAddressType,
        hpnicfRdPrimAccIpAddr          InetAddress,
        hpnicfRdPrimAccUdpPort         Integer32,
        hpnicfRdPrimAccState           INTEGER,
        hpnicfRdSecAccIpAddrType       InetAddressType,
        hpnicfRdSecAccIpAddr           InetAddress,
        hpnicfRdSecAccUdpPort          Integer32,
        hpnicfRdSecAccState            INTEGER,
        hpnicfRdAccKey                 DisplayString,
        hpnicfRdAccRetry               Integer32,
        hpnicfRdAccTimeout             Integer32,
        hpnicfRdAccServerType          INTEGER,
        hpnicfRdAccQuietTime           Integer32,
        hpnicfRdAccFailureAction       INTEGER,
        hpnicfRdAccRealTime            Integer32,
        hpnicfRdAccRealTimeRetry       Integer32,
        hpnicfRdAccSaveStopPktEnable   TruthValue,
        hpnicfRdAccStopRetry           Integer32,
        hpnicfRdAccDataFlowUnit        INTEGER,
        hpnicfRdAccPacketUnit          INTEGER,
        hpnicfRdAccRowStatus           RowStatus,
        hpnicfRdAcctOnEnable           TruthValue,
        hpnicfRdAcctOnSendTimes        Integer32,
        hpnicfRdAcctOnSendInterval     Integer32,
        hpnicfRdSecAccKey              DisplayString,
        hpnicfRdPrimAccVpnName         DisplayString,
        hpnicfRdSecAccVpnName          DisplayString,
        hpnicfRdAccNasIpAddrType       InetAddressType,
        hpnicfRdAccNasIpAddr           IpAddress,
        hpnicfRdAccNasIpv6Addr         Ipv6Address
        }

    hpnicfRdAccGroupName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The name of the RADIUS group referred to in this table entry."
    ::= { hpnicfRdAccInfoEntry 1 }

    hpnicfRdPrimAccIpAddrType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of primary RADIUS accounting server."
    ::= { hpnicfRdAccInfoEntry 2 }

    hpnicfRdPrimAccIpAddr OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of primary RADIUS accounting server."
    ::= { hpnicfRdAccInfoEntry 3 }

    hpnicfRdPrimAccUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to primary
        RADIUS accounting server.  Default value is 1813."
    ::= { hpnicfRdAccInfoEntry 4 }

    hpnicfRdPrimAccState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The state of the primary RADIUS accounting server.
        1 (active) The primary accounting server is in active state.
        2 (block)  The primary accounting server is in block state."
    ::= { hpnicfRdAccInfoEntry 5 }

    hpnicfRdSecAccIpAddrType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of secondary RADIUS accounting
        server."
    ::= { hpnicfRdAccInfoEntry 6 }

    hpnicfRdSecAccIpAddr OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of secondary RADIUS accounting server."
    ::= { hpnicfRdAccInfoEntry 7 }

    hpnicfRdSecAccUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to secondary
        RADIUS accounting server.  Default value is 1813."
    ::= { hpnicfRdAccInfoEntry 8 }

    hpnicfRdSecAccState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The state of the secondary RADIUS accounting server.
        1 (active) The secondary accounting server is in active state.
        2 (block)  The secondary accounting server is in block state."
    ::= { hpnicfRdAccInfoEntry 9 }

    hpnicfRdAccKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and RADIUS
        accounting server used in encoding and decoding sensitive data.
        When read, hpnicfRdAccKey always returns an Octet String of length zero."
    ::= { hpnicfRdAccInfoEntry 10 }


    hpnicfRdAccRetry OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The number of attempt the client will make when trying to send
        requests to a server before it will consider the attempt failed.
        Default value is 3."
    ::= { hpnicfRdAccInfoEntry 11 }

    hpnicfRdAccTimeout OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The timeout value the client will use when sending requests to a server.
        The unit is second.  Default value is 3."
    ::= { hpnicfRdAccInfoEntry 12 }

    hpnicfRdAccServerType OBJECT-TYPE
        SYNTAX INTEGER
        {
            standard(1),
            iphotel(2),
            portal(3),
            extended(4)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Specify the type of RADIUS server.
        1 (standard) - Server based on RFC protocol(s).
        2 (iphotel) - Server for IP-Hotel or 201+ system.
        3 (portal) - Server for iTellin Portal system.
        4 (extended) - Server based on RADIUS extensions.
        Default type is standard."
    ::= { hpnicfRdAccInfoEntry 13 }

    hpnicfRdAccQuietTime OBJECT-TYPE
        SYNTAX Integer32 (0..255)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The time for server returning active.  The unit is minute.
         When the value is 0, the server state retains active.  Default value is 5."
    ::= { hpnicfRdAccInfoEntry 14 }

    hpnicfRdAccFailureAction OBJECT-TYPE
        SYNTAX INTEGER
        {
            ignore(1),
            reject(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Defines the action that authentication should take if
        authentication succeeds but the associated accounting start
        fails.
        1 (ignore) - treat as authentication success; ignore
            accounting start failure.
        2 (reject) - treat as authentication failed if
            corresponding accounting start fails.
        Default value is 1(reject)."
    ::= { hpnicfRdAccInfoEntry 15 }

    hpnicfRdAccRealTime OBJECT-TYPE
        SYNTAX Integer32 (0..60)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Interval of realtime-accounting packets.  The unit is minute.
        When the value is 0, the device doesn't send realtime-accounting
        packets.  Default value is 12."
    ::= { hpnicfRdAccInfoEntry 16 }

    hpnicfRdAccRealTimeRetry OBJECT-TYPE
        SYNTAX Integer32 (1..255)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The number of attempt the client will make when trying to send
        realtime-accounting packet to accounting server before it will
        consider the attempt failed.  Default value is 5."
        DEFVAL { 5 }
    ::= { hpnicfRdAccInfoEntry 17 }

    hpnicfRdAccSaveStopPktEnable OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The control of whether save stop-accounting packet in local buffer
        and resend later when the accounting server doesn't respond.  When
        SaveStopPktEnable is set to false, the value of AccStopRetry will be
        ignored.  Default value is true."
    ::= { hpnicfRdAccInfoEntry 18 }

    hpnicfRdAccStopRetry OBJECT-TYPE
        SYNTAX Integer32 (10..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The number of attempt the client will make when trying to send
        stop-accounting packet to accounting server.  Default value is 500."
    ::= { hpnicfRdAccInfoEntry 19 }

    hpnicfRdAccDataFlowUnit OBJECT-TYPE
        SYNTAX INTEGER
        {
            byte(1),
            kiloByte(2),
            megaByte(3),
            gigaByte(4)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Specify data flow format that is sent to RADIUS server.  The value
        SHOULD be set the same as the value of corresponding server.
        1 (byte) -  Specify 'byte' as the unit of data flow.
        2 (kiloByte) - Specify 'kilo-byte' as the unit of data flow.
        3 (megaByte) - Specify 'mega-byte' as the unit of data flow.
        4 (gigaByte) - Specify 'giga-byte' as the unit of data flow.
        Default value is 1."
    ::= { hpnicfRdAccInfoEntry 20 }

    hpnicfRdAccPacketUnit OBJECT-TYPE
        SYNTAX INTEGER
        {
            onePacket(1),
            kiloPacket(2),
            megaPacket(3),
            gigaPacket(4)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Specify packet format that is sent to RADIUS server.  The value
        SHOULD be set the same as the value of corresponding server.
        1 (onePacket)  - Specify 'one-packet' as the unit of packet.
        2 (kiloPacket) - Specify 'kilo-packet' as the unit of packet.
        3 (megaPacket) - Specify 'mega-packet' as the unit of packet.
        4 (gigaPacket) - Specify 'giga-packet' as the unit of packet.
        Default value is 1."
    ::= { hpnicfRdAccInfoEntry 21 }

    hpnicfRdAccRowStatus   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, hpnicfRdAccGroupName must be specified.
        To destroy an existent row, the hpnicfRdAccGroupName MUST NOT be referred by
        hpnicfDomainTable in hpnicfDomainRadiusGroupName column."
    ::= { hpnicfRdAccInfoEntry 22 }

    hpnicfRdAcctOnEnable OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The control of Accounting-On function.  The Accounting-On function is
        used by the client to mark the start of accounting (for example, upon
        booting) by sending Accounting-On packets and to mark the end of
        accounting (for example, just before a scheduled reboot) by sending
        Accounting-Off packets.  Default value is false."
    ::= { hpnicfRdAccInfoEntry 23 }

    hpnicfRdAcctOnSendTimes OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The number of Accounting-On packets the client will send before it
        considers the accounting server failed.  Default value is 50."
        DEFVAL { 50 }
    ::= { hpnicfRdAccInfoEntry 24 }

    hpnicfRdAcctOnSendInterval OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "Interval of Accounting-On packets.  The unit is second.
        Default value is 3."
        DEFVAL { 3 }
    ::= { hpnicfRdAccInfoEntry 25 }


    hpnicfRdSecAccKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        accounting server used in encoding and decoding sensitive data.
        When read, hpnicfRdSecAccKey always returns an Octet String of length zero."
    ::= { hpnicfRdAccInfoEntry 26 }

    hpnicfRdPrimAccVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  read-create
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the primary RADIUS
        accounting server is placed."
    ::= { hpnicfRdAccInfoEntry 27 }

    hpnicfRdSecAccVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  read-create
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the secondary RADIUS
        accounting server is placed."
    ::= { hpnicfRdAccInfoEntry 28 }

    hpnicfRdAccNasIpAddrType OBJECT-TYPE
        SYNTAX InetAddressType
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The type (IPv4 or IPv6) of the source IP used to communicate with
        RADIUS accounting server."
    ::= { hpnicfRdAccInfoEntry 29 }

    hpnicfRdAccNasIpAddr OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The source IPv4 address used to communicate with the RADIUS accounting
        server."
    ::= { hpnicfRdAccInfoEntry 30 }

    hpnicfRdAccNasIpv6Addr OBJECT-TYPE
        SYNTAX Ipv6Address
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The source IPv6 address used to communicate with the RADIUS accounting
        server."
    ::= { hpnicfRdAccInfoEntry 31 }


-- ***********************************************************************
--
--  Global configurations
--
-- ***********************************************************************
    hpnicfRadiusGlobalConfig OBJECT IDENTIFIER ::= { hpnicfRdObjects 3 }

    hpnicfRadiusAuthErrThreshold OBJECT-TYPE
        SYNTAX Unsigned32 (1..100)
        UNITS "percentage"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The threshold of authentication failure trap.  A trap will be sent
            when the percent of the unsuccessful authentication exceeds this threshold."
        DEFVAL { 30 }
        ::= { hpnicfRadiusGlobalConfig 1 }


-- ***********************************************************************
--
--  Secondary Authentication Server Table
--
-- ***********************************************************************
    hpnicfRdSecondaryAuthServerTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRdSecondaryAuthServerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS secondary authentication servers."
    ::= { hpnicfRdObjects 4 }

    hpnicfRdSecondaryAuthServerEntry OBJECT-TYPE
        SYNTAX HpnicfRdSecondaryAuthServerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS secondary authentication server."
        INDEX { hpnicfRdGroupName, hpnicfRdSecondaryAuthIpAddrType, hpnicfRdSecondaryAuthIpAddr,
                hpnicfRdSecondaryAuthVpnName, hpnicfRdSecondaryAuthUdpPort }
    ::= { hpnicfRdSecondaryAuthServerTable 1 }

    HpnicfRdSecondaryAuthServerEntry ::= SEQUENCE {
        hpnicfRdSecondaryAuthIpAddrType       InetAddressType,
        hpnicfRdSecondaryAuthIpAddr           InetAddress,
        hpnicfRdSecondaryAuthVpnName          DisplayString,
        hpnicfRdSecondaryAuthUdpPort          Integer32,
        hpnicfRdSecondaryAuthState            INTEGER,
        hpnicfRdSecondaryAuthKey              DisplayString,
        hpnicfRdSecondaryAuthRowStatus        RowStatus
        }

    hpnicfRdSecondaryAuthIpAddrType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of secondary RADIUS authentication server."
    ::= { hpnicfRdSecondaryAuthServerEntry 1 }

    hpnicfRdSecondaryAuthIpAddr OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The IP address of secondary RADIUS authentication server."
    ::= { hpnicfRdSecondaryAuthServerEntry 2 }

    hpnicfRdSecondaryAuthVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  not-accessible
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the secondary RADIUS
        authentication server is placed."
    ::= { hpnicfRdSecondaryAuthServerEntry 3 }

    hpnicfRdSecondaryAuthUdpPort OBJECT-TYPE
        SYNTAX      Integer32(1..65535)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to secondary
        RADIUS authentication server.  Default value is 1812."
    ::= { hpnicfRdSecondaryAuthServerEntry 4 }

    hpnicfRdSecondaryAuthState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The state of the secondary RADIUS authentication server.
        1 (active) The secondary authentication server is in active state.
        2 (block)  The secondary authentication server is in block state."
    ::= { hpnicfRdSecondaryAuthServerEntry 5 }

    hpnicfRdSecondaryAuthKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        authentication server used in encoding and decoding sensitive data.
        When read, hpnicfRdSecondaryAuthKey always returns an Octet String of length zero."
    ::= { hpnicfRdSecondaryAuthServerEntry 6 }

    hpnicfRdSecondaryAuthRowStatus   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, hpnicfRdGroupName must be specified.
        The number of rows with the same hpnicfRdGroupName can't be more than 16."
    ::= { hpnicfRdSecondaryAuthServerEntry 7 }

-- ***********************************************************************
--
--  Secondary Accounting Server Table
--
-- ***********************************************************************
    hpnicfRdSecondaryAccServerTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRdSecondaryAccServerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS secondary accounting servers."
    ::= { hpnicfRdObjects 5 }

    hpnicfRdSecondaryAccServerEntry OBJECT-TYPE
        SYNTAX HpnicfRdSecondaryAccServerEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS secondary accounting server."
        INDEX { hpnicfRdAccGroupName, hpnicfRdSecondaryAccIpAddrType, hpnicfRdSecondaryAccIpAddr,
                hpnicfRdSecondaryAccVpnName, hpnicfRdSecondaryAccUdpPort }
    ::= { hpnicfRdSecondaryAccServerTable 1 }

    HpnicfRdSecondaryAccServerEntry ::= SEQUENCE {
        hpnicfRdSecondaryAccIpAddrType       InetAddressType,
        hpnicfRdSecondaryAccIpAddr           InetAddress,
        hpnicfRdSecondaryAccVpnName          DisplayString,
        hpnicfRdSecondaryAccUdpPort          Integer32,
        hpnicfRdSecondaryAccState            INTEGER,
        hpnicfRdSecondaryAccKey              DisplayString,
        hpnicfRdSecondaryAccRowStatus        RowStatus
        }

    hpnicfRdSecondaryAccIpAddrType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The IP addresses type (IPv4 or IPv6) of secondary RADIUS accounting server."
    ::= { hpnicfRdSecondaryAccServerEntry 1 }

    hpnicfRdSecondaryAccIpAddr OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The IP address of secondary RADIUS accounting server."
    ::= { hpnicfRdSecondaryAccServerEntry 2 }

    hpnicfRdSecondaryAccVpnName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..31))
        MAX-ACCESS  not-accessible
        STATUS current
        DESCRIPTION
        "The human-readable name of the VPN in which the secondary RADIUS
        accounting server is placed."
    ::= { hpnicfRdSecondaryAccServerEntry 3 }

    hpnicfRdSecondaryAccUdpPort OBJECT-TYPE
        SYNTAX      Integer32(1..65535)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to secondary
        RADIUS accounting server.  Default value is 1813."
    ::= { hpnicfRdSecondaryAccServerEntry 4 }

    hpnicfRdSecondaryAccState OBJECT-TYPE
        SYNTAX INTEGER
        {
            active(1),
            block(2)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The state of the secondary RADIUS accounting server.
        1 (active) The secondary accounting server is in active state.
        2 (block)  The secondary accounting server is in block state."
    ::= { hpnicfRdSecondaryAccServerEntry 5 }

    hpnicfRdSecondaryAccKey OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        accounting server used in encoding and decoding sensitive data.
        When read, hpnicfRdSecondaryAccKey always returns an Octet String of length zero."
    ::= { hpnicfRdSecondaryAccServerEntry 6 }

    hpnicfRdSecondaryAccRowStatus   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, hpnicfRdAccGroupName must be specified.
        The number of rows with the same hpnicfRdAccGroupName can't be more than 16."
    ::= { hpnicfRdSecondaryAccServerEntry 7 }


-- ***********************************************************************
--
--  Supplement to RFC2620 RADIUS-ACC-CLIENT-MIB
--
-- ***********************************************************************

    hpnicfRadiusAccounting OBJECT IDENTIFIER ::= { hpnicfRadius 2 }

    hpnicfRadiusAccClient OBJECT IDENTIFIER ::= { hpnicfRadiusAccounting 1 }

    hpnicfRadiusAccServerTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF HpnicfRadiusAccServerEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        "The (conceptual) table listing the RADIUS accounting
        servers with which the client shares a secret."
    ::= { hpnicfRadiusAccClient 1 }

    hpnicfRadiusAccServerEntry OBJECT-TYPE
        SYNTAX  HpnicfRadiusAccServerEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS accounting
        server with which a client shares a secret."
        INDEX { radiusAccServerIndex }
    ::= { hpnicfRadiusAccServerTable 1 }

    HpnicfRadiusAccServerEntry ::= SEQUENCE {
        hpnicfRadiusAccClientStartRequests         Counter32,
        hpnicfRadiusAccClientStartResponses        Counter32,
        hpnicfRadiusAccClientInterimRequests       Counter32,
        hpnicfRadiusAccClientInterimResponses      Counter32,
        hpnicfRadiusAccClientStopRequests          Counter32,
        hpnicfRadiusAccClientStopResponses         Counter32 }

    hpnicfRadiusAccClientStartRequests   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS accounting start request sent to this
        server."
    ::= { hpnicfRadiusAccServerEntry  1 }

    hpnicfRadiusAccClientStartResponses   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS accounting start response received
        from this server."
    ::= { hpnicfRadiusAccServerEntry  2 }

    hpnicfRadiusAccClientInterimRequests   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS interim accounting request sent to
        this server."
    ::= { hpnicfRadiusAccServerEntry  3 }

    hpnicfRadiusAccClientInterimResponses   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS interim accounting response received
        from this server."
    ::= { hpnicfRadiusAccServerEntry  4 }

    hpnicfRadiusAccClientStopRequests   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS stop accounting request sent to
        this RADIUS server."
    ::= { hpnicfRadiusAccServerEntry  5 }

    hpnicfRadiusAccClientStopResponses   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS stop accounting response received
        from this server."
    ::= { hpnicfRadiusAccServerEntry  6 }

--------------------------------------------------------------
-- Traps
--------------------------------------------------------------

-- All trap definitions should be placed under this object.
    hpnicfRadiusServerTrap OBJECT IDENTIFIER ::= { hpnicfRadius 3 }

    hpnicfRadiusAuthServerDownTrap NOTIFICATION-TYPE
        OBJECTS     { radiusAuthServerAddress,
                     radiusAuthClientServerPortNumber,
                     hpnicfRadiusServerFirstTrapTime}
        STATUS      current
        DESCRIPTION
        "This trap is generated when the authentication RADIUS server
        doesn't respond client's requests for specified times."
    ::= { hpnicfRadiusServerTrap 1 }

    hpnicfRadiusAccServerDownTrap NOTIFICATION-TYPE
        OBJECTS     { radiusAccServerAddress,
                     radiusAccClientServerPortNumber,
                     hpnicfRadiusServerFirstTrapTime}
        STATUS      current
        DESCRIPTION
        "This trap is generated when the accounting RADIUS server
        doesn't respond client's requests for specified times."
    ::= { hpnicfRadiusServerTrap 2 }

    hpnicfRadiusServerTrapPrefix OBJECT IDENTIFIER ::= { hpnicfRadiusServerTrap 0 }

    hpnicfRadiusAuthServerUpTrap NOTIFICATION-TYPE
        OBJECTS     { radiusAuthServerAddress,
                     radiusAuthClientServerPortNumber,
                     hpnicfRadiusServerFirstTrapTime }
        STATUS      current
        DESCRIPTION
        "This trap is generated when the device finds that the state of
        RADIUS authentication server becomes reachable from unreachable."
    ::= { hpnicfRadiusServerTrapPrefix 1 }

    hpnicfRadiusAccServerUpTrap NOTIFICATION-TYPE
        OBJECTS     { radiusAccServerAddress,
                     radiusAccClientServerPortNumber,
                     hpnicfRadiusServerFirstTrapTime }
        STATUS      current
        DESCRIPTION
        "This trap is generated when the device finds that the state of
        RADIUS accounting server becomes reachable from unreachable."
    ::= { hpnicfRadiusServerTrapPrefix 2 }

    hpnicfRadiusAuthErrTrap NOTIFICATION-TYPE
        OBJECTS     { radiusAuthServerAddress,
                      radiusAuthClientServerPortNumber }
        STATUS      current
        DESCRIPTION
        "This trap is generated when the device finds that the percent of
        unsuccessful authentication exceeds a threshold, and the threshold
        is the value of node hpnicfRadiusAuthErrThreshold."
    ::= { hpnicfRadiusServerTrapPrefix 3 }

-- ***********************************************************************
--
--  Supplement to RFC2618 RADIUS-AUTH-CLIENT-MIB
--
-- ***********************************************************************

    hpnicfRadiusAuthenticating OBJECT IDENTIFIER ::= { hpnicfRadius 4 }

    hpnicfRadiusAuthClient OBJECT IDENTIFIER ::= { hpnicfRadiusAuthenticating 1 }

    hpnicfRadiusAuthServerTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF HpnicfRadiusAuthServerEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        "The (conceptual) table listing the RADIUS authenticating
        servers with which the client shares a secret."
    ::= { hpnicfRadiusAuthClient 1 }

    hpnicfRadiusAuthServerEntry OBJECT-TYPE
        SYNTAX  HpnicfRadiusAuthServerEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        "An entry (conceptual row) representing a RADIUS authenticating
        server with which a client shares a secret."
        INDEX { radiusAuthServerIndex }
    ::= { hpnicfRadiusAuthServerTable 1 }

    HpnicfRadiusAuthServerEntry ::= SEQUENCE {
        hpnicfRadiusAuthFailureTimes         Counter32,
        hpnicfRadiusAuthTimeoutTimes        Counter32,
        hpnicfRadiusAuthRejectTimes       Counter32}

    hpnicfRadiusAuthFailureTimes   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS authenticating failed to this server."
    ::= { hpnicfRadiusAuthServerEntry  1 }

    hpnicfRadiusAuthTimeoutTimes   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS authenticating timeout to this server."
    ::= { hpnicfRadiusAuthServerEntry  2 }

    hpnicfRadiusAuthRejectTimes   OBJECT-TYPE
        SYNTAX  Counter32
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
        "The number of RADIUS authenticating rejected to this server."
    ::= { hpnicfRadiusAuthServerEntry  3 }


-- ***********************************************************************
--
--  Radius Extend
--
-- ***********************************************************************
    hpnicfRadiusExtend OBJECT IDENTIFIER ::= { hpnicfRadius 5 }

    hpnicfRadiusExtendObjects OBJECT IDENTIFIER ::= { hpnicfRadiusExtend 1 }
    hpnicfRadiusExtendTables OBJECT IDENTIFIER ::= { hpnicfRadiusExtend 2 }
    hpnicfRadiusExtendTraps OBJECT IDENTIFIER ::= { hpnicfRadiusExtend 3 }

-- ***********************************************************************
--
--  Radius Scheme Authentication Table
--
-- ***********************************************************************
    hpnicfRadiusSchAuthTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRadiusSchAuthEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS authentication servers."
    ::= { hpnicfRadiusExtendTables 1 }

    hpnicfRadiusSchAuthEntry OBJECT-TYPE
        SYNTAX HpnicfRadiusSchAuthEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing RADIUS authentication servers."
        INDEX { hpnicfRadiusSchAuthGroupName}
    ::= { hpnicfRadiusSchAuthTable 1 }

    HpnicfRadiusSchAuthEntry ::= SEQUENCE {
        hpnicfRadiusSchAuthGroupName           DisplayString,
        hpnicfRadiusSchAuthPrimIpAddr          IpAddress,
        hpnicfRadiusSchAuthPrimUdpPort         Integer32,
        hpnicfRadiusSchAuthPrimKey             DisplayString,
        hpnicfRadiusSchAuthSecIpAddr           IpAddress,
        hpnicfRadiusSchAuthSecUdpPort          Integer32,
        hpnicfRadiusSchAuthSecKey              DisplayString,
        hpnicfRadiusSchAuthRowStatus           RowStatus
        }

    hpnicfRadiusSchAuthGroupName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The name of the RADIUS authentication server group referred to in this table entry."
    ::= { hpnicfRadiusSchAuthEntry 1 }

    hpnicfRadiusSchAuthPrimIpAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of primary RADIUS authenticaiton server."
    ::= { hpnicfRadiusSchAuthEntry 2 }

    hpnicfRadiusSchAuthPrimUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to primary
        RADIUS authentication server.  Default value is 1812."
        DEFVAL { 1812 }
    ::= { hpnicfRadiusSchAuthEntry 3 }

    hpnicfRadiusSchAuthPrimKey OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the primary RADIUS
        authentication server used in encoding and decoding sensitive data."
    ::= { hpnicfRadiusSchAuthEntry 4 }

    hpnicfRadiusSchAuthSecIpAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of secondary RADIUS authenticaiton server."
    ::= { hpnicfRadiusSchAuthEntry 5 }

    hpnicfRadiusSchAuthSecUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to secondary
        RADIUS authentication server.  Default value is 1812."
        DEFVAL { 1812 }
    ::= { hpnicfRadiusSchAuthEntry 6 }

    hpnicfRadiusSchAuthSecKey OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        authentication server used in encoding and decoding sensitive data."
    ::= { hpnicfRadiusSchAuthEntry 7 }

    hpnicfRadiusSchAuthRowStatus   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, hpnicfRadiusSchAuthGroupName must be specified,
        and this action will create a corresponding domain that
        hpnicfDomainRadiusGroupName is the same as hpnicfRadiusSchAuthGroupName.
        To destroy an existent row, the hpnicfRadiusSchAuthGroupName MUST NOT be
        referred by hpnicfDomainTable in hpnicfDomainRadiusGroupName column."
    ::= { hpnicfRadiusSchAuthEntry 8 }


-- ***********************************************************************
--
--  Radius Scheme Accounting Table
--
-- ***********************************************************************
    hpnicfRadiusSchAccTable OBJECT-TYPE
        SYNTAX SEQUENCE OF HpnicfRadiusSchAccEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The (conceptual) table listing RADIUS accounting servers."
    ::= { hpnicfRadiusExtendTables 2 }

    hpnicfRadiusSchAccEntry OBJECT-TYPE
        SYNTAX HpnicfRadiusSchAccEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry (conceptual row) representing RADIUS accounting servers."
        INDEX { hpnicfRadiusSchAccGroupName}
    ::= { hpnicfRadiusSchAccTable 1 }

    HpnicfRadiusSchAccEntry ::= SEQUENCE {
        hpnicfRadiusSchAccGroupName           DisplayString,
        hpnicfRadiusSchAccPrimIpAddr          IpAddress,
        hpnicfRadiusSchAccPrimUdpPort         Integer32,
        hpnicfRadiusSchAccPrimKey             DisplayString,
        hpnicfRadiusSchAccSecIpAddr           IpAddress,
        hpnicfRadiusSchAccSecUdpPort          Integer32,
        hpnicfRadiusSchAccSecKey              DisplayString,
        hpnicfRadiusSchAccRowStatus           RowStatus
        }

    hpnicfRadiusSchAccGroupName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The name of the RADIUS accounting server group referred to in this table entry."
    ::= { hpnicfRadiusSchAccEntry 1 }

    hpnicfRadiusSchAccPrimIpAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of primary RADIUS accounting server."
    ::= { hpnicfRadiusSchAccEntry 2 }

    hpnicfRadiusSchAccPrimUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to primary
        RADIUS accounting server.  Default value is 1813."
        DEFVAL { 1813 }
    ::= { hpnicfRadiusSchAccEntry 3 }

    hpnicfRadiusSchAccPrimKey OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the primary RADIUS
        accounting server used in encoding and decoding sensitive data."
    ::= { hpnicfRadiusSchAccEntry 4 }

    hpnicfRadiusSchAccSecIpAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The IP address of secondary RADIUS accounting server."
    ::= { hpnicfRadiusSchAccEntry 5 }

    hpnicfRadiusSchAccSecUdpPort OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The UDP port the client is using to send requests to secondary
        RADIUS accounting server.  Default value is 1813."
        DEFVAL { 1813 }
    ::= { hpnicfRadiusSchAccEntry 6 }

    hpnicfRadiusSchAccSecKey OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The secret shared between the RADIUS client and the secondary RADIUS
        accounting server used in encoding and decoding sensitive data."
    ::= { hpnicfRadiusSchAccEntry 7 }

    hpnicfRadiusSchAccRowStatus   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, hpnicfRadiusSchAccGroupName must be specified,
        and this action will create a corresponding domain that
        hpnicfDomainRadiusGroupName is the same as hpnicfRadiusSchAccGroupName.
        To destroy an existent row, the hpnicfRadiusSchAccGroupName MUST NOT be
        referred by hpnicfDomainTable in hpnicfDomainRadiusGroupName column."
    ::= { hpnicfRadiusSchAccEntry 8 }
-- ***********************************************************************
--
-- RADIUS ACCOUNT STATISTIC
--
-- ***********************************************************************
hpnicfRadiusStatistic OBJECT IDENTIFIER ::= { hpnicfRadius 6 }

hpnicfRadiusStatAccReq OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of radius account request to the
        radius server."
    ::= { hpnicfRadiusStatistic 1 }

hpnicfRadiusStatAccAck OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of radius account response from the
         radius server."
    ::= { hpnicfRadiusStatistic 2 }

hpnicfRadiusStatLogoutReq OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of logout request to the radius server."
    ::= { hpnicfRadiusStatistic 3 }

hpnicfRadiusStatLogoutAck OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "It shows the number of logout response from the radius server."
    ::= { hpnicfRadiusStatistic 4 }

hpnicfRadiusServerTrapVarObjects OBJECT IDENTIFIER ::= { hpnicfRadius 7 }

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

END
