-- =============================================================================
-- Copyright (c) 2010-2014 Hewlett-Packard Development Company, L.P.
--
-- Description:
--   The file defines a MIB to provide root node and TC for 802.11 MIB series.
-- Reference:
-- Version: V2.0
-- History:
--   V1.0 created by shiyang (Richard)
--     Initial version 2006-05-10
--   V1.1 2007-04-27 modified by shiyang(Richard)
--        Add "none" and "all" enumerate for HpnicfDot11AuthenType.
--        Add HpnicfDot11RFModeType.
--        Add none(1) for HpnicfDot11AKMType.
--   V1.2 2007-06-21 modified by Vikas K
--        Added HpnicfDot11AssocFailType.
--        Added HpnicfDot11AuthorFailType.
--        Added HpnicfDot11QosAcType.
--   V1.3 2008-8-23 modified by Wang Lu
--        Add HpnicfDot11RadioElementIndex
--        Add enumerations to HpnicfDot11RadioType.
--        Remove hyphen in enumerations of HpnicfDot11QosAcType.
--        Add hpnicfDot11ElementGroup.
--   V1.4 2008-11-18 modified by Wang Lu
--        Add HpnicfDot11WorkMode and HpnicfDot11CirMode
--   V1.5 2009-05-07 modified by Wang Shaojie
--        Modify HpnicfDot11SSIDEncryptModeType
--   V1.6 2010-01-07 modified by Wang Shaojie
--        Modify HpnicfDot11SecIEStatusType, HpnicfDot11CipherType
--        2010-03-18 modified by Wang Lu
--        Modify HpnicfDot11AKMType and HpnicfDot11CipherType
--   V1.7 2011-08-10 modified by limingjin
--        Add HpnicfDot11RadioType2
--   V1.8 2011-08-26 modified by Wang Lu
--        Add HpnicfDot11SaIntfDevType
--   V1.9 2013-12-21 modified by wubin
--        Modify HpnicfDot11RadioType, HpnicfDot11RadioType2
--   V2.0 2014-02-14 modified by Xiao min
--        Add HpnicfDot11TruthValueCM
-- =============================================================================
HPN-ICF-DOT11-REF-MIB DEFINITIONS ::= BEGIN

IMPORTS
        TEXTUAL-CONVENTION
    FROM SNMPv2-TC
        MODULE-IDENTITY,
        Integer32, Unsigned32, OBJECT-TYPE
    FROM SNMPv2-SMI
        hpnicfCommon
    FROM HPN-ICF-OID-MIB;

hpnicfDot11 MODULE-IDENTITY
    LAST-UPDATED "201001072000Z"        -- Jan 7, 2009 at 20:00 GMT
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "This MIB defines the root node and TC for 802.11 features.
        By this way, the MIB series for 802.11 will be easily maintained.

        GLOSSARY

        IEEE 802.11
        Standard to encourage interoperability among
        wireless networking equipment.

        IEEE 802.11a
        This is a high speed physical layer extension to
        the 802.11 standard on the 5 GHz band.

        IEEE 802.11b
        High-rate wireless LAN standard for wireless
        data transfer at up to 11 Mbps.

        IEEE 802.11g
        Higher Speed Physical Layer (PHY) Extension to
        IEEE 802.11b, will boost wireless LAN speed to 54
        Mbps by using OFDM (orthogonal frequency division
        multiplexing). The IEEE 802.11g specification is
        backward compatible with the widely deployed IEEE
        802.11b standard.
        When configure radio with as bg mode, it means that
        radio will be compatible to 802.11b and 802.11g.
        When configure radio with as g mode, it means that
        radio will be only compatible to 802.11g.

        IEEE 802.11i
        As 802.11 has lot of deficiency in wireless security
        domain, especially for enterprise custom, IEEE defined
        a new standard 802.11i to extend security feature of
        802.11 standard.

        AKM
        The authentication and key management method defined by
        802.11i, and which includes 802.1x and pre-shared key."


    REVISION "201001072000Z"        -- Jan 7, 2010 at 20:00 GMT
    DESCRIPTION
        "Modified for CMCC of GuangDong province."
    REVISION "200905072000Z"        -- May 7, 2009 at 20:00 GMT
    DESCRIPTION
        "Modified for CMCC of GuangDong province."
    REVISION "200706212000Z"        -- Jun 21, 2007 at 20:00 GMT
    DESCRIPTION
        "Modified for CMCC(China Mobile Communication Corporation)
        requirements."
    REVISION "200704272000Z"        -- Apr 27, 2007 at 20:00 GMT
    DESCRIPTION
        "Modified to add new TC."
    REVISION "200605101900Z"        -- May 10, 2006 at 19:00 GMT
    DESCRIPTION
        "The initial revision of this MIB module."
    ::= { hpnicfCommon 75 }

-- *****************************************************************************
-- *  Textual conventions from 802 definitions
-- *****************************************************************************
--  Common TEXTUAL-CONVENTION
HpnicfDot11ObjectIDType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents AP identifier value type."
    SYNTAX      OCTET STRING(SIZE(0..127))

HpnicfDot11RadioScopeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents radio value scope."
    SYNTAX      Integer32

HpnicfDot11RadioType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents AP 802.11 radio type of 802.11a/b/g/n/ac as per
        the standard.
        The following values are supported:
        dot11a  - 802.11a
        dot11b  - 802.11b
        dot11g  - 802.11g
        dot11n  - 802.11n
        dot11gn  - 802.11gn
        dot11an  - 802.11an
        dot11ac  - 802.11ac
        "
    SYNTAX      INTEGER
        {
            dot11a(1),
            dot11b(2),
            dot11g(4),
            dot11n(8),
            dot11gn(16),
            dot11an(32),
            dot11ac(64)
        }

HpnicfDot11RadioType2 ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents AP 802.11 radio type of 802.11a/b/g/an/gn/ac as per
        the standard.
        The following values are supported:
        dot11a   - 802.11a
        dot11b   - 802.11b
        dot11g   - 802.11g
        dot11an  - 802.11an
        dot11gn  - 802.11gn
        dot11ac  - 802.11ac
        "
    SYNTAX      INTEGER
        {
            dot11a(1),
            dot11b(2),
            dot11g(4),
            dot11an(8),
            dot11gn(16),
            dot11ac(32)
        }

HpnicfDot11MACModeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "CAPWAP defines three kinds MAC modes for fit AP.
        The management packet will be exchanged between AP and AC by
        CAPWAP control tunnel.
        For data packet, the following MAC mode are supported:
        split        - AP will tunnel 802.11 data message
        - to AC by CAPWAP,
        localtunnel  - AP will convert data to 802.3, then tunnel
        - it to AC by CAPWAP,
        localbridge  - AP will directly handle data packet without
        - sending to AC to process,
        fatAP        - For fat AP, it will handle all 802.11 frames
        - by itself."
    SYNTAX      INTEGER
        {
            split(1),
            localtunnel(2),
            localbridge(3),
            fatAP(4)
        }

HpnicfDot11ChannelScopeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the channel scope which consists of 802.11a/b/g."
    SYNTAX      Integer32

HpnicfDot11NotifyReasonType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "The explanation string is for the event notification of dot11."
    SYNTAX      OCTET STRING(SIZE(0..255))

HpnicfDot11SSIDStringType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "SSID is a string to identify ESS for wireless network."
    SYNTAX      OCTET STRING

HpnicfDot11ServicePolicyIDType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the type of service policy ID."
    SYNTAX      Integer32

HpnicfDot11SSIDEncryptModeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents encryption mode for the specific ESS:
        The following values are supported:
        cleartxt  - clear txt,
        cipher    - WPA and 802.11i,
        ext       - ext."
    SYNTAX      INTEGER
        {
            cleartxt(1),
            cipher(2),
            ext(3)
        }

HpnicfDot11PreambleType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the current radio preamble type.
        The following values are supported:
        long  - long preambles,
        short - short preambles."
    SYNTAX      INTEGER
        {
            long(1),
            short(2)
        }

HpnicfDot11TxPwrLevelScopeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the Tx power level scope for 802.11."
    SYNTAX      Integer32

HpnicfDot11RFModeType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents RF management mode.
        The following values are supported:
        manual  - Configure RF parameter by manual,
        auto    - Automaticall configure."
    SYNTAX      INTEGER
        {
            manual(1),
            auto(2)
        }

--  CAPWAP TEXTUAL-CONVENTION
HpnicfDot11TunnelSecSchemType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents which security scheme option is available for
        CAPWAP tunnel.
        The following values are supported:
        cleartxt  - No encryption protection,
        dtls      - Encrypted by DTLS,
        ipsec     - Encrypted by IPSEC."
    SYNTAX      INTEGER
        {
            cleartxt(1),
            dtls(2),
            ipsec(3)
        }

--  802.11i TEXTUAL-CONVENTION
HpnicfDot11SecIEStatusType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "To enable the WPA Information element in the beacon and probe
        response frames sent by AP.
        The following values are supported:
        none - both wpa and rsn are disabled,
        rsn  - only enable rsn,
        wpa  - only enable wpa,
        all  - both wpa and rsn are enabled,
        ext - only enable ext."
    SYNTAX      INTEGER
        {
            none(1),
            rsn(2),
            wpa(3),
            all(4),
            ext(5)
        }

HpnicfDot11CipherType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the frame encryption cipher types for
        frames on IEEE 802.11 radio interfaces.
        The MIB defines TC by referring to the 802.11i protocol.
        The following values are supported:
        none     - clear text or no cipher method is configure,
        wep40    - 40-bit WEP key,
        tkip     - WPA Temporal Key encryption,
        aesccmp  - WPA AES CCMP encryption,
        wep104   - 104-bit WEP key,
        wpisms4  - ext encryption,
        wep128   - 128-bit WEP key."
    SYNTAX      INTEGER
        {
            none(1),
            wep40(2),
            tkip(4),
            aesccmp(16),
            wep104(32),
            wpisms4(64),
            wep128(128)
        }

HpnicfDot11AuthenType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the Authentication mode defined by 802.11.
        The following values are supported:
        none         - No authentication mode configured,
        opensystem   - In fact,no real authentication happened,
        sharedkey    - System will use challenge message to
        - authenticate the access user,
        all          - both open system and shared key."
    SYNTAX      INTEGER
        {
            none(1),
            opensystem(2),
            sharedkey(3),
            all(4)
        }

HpnicfDot11AKMType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents the key management mode defined by 802.11i.
        The following values are supported:
        none         - No key management mode configured,
        psk          - pre-shared key authentication,
        dot1x        - 802.1x authentication,
        ext          - ext."
    SYNTAX      INTEGER
        {
            none(1),
            psk(2),
            dot1x(3),
            ext(4)
        }

HpnicfDot11AssocFailType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Enumeration of the reasons for station association failure.
        including:
        unknownfailure          - unknown failure,
        toomanyassoc            - too many association,
        invalidie               - information element is invalid,
        unsupportedrate         - rate is not supported,
        unsupportedpwrcap       - power capability is not supported,
        unsupportedcap          - capability is not supported"
    SYNTAX      INTEGER
        {
            unknownfailure(1),
            toomanyassoc(2),
            invalidie(3),
            unsupportedrate(4),
            unsupportedpwrcap(5),
            unsupportedcap(6)
        }

HpnicfDot11AuthorFailType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Enumeration of the reasons for station authorization failure.
        including:
        unknownfailure           - unknown failure,
        invalidie                - information element is invalid,
        rsnieversionunsupported  - rsn information element version
        is not supported,
        wpaieversionunsupported  - wpa information element version
        is not supported,
        groupcipherinvalid       - group cipher is invalid,
        pairwisecipherinvalid    - pairwise cipher is invalid,
        akminvalid               - akm is invalid"
    SYNTAX      INTEGER
        {
            unknownfailure(1),
            invalidie(2),
            rsnieversionunsupported(3),
            wpaieversionunsupported(4),
            groupcipherinvalid(5),
            pairwisecipherinvalid(6),
            akminvalid(7)
        }

--  802.11e TEXTUAL-CONVENTION
HpnicfDot11QosAcType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "802.11e defines four types of access category, including:
        acbk      - for background access category,
        acbe      - for besteffort access category,
        acvi      - for voice access category,
        acvo      - for video access category
        "
    SYNTAX      INTEGER
        {
            acbk(1),
            acbe(2),
            acvi(3),
            acvo(4)
        }

HpnicfDot11RadioElementIndex ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
    "Represents index of radio.  For split architecture, It comprises two parts.
    The lowest 8 bits mean radio ID.  The highest 8 bits are reserved.  The
    highest 8 bits stand for AP ID.  The meaning is shown as follows:
    31             23                15             7             0
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    |  reserved   |             AP  ID              | radio ID    |
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    For FAT AP, the type represents ifIndex of radio.
    "
    SYNTAX Unsigned32

-- *****************************************************************************
-- *  Major sections
-- *****************************************************************************

HpnicfDot11WorkMode ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
    "Work mode of device.
    In normal mode, the device will provide WLAN service.
    In monitor mode, the device will monitor the environment.
    In hybrid mode, the device will provide WLAN service while monitoring the
    environment."
    SYNTAX INTEGER
    {
        normal(1),
        monitor(2),
        hybrid(3)
    }

HpnicfDot11CirMode ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
    "The mode of committed information rate.
    'static' means station will use the configured CIR separately.
    For example, if the CIR is 1Mbps, every station can enjoy 1Mbps.
    'dynamic' means all stations will share the configured CIR in common."
    SYNTAX INTEGER
    {
        static(1),
        dynamic(2)
    }

HpnicfDot11SaIntfDevType ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "The type of interference device."
    SYNTAX INTEGER
        {
            microwave(1),
            microwaveInverter(2),
            bluetooth(3),
            fixedFreqOthers(4),
            fixedFreqCordlessPhone(5),
            fixedFreqVideo(6),
            fixedFreqAudio(7),
            freqHopperOthers(8),
            freqHopperCordlessBase(9),
            freqHopperCordlessNetwork(10),
            freqHopperXbox(11),
            genericInterferer(12)
        }

HpnicfDot11TruthValueCM ::=   TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents a boolean value."
    SYNTAX INTEGER
        {
            dot11false(0),
            dot11true(1)
        }

hpnicfDot11Common OBJECT IDENTIFIER ::= { hpnicfDot11 12 }

hpnicfDot11ElementGroup OBJECT IDENTIFIER ::= { hpnicfDot11Common 1 }

-- *****************************************************************************
-- *  hpnicfDot11APElementTable Definition
-- *****************************************************************************
hpnicfDot11APElementTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfDot11APElementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table is used to represent fat AP and AP template on AC
        as one kind of AP element."
    ::= { hpnicfDot11ElementGroup 1 }

hpnicfDot11APElementEntry OBJECT-TYPE
    SYNTAX      HpnicfDot11APElementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry contains information for each AP element."
    INDEX
        {
            hpnicfDot11APElementIndex
        }
    ::= { hpnicfDot11APElementTable 1 }

HpnicfDot11APElementEntry ::= SEQUENCE
    {
        hpnicfDot11APElementIndex             Integer32,
        hpnicfDot11APElementTemplateName      OCTET STRING,
        hpnicfDot11APElementSerialID          OCTET STRING,
        hpnicfDot11APElementModelAlias        OCTET STRING
    }

hpnicfDot11APElementIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This object represents the index of AP element."
    ::= { hpnicfDot11APElementEntry 1 }

hpnicfDot11APElementTemplateName OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object represents the template name of AP element."
    ::= { hpnicfDot11APElementEntry 2 }

hpnicfDot11APElementSerialID OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object represents the serial ID of AP element."
    ::= { hpnicfDot11APElementEntry 3 }

hpnicfDot11APElementModelAlias OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object represents the alias of AP element model name."
    ::= { hpnicfDot11APElementEntry 4 }

-- *****************************************************************************
-- *  End of hpnicfDot11APElementTable Definition
-- *****************************************************************************
-- *****************************************************************************
-- *  hpnicfDot11RadioElementTable Definition
-- *****************************************************************************
hpnicfDot11RadioElementTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF HpnicfDot11RadioElementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table is used to represent the radio element of fat AP and AC."
    ::= { hpnicfDot11ElementGroup 2 }

hpnicfDot11RadioElementEntry OBJECT-TYPE
    SYNTAX      HpnicfDot11RadioElementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry contains information for each radio element."
    INDEX
        {
            hpnicfDot11APElementIndex,
            hpnicfDot11RadioElementRadioNum
        }
    ::= { hpnicfDot11RadioElementTable 1 }

HpnicfDot11RadioElementEntry ::= SEQUENCE
    {
        hpnicfDot11RadioElementRadioNum       Unsigned32,
        hpnicfDot11RadioElementRadioPolicy    OCTET STRING,
        hpnicfDot11RadioElementRadioIndex     Unsigned32
    }

hpnicfDot11RadioElementRadioNum OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This object represents the number of the radio element."
    ::= { hpnicfDot11RadioElementEntry 1 }

hpnicfDot11RadioElementRadioPolicy OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object represents the radio policy of the radio element."
    ::= { hpnicfDot11RadioElementEntry 2 }

hpnicfDot11RadioElementRadioIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object represents the index of the radio element.
        On AC, the higher 24 bits stand for the AP index,
        and the last 8 bits stand for the radio index.
        On fat AP, the index stands for the interface index of radio
        interface."
    ::= { hpnicfDot11RadioElementEntry 3 }

-- *****************************************************************************
-- *  End of hpnicfDot11RadioElementTable Definition
-- *****************************************************************************
END
