-- *******************************************************************
-- QTECH-WLAN-SECURITY-MIB.mib : Qtech WLAN DHCP MIB
--
-- Oct 2009, luolc
--
-- Copyright (c) 2009 by Qtech Networks Co.,Ltd.
-- All rights reserved.
-- *******************************************************************
QTECH-WLAN-SECURITY-MIB DEFINITIONS ::= BEGIN
    IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        Unsigned32
            FROM SNMPv2-SMI
        TruthValue,
        DisplayString,
        MacAddress,
        RowStatus
            FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        NOTIFICATION-GROUP,
        OBJECT-GROUP
            FROM SNMPv2-CONF
        qtechApgWlanId
            FROM QTECH-AC-MGMT-MIB
        qtechMgmt
            FROM QTECH-SMI;


-- **********************************************
-- * MODULE IDENTITY
-- **********************************************
qtechWLANsecurityMIB MODULE-IDENTITY
    LAST-UPDATED    "200910280000Z"
    ORGANIZATION
        "Qtech Networks Co.,Ltd."
    CONTACT-INFO
        "Tel: 4008-111-000
           E-mail: service@qtech.com.cn "

    DESCRIPTION
       "
       Wlan security software private MIB for Qtech SNC.
       This is AC device manage MIB.
       "
    REVISION      "200910280000Z"
    DESCRIPTION
       "Initial version of this MIB module."

    ::= { qtechMgmt  61 }


-- ***************************************************************************
-- * Major sections
-- ***************************************************************************
qtechWLANsecurityMIBObjects OBJECT IDENTIFIER  ::= { qtechWLANsecurityMIB 1 }


--***************************************************************************
--* AP agent MIB object
--***************************************************************************

qtechAPworkmode OBJECT-TYPE
      SYNTAX  INTEGER { fitap(1), fatap(2) }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
        "This Attribute present AP device work mode ,
        Value 1 means Fit AP , Value 2 means Fat AP."
      DEFVAL { 1 }
      ::= { qtechWLANsecurityMIBObjects 1}

--***************************************************************************
--* qtechWLANsecurityConfig Table
--***************************************************************************

qtechWLANsecurityConfigTable OBJECT-TYPE
    SYNTAX SEQUENCE OF QtechWLANsecurityConfigEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
      "Qtech Private WLAN security MIB"
    ::={ qtechWLANsecurityMIBObjects 2 }


qtechWLANsecurityConfigEntry  OBJECT-TYPE
    SYNTAX QtechWLANsecurityConfigEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
      "An agent MAY process one or more WLAN security , which is identifed by qtechApgWlanId.
      In other words, wlan ID is the index of this MIB table."
    INDEX { qtechApgWlanId }
    ::={ qtechWLANsecurityConfigTable 1 }


QtechWLANsecurityConfigEntry ::=
    SEQUENCE {
        qtechWLANsecrymode                 INTEGER,
        qtechstaticweplength               INTEGER,
        qtech8021xweplength                INTEGER,
        qtechWPAenabled                    TruthValue,
        qtechWPAPairwisecipher             INTEGER,
        qtechWPAakmmode                    INTEGER,
        qtechWPApskPassPhrase              DisplayString,
        qtechWLANsecry80211i               TruthValue,
        qtechWAPIasuIpaddress              Unsigned32,
        qtechWAPIcertificateformat         INTEGER,
        qtechWAPImsrekeyClientoff          TruthValue,
        qtechWAPIimportcertificate         INTEGER,
        qtechWAPIcacertificatename         DisplayString,
        qtechWAPIlocalcertificatename      DisplayString,
        qtechWAPIascertificatename         DisplayString,
        qtechRSNenabled                    TruthValue,
        qtechRSNPairwisecipher             INTEGER,
        qtechRSNakmmode                    INTEGER,
        qtechRSNpskPassPhrase              DisplayString,
        qtechWEPAuthenAlgorithm            INTEGER,
        qtechWLANsecurityStatus            RowStatus,
        qtechACauthenMethodsupport         INTEGER,
        qtechWLANEAPAuthenSupport          INTEGER
    }

qtechWLANsecrymode OBJECT-TYPE
    SYNTAX INTEGER {open(1),staticwep(2), wep8021x(3),wpanone(4),wpapsk(5),wpa8021x(6),tsn(7) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "This attribute present wlan security mode. Value 1 means open,
      Value 2 means static-wep,Value 3 means 802.1x-wep,Value 4 means WPA-PSK,
      Value 5 means WPA-802.1x,Value 6 means TSN(Hybrid)"
    ::= { qtechWLANsecurityConfigEntry 1}

qtechstaticweplength OBJECT-TYPE
    SYNTAX INTEGER  { wep40(1),wep104(2),wep128(3)}
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "Static WEP key length,1 means WEP-40,
      2 means WEP-104, 3 means WEP-128,default is 2."
    DEFVAL { 2 }
    ::= { qtechWLANsecurityConfigEntry 2}


qtech8021xweplength OBJECT-TYPE
    SYNTAX INTEGER  { wep40(1),wep104(2),wep128(3)}
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "IEEE802.1x WEP key length,1 means WEP-40,
      2 means WEP-104, 3 means WEP-128,default is 2."
    DEFVAL { 2 }
    ::= { qtechWLANsecurityConfigEntry 3}

qtechWPAenabled OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "Does this WLAN open WPA1 (it is not RSNA) support. "
    DEFVAL { false }
    ::= { qtechWLANsecurityConfigEntry 4}


qtechWPAPairwisecipher OBJECT-TYPE
    SYNTAX INTEGER { tkip(1),aes(2), tkiporaes(3) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA1 cipher mode default is TKIP(1)."
    DEFVAL { 1 }
    ::= { qtechWLANsecurityConfigEntry 5}


qtechWPAakmmode OBJECT-TYPE
    SYNTAX INTEGER { ieee8021x(1), psk(2), pskor8021x(3) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA1 AKM mode ,default is 802.1x."
    DEFVAL { 1 }
    ::= { qtechWLANsecurityConfigEntry 6}


qtechWPApskPassPhrase OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA1 PSK password ,it is write-only.
      Any try to read it return FAIL."
    ::= { qtechWLANsecurityConfigEntry 7 }


qtechWLANsecry80211i  OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "IEEE802.11i or WAPI security mode.
       true means IEEE802.11i, false means WAPI."
    DEFVAL { true}
    ::= { qtechWLANsecurityConfigEntry 8 }


qtechWAPIasuIpaddress OBJECT-TYPE
    SYNTAX Unsigned32 (1..4294967295)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WAPI ASU IP address."
    ::= { qtechWLANsecurityConfigEntry 9 }


qtechWAPIcertificateformat OBJECT-TYPE
    SYNTAX INTEGER { x509v3(1), wapigbw(2) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "WAPI certificate format ,1 means x509v3,
        2 means WAPI-GBW. Now we only support x509v3."
    DEFVAL { 1 }
    ::= { qtechWLANsecurityConfigEntry 10 }


qtechWAPImsrekeyClientoff OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "When one user off line, deos the WAPI sure update group keys,
      default is false."
    DEFVAL { false }
    ::= { qtechWLANsecurityConfigEntry 11 }


qtechWAPIimportcertificate OBJECT-TYPE
    SYNTAX INTEGER { ca(1),local(2),as(3) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "Import WAPI certificate,this is write-only."
    ::= { qtechWLANsecurityConfigEntry 12 }


qtechWAPIcacertificatename OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WAPI CA certificate file name, default is wapi_ca.cer."
    ::= { qtechWLANsecurityConfigEntry 13 }

qtechWAPIlocalcertificatename OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WAPI Local certificate file name, default is wapi_local.cer."
    ::= { qtechWLANsecurityConfigEntry 14 }

qtechWAPIascertificatename OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WAPI ASU certificate file name, default is wapi_as.cer."
    ::= { qtechWLANsecurityConfigEntry 15 }

qtechRSNenabled OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "RSNA (WPA2) enable or disable"
    ::= { qtechWLANsecurityConfigEntry 16 }

qtechRSNPairwisecipher OBJECT-TYPE
    SYNTAX INTEGER { tkip(1), aes(2), tkiporaes(3) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA2 cipher mode."
    DEFVAL { 2 }
    ::= { qtechWLANsecurityConfigEntry 17 }

qtechRSNakmmode OBJECT-TYPE
    SYNTAX INTEGER { ieee8021x(1), psk(2), pskor8021x(3) }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA2 authen key manage mode."
    DEFVAL { 1 }
    ::= { qtechWLANsecurityConfigEntry 18 }

qtechRSNpskPassPhrase OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
      "WPA2 PSK password ,it is write-only.
      Any try to read it return FAIL."
    ::= { qtechWLANsecurityConfigEntry 19 }

qtechWEPAuthenAlgorithm OBJECT-TYPE
    SYNTAX INTEGER { openSystem(1), sharedKey(2) }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "authentication algorithms supported by the Authencator.
         The following are the values and the associated algorithm.
         Value = 1: Open System
         Value = 2: Shared Key"
    ::= { qtechWLANsecurityConfigEntry 20 }

qtechWLANsecurityStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The status column used for creating and
         deleting instances of the columnar objects in the
         default WEP key Table."
    ::= { qtechWLANsecurityConfigEntry 21 }

qtechACauthenMethodsupport OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "authentication method supported by the AC, including the 
        EAP-SIM authentication, WEP authentication, EAP-MD5 
        authentication."
    ::= { qtechWLANsecurityConfigEntry 22 }
    
qtechWLANEAPAuthenSupport OBJECT-TYPE
    SYNTAX INTEGER
    {
    enableEAPAuthentication(0),
    disableEAPAuthentication(1),
    notSupportingEAPAuthentication(2)
    }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Whether the current ap or ac enables or diables the EAP authentication."
    ::= { qtechWLANsecurityConfigEntry 23 }
--********************************************************************
-- * dot11WEPDefaultKeys TABLE
--********************************************************************

qtechWEPDefaultKeysTable OBJECT-TYPE
      SYNTAX SEQUENCE OF QtechWEPDefaultKeysEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "Conceptual table for WEP default keys. "
      REFERENCE
          "IEEE Std 802.11-2007, 8.3.2"
      ::= { qtechWLANsecurityMIBObjects 3 }

qtechWEPDefaultKeysEntry OBJECT-TYPE
      SYNTAX QtechWEPDefaultKeysEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
         "An Entry (conceptual row) in the WEP Default Keys Table."
      INDEX { qtechApgWlanId,
              qtechWEPDefaultKeyIndex }
      ::= { qtechWEPDefaultKeysTable 1 }

QtechWEPDefaultKeysEntry ::=
      SEQUENCE {
               qtechWEPDefaultKeyIndex INTEGER,
               qtechWEPDefaultKeyValue OCTET STRING,
               qtechWEPDefaultKeyLength INTEGER
               }

qtechWEPDefaultKeyIndex OBJECT-TYPE
      SYNTAX INTEGER (1..4)
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION
          "The auxiliary variable used to identify instances
          of the columnar objects in the WEP Default Keys Table.
          The value of this variable is equal to the
          WEPDefaultKeyID + 1"
      ::= { qtechWEPDefaultKeysEntry 1 }

qtechWEPDefaultKeyValue OBJECT-TYPE
      SYNTAX OCTET STRING
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "A WEP default secret key value."
      ::= { qtechWEPDefaultKeysEntry 2 }

qtechWEPDefaultKeyLength OBJECT-TYPE
      SYNTAX INTEGER { wep40(1),wep104(2),wep128(3) }
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
          "A WEP default secret key length."
      ::= { qtechWEPDefaultKeysEntry 3 }

--********************************************************************
-- * End of dot11WEPDefaultKeys TABLE
--********************************************************************

--********************************************************************
--*    Compliance statements
--********************************************************************
qtechWlansecurityMIBConform OBJECT IDENTIFIER  ::= { qtechWLANsecurityMIB 2 }

qtechWlansecurityMIBCompliances OBJECT IDENTIFIER ::= { qtechWlansecurityMIBConform 1 }

qtechWlansecurityMIBGroups      OBJECT IDENTIFIER ::= { qtechWlansecurityMIBConform 2 }

qtechWlansecurityMIBCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for entities which implement
        the wlan security module of Qtech Ac device Manager"
    MODULE
    MANDATORY-GROUPS {
        qtechWlansecuritycofigGroup,
        qtechWEPDefaultKeysGroup,
        qtechWlansecurityTrapGroup
    }
    ::= { qtechWlansecurityMIBCompliances 1 }

--********************************************************************
--*    Units of conformance
--********************************************************************

qtechWlansecuritycofigGroup OBJECT-GROUP
        OBJECTS {
            qtechAPworkmode,
            qtechWLANsecrymode ,
            qtechstaticweplength,
            qtech8021xweplength,
            qtechWPAenabled,
            qtechWPAPairwisecipher,
            qtechWPAakmmode,
            qtechWPApskPassPhrase,
            qtechWLANsecry80211i,
            qtechWAPIasuIpaddress,
            qtechWAPIcertificateformat,
            qtechWAPImsrekeyClientoff,
            qtechWAPIimportcertificate,
            qtechWAPIcacertificatename,
            qtechWAPIlocalcertificatename,
            qtechWAPIascertificatename,
            qtechRSNenabled,
            qtechRSNPairwisecipher,
            qtechRSNakmmode,
            qtechRSNpskPassPhrase,
            qtechWEPAuthenAlgorithm,
            qtechWLANsecurityStatus,
            qtechACauthenMethodsupport,
            qtechWLANEAPAuthenSupport,
            qtechWlansecurityWepDecrytEnableTrapVar,
            qtechWlansecurityDeviceMAC
        }
        STATUS     current
        DESCRIPTION
                "This collection of objects represents the
                 WLAN security private MIB "
        ::= { qtechWlansecurityMIBGroups 1 }

qtechWEPDefaultKeysGroup OBJECT-GROUP
        OBJECTS {
            qtechWEPDefaultKeyValue,
            qtechWEPDefaultKeyLength
        }
        STATUS     current
        DESCRIPTION
                "This collection of objects represents the
                 WLAN WEP default keys."
        ::= { qtechWlansecurityMIBGroups 2 }

qtechWlansecurityTrapGroup NOTIFICATION-GROUP
        NOTIFICATIONS {
            qtechWlansecurityWepDecrytErr   
        }
        STATUS     current
        DESCRIPTION
                "This collection of objects represents the
                 wlan wep traps private MIB "
        ::= { qtechWlansecurityMIBGroups 3 }
        
--***********************************************************
--*     variable of trap
--***********************************************************
qtechWlansecurityTrapvar OBJECT IDENTIFIER ::= { qtechWLANsecurityMIB 3 }

qtechWlansecurityWepDecrytEnableTrapVar OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Tell the host whether need to send the trap."
    ::= { qtechWlansecurityTrapvar 1 }

qtechWlansecurityDeviceMAC OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "MAC address of the device."
    ::= { qtechWlansecurityTrapvar 2 }
--***********************************************************
--*     wep decryt error trap
--***********************************************************
qtechWLANsecurityTraps OBJECT IDENTIFIER ::= { qtechWLANsecurityMIB 0 }

qtechWlansecurityWepDecrytErr NOTIFICATION-TYPE
    OBJECTS {
        qtechApgWlanId,
        qtechWlansecurityDeviceMAC
    }
    STATUS  current
    DESCRIPTION
            "The information of an event of a wep decrytion error."
    ::= { qtechWLANsecurityTraps 1 }


END
