-- *****************************************************************
-- NCB-8610 Private MIB
--
-- Sept. 2006, Greg Lin
--
-- Copyright (c) 2006 by Senao Technology Co., Ltd.
-- All rights reserved.
--
-- Note: This MIB file is modification 3220 private MIB.
--       It modify SNMPv2 to SNMPv1 syntax.  
--
-- Date: 2006-09-20
-- *****************************************************************

--SENAO-NCB8610-MIB { iso(1) org(3) dod(6) internet(1) private(4) Enterprises(1) Senao(14125) }

--module definition


SENAO-WLAN-AP-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        enterprises, IpAddress              FROM RFC1155-SMI
        DisplayString, PhysAddress          FROM RFC1213-MIB
        OBJECT-TYPE                         FROM RFC-1212
        TRAP-TYPE                           FROM RFC-1215
        mgmt, NetworkAddress, IpAddress, Counter, Gauge,
        TimeTicks                           FROM RFC1155-SMI;


-- SENAO-Private-MIB DEFINITIONS --
   senaoMIB                  OBJECT IDENTIFIER ::= { enterprises 14125 }
   
-- SENAO-RFC1213-MIB DEFINITIONS --
   senaoRFC1213Group      				 OBJECT IDENTIFIER ::= { senaoMIB 1 }

-- SENAO-Private-MIB DEFINITIONS --
   statusInformationGroup          OBJECT IDENTIFIER ::= { senaoMIB 2 }
   countersGroup                   OBJECT IDENTIFIER ::= { senaoMIB 3 }
   privacySettingsGroup            OBJECT IDENTIFIER ::= { senaoMIB 4 }
   systemSettingsGroup             OBJECT IDENTIFIER ::= { senaoMIB 5 }
   webAdministratorSettingsGroup   OBJECT IDENTIFIER ::= { senaoMIB 6 }
   dhcpSettingsGroup		   				 OBJECT IDENTIFIER ::= { senaoMIB 7 }
   wdsSettingsGroup		   					 OBJECT IDENTIFIER ::= { senaoMIB 8 }	
   
-- SENAO-RFC1213-MIB DEFINITIONS --
   ip           OBJECT IDENTIFIER ::= { senaoRFC1213Group 1 }
   icmp         OBJECT IDENTIFIER ::= { senaoRFC1213Group 2 }
   tcp          OBJECT IDENTIFIER ::= { senaoRFC1213Group 3 }
   udp          OBJECT IDENTIFIER ::= { senaoRFC1213Group 4 }
   
-- SENAO-Private-MIB DEFINITIONS --
-- [ statusInformationGroup ] [1] --

  connectedToSSID OBJECT-TYPE
    SYNTAX      DisplayString
    ACCESS      read-write
    STATUS      mandatory
    DESCRIPTION
      "This attribute reflects the Service Set ID.
      This value may be modified by an external management 
      entity and used by the local SME to make decisions 
      about the Scanning process. The connectedToSSID
      length is limit between 1~ 32 characters.
      
            @GET-FUNC=get_statusInfo_group
            @SET-FUNC=set_statusInfo_group"     
  ::= { statusInformationGroup 1 }
  
  usingChannel  OBJECT-TYPE
    SYNTAX  INTEGER  
            {
              -- the SNMPv1 does not support channel array
              channel1 (1),
              channel2 (2),
              channel3 (3),
              channel4 (4),
              channel5 (5),
              channel6 (6),
              channel7 (7),
              channel8 (8),
              channel9 (9),
              channel10 (10),
              channel11 (11)
            }
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
      "The operating frequency channel. Valid numbers
      are as defind in ISO/IEC 8802-11:1999, 15.4.6.2.
      @GET-FUNC=get_statusInfo_group"
  ::= { statusInformationGroup 2 }


  accessPointMACAddress OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The MAC address of the Access Point (BSS identifier)
      with which the radio should Connected or Associated.
      @GET-FUNC=get_statusInfo_group"
  ::= { statusInformationGroup 3 }
        

  currentTransmissionRate OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The transmit bit rates operated, corresponding to data rates
      from 1 Mb/s to 54 Mb/s.
      @GET-FUNC=get_statusInfo_group"
  ::= { statusInformationGroup 4 }
   


  currentIPAddress OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION  
      "The IP address of this device used over its Ethernet
      interface in Routing mode or Bridge interface in Bridgeing mode.
      @GET-FUNC=get_statusInfo_group"
  ::= { statusInformationGroup 5 }
  
  
  currentTXPower OBJECT-TYPE
    SYNTAX INTEGER  
            {
              -- Transmit Power Level
              high (1),
              medium (2),
              low (3)
            }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION  
      "The Transmit Power of this device used.
      @GET-FUNC=get_statusInfo_group
      @SET-FUNC=set_statusInfo_group"
  ::= { statusInformationGroup 6 }
	



-- [ countersGroup ] [2] --
  
  receivedPacketsGoodCount OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
      "The number of good packets received on the radio interface, 
      including unicast, broadcast and multicast packets.
      @GET-FUNC=get_counters_group"
  ::= { countersGroup 1 }
                
  receivedPacketsBadCount OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
      "The number of inbound bad packets of the radio interface
      were chosen to be discarded even though no errors had been 
      detected to prevent their being received. One possible reason 
      for discarding such a packet could be to free up buffer space. 
      Another reason would be exceeding their maximum time-to-live.
      @GET-FUNC=get_counters_group"
  ::= { countersGroup 2 }    
    
    
  sendPacketsGoodCount OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
      "The number of good packets transmitted on the radio interface, 
      including unicast, broadcast and multicast packets.
      @GET-FUNC=get_counters_group"
  ::= { countersGroup 3 }

                
  sendPacketsBadCount OBJECT-TYPE
    SYNTAX Counter
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "The number of outbound bad packets of the radio interface
      were chosen to be discarded even though no errors had been 
      detected to prevent their being transmitted. One possible reason 
      for discarding such a packet could be to free up buffer space. 
      Another reason would be exceeding their maximum time-to-live.
      @GET-FUNC=get_counters_group"
  ::= { countersGroup 4 }    


-- [ privacySettingsGroup ] [3] --

  wepEnabled OBJECT-TYPE
    SYNTAX INTEGER
           {
              disable(1),
              enable(2)
           }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "When this attribute is enable, it shall indicate that the IEEE
      802.11 WEP mechanism is used for transmitting frames of type
      Data. The default value of this attribute shall be disable.
      @GET-FUNC=get_privacy_group
      @SET-FUNC=set_privacy_group"
  ::= { privacySettingsGroup 1 }
    

  wepKeyLength  OBJECT-TYPE
    SYNTAX INTEGER
           {
             key-64bits(1),
             key-128bits(2)
           }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "The length of WEP key that is used for transmitting and received 
      frames of type Data. The value of 0 denotes WEP64bit Hex. Key;
      1 stands for WEP128bit Hex. Key
      @GET-FUNC=get_privacy_group
      @SET-FUNC=set_privacy_group"
  ::= { privacySettingsGroup 2 }

    
  wepKeyNumber  OBJECT-TYPE
    SYNTAX INTEGER 
	   {
	   	wep-key1(1),
	   	wep-key2(2),
	   	wep-key3(3),
	   	wep-key4(4)
	   }    		
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "This attribute shall indicate the use of the first,
      second, third, or fourth element of the WEPDefaultKeys
      array when set to values of 1, 2, 3, or 4.  The
      default value of this attribute shall be 0.
      @GET-FUNC=get_privacy_group
      @SET-FUNC=set_privacy_group"
      -- REFERENCE "IEEE Std 802.11-1997, 8.3.2"
  ::= { privacySettingsGroup 3 }
    
    
  wepKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "A WEP secret key value. 10 Hex. Keys for WEP 64Bits/26 Hex. Keys for WEP128Bits.
      @GET-FUNC=get_privacy_group
      @SET-FUNC=set_privacy_group"
  ::= { privacySettingsGroup 4 }


--  macAddressFilter  OBJECT-TYPE
--    SYNTAX INTEGER
--           {
--             disable-0(1),
--             enable-1(2)
--          }
--    ACCESS read-write
--    STATUS mandatory
--    DESCRIPTION
--      "If you choose 'disable(1)',will not be able to
--      connect to your Access Point.If you choose 
--      'enable(2)', only those clients whose 
--      wireless MAC addresses are in the access control 
--      list will be able to connect to your Access Point.
--      @GET-FUNC=get_privacy_group
--      @SET-FUNC=set_privacy_group"
--  ::= { privacySettingsGroup 5 }    

        

-- [ systemSettingsGroup ] [4] --
    
  operationMode OBJECT-TYPE
    SYNTAX  INTEGER 
            {
              bridge(1),
              ap-wds(2)
            }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "This defines the type of role of a wireless device.  
      The device types are:
      Bridge(1)         -- Bridge 
      AP+WDS(2)         -- Access Point+WDS
      @GET-FUNC=get_system_group"
  ::= { systemSettingsGroup 1 }
            

  ipAddress OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION  
      "The IP address of this device used over its Ethernet
      interface in AP mode. The IP address must NOT to set 
      [x.x.x.0] or [x,x.x.255].
      @GET-FUNC=get_system_group
      @SET-FUNC=set_system_group"
  ::= { systemSettingsGroup 2 }

    
  subnetMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
      "The IP Network mask used by the IP entity when accessing
      devices through any of its Ethernet interface in Routing mode 
      or Bridge interface in Bridgeing mode.
      The value of subnet mask must set to 0, 128, 192, 224, 240, 248, 252, 254, 255.
      @GET-FUNC=get_system_group
      @SET-FUNC=set_system_group"
  ::= { systemSettingsGroup 3 } 


  ipGateway OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION  
      "The IP address of this device's Gateway.
      The value of IP Gateway must NOT set to 0 or 255
      @GET-FUNC=get_system_group
      @SET-FUNC=set_system_group"
  ::= { systemSettingsGroup 4 }           


  deviceName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "The description name of this device.
      The deviceName length is limit between
      1~32 characters.
      @GET-FUNC=get_system_group
      @SET-FUNC=set_system_group"
  ::= { systemSettingsGroup 5 }

  saveReboot OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "Save and Reboot System. 
      The save Reboot value must set to 1 when you enable this function.
      @GET-FUNC=get_system_group
      @SET-FUNC=set_system_group"
  ::= { systemSettingsGroup 6 }
  
-- [ webAdministratorSettingsGroup ] [5] --

  userName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "User Name assigned to the system for use when
      authenticating with Web browser. The username length 
      limit is 15 characters.
      @GET-FUNC=get_webAdmin_group
      @SET-FUNC=set_webAdmin_group"
  ::= { webAdministratorSettingsGroup 1}

  password OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
     "User Password assigned to the system
      for use when authenticating with Web browser. The 
      password length limit is 15 characters.
      @GET-FUNC=get_webAdmin_group
      @SET-FUNC=set_webAdmin_group"
  ::= { webAdministratorSettingsGroup 2}
  
-- [ dhcpSettingsGroup ] [6] --

  dhcpEnabled OBJECT-TYPE
    SYNTAX INTEGER
           {
              disable(1),
              enable(2)
           }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "When this attribute is enable, it shall indicate 
      that the DHCP mechanism is used. The default value 
      of this attribute shall be disable.
      @GET-FUNC=get_dhcp_group
      @SET-FUNC=set_dhcp_group"
  ::= { dhcpSettingsGroup 1 }

  dhcpLeaseTimes OBJECT-TYPE
    SYNTAX INTEGER (1..65535)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "The value indicates how many minutes for DHCP
       lease time. The value should be set between 1
       and 65535.
      @GET-FUNC=get_dhcp_group
      @SET-FUNC=set_dhcp_group"
  ::= { dhcpSettingsGroup 2 }
  
  dhcpIPAddressFrom OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION  
      "To set DHCP IP address range between dhcpIPAddressFrom
      and dhcpIPAddressTo. The IP address must NOT to set 
      [x.x.x.0] or [x,x.x.255].And the DHCP address range
      must be in the LAN subnet.
      @GET-FUNC=get_dhcp_group
      @SET-FUNC=set_dhcp_group"
  ::= { dhcpSettingsGroup 3 }
  
  dhcpIPAddressTo OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION  
      "To set DHCP IP address range between dhcpIPAddressFrom
      and dhcpIPAddressTo. The IP address must NOT to set 
      [x.x.x.0] or [x,x.x.255].And the DHCP address range
      must be in the LAN subnet.
      @GET-FUNC=get_dhcp_group
      @SET-FUNC=set_dhcp_group"
  ::= { dhcpSettingsGroup 4 }
  
-- [ wdsSettingsGroup ] [6] --

  wdsEnabled OBJECT-TYPE
    SYNTAX INTEGER
           {
              disable(1),
              enable(2)
           }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "When this attribute is enable, it shall indicate 
      that the WDS mechanism is used. The default value 
      of this attribute shall be disable.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 1 }
  
  wdsAPMACAddress1 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 2 }
  
  wdsAPMACAddress2 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 3 }
  
  wdsAPMACAddress3 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 4 }
  
  wdsAPMACAddress4 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 5 }
  
  wdsAPMACAddress5 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 6 }
  
  wdsAPMACAddress6 OBJECT-TYPE
    SYNTAX PhysAddress 
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
      "To set the MAC address of the Access Point for WDS.
      The format to set as 'ABCDEF123456'.
      And Leave blank to disable WDS for that slot.
      @GET-FUNC=get_wds_group
      @SET-FUNC=set_wds_group"
  ::= { wdsSettingsGroup 7 }
  
  wdsKeyUsed OBJECT-TYPE
    SYNTAX INTEGER
           {
              none(1),
              wep(2)
           }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "WDS only supports None or WEP security mode.
      When this attribute is wep, it shall indicate that the IEEE
      802.11 WEP mechanism is used for transmitting frames of type
      Data. The default value of this attribute shall be none.
      @GET-FUNC=get_wds_group"
  ::= { wdsSettingsGroup 8 }
  
  wdsKeyType  OBJECT-TYPE
    SYNTAX INTEGER
           {
             none(1),
             key-64bits(2),
             key-128bits(3)
           }
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
      "WDS only supports None or WEP security mode.
      The length of WEP key that is used for transmitting and received 
      frames of type Data. The value of 2 denotes WEP64bit Hex. Key;
      3 stands for WEP128bit Hex. Key
      @GET-FUNC=get_wds_group"
  ::= { wdsSettingsGroup 9 }
  
-- SENAO-RFC1213-MIB DEFINITIONS --
-- the IP group

-- Implementation of the IP group is mandatory for all
-- systems.


ipInReceives OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of input datagrams received from
            interfaces, including those received in error.
            @GET-FUNC=get_ip_row"
    ::= { ip 1 }


ipForwDatagrams OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The number of input datagrams for which this
            entity was not their final IP destination, as a
            result of which an attempt was made to find a
            route to forward them to that final destination.
            In entities which do not act as IP Gateways, this
            counter will include only those packets which were
            Source-Routed via this entity, and the Source-
            Route option processing was successful.
            @GET-FUNC=get_ip_row"
    ::= { ip 2 }


-- the ICMP group

-- Implementation of the ICMP group is mandatory for all
-- systems.

icmpInMsgs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of ICMP messages which the
            entity received.  Note that this counter includes
            all those counted by icmpInErrors.
            @GET-FUNC=get_icmp_row"
    ::= { icmp 1 }



icmpOutMsgs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of ICMP messages which this
            entity attempted to send.  Note that this counter
            includes all those counted by icmpOutErrors.
            @GET-FUNC=get_icmp_row"
    ::= { icmp 2 }


-- the TCP group

-- Implementation of the TCP group is mandatory for all
-- systems that implement the TCP.

-- Note that instances of object types that represent
-- information about a particular TCP connection are
-- transient; they persist only as long as the connection
-- in question.


tcpInSegs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of segments received, including
            those received in error.  This count includes
            segments received on currently established
            connections.
            @GET-FUNC=get_tcp_row"
    ::= { tcp 1 }

tcpOutSegs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of segments sent, including
            those on current connections but excluding those
            containing only retransmitted octets.
            @GET-FUNC=get_tcp_row"
    ::= { tcp 2 }
    

-- the UDP group

-- Implementation of the UDP group is mandatory for all
-- systems which implement the UDP.

udpInDatagrams OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of UDP datagrams delivered to
            UDP users.
            @GET-FUNC=get_udp_row"
    ::= { udp 1 }

udpOutDatagrams OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
            "The total number of UDP datagrams sent from this
            entity.
            @GET-FUNC=get_udp_row"
    ::= { udp 2 }
END
