wlan-ap-Telecominfraproject/feeds/rtkmipsel/rtk_app/src/apmib.h
John Crispin 34138032a7 rtkmipsel: add target support
Signed-off-by: John Crispin <john@phrozen.org>
2022-02-04 08:06:06 +01:00

3224 lines
104 KiB
C
Executable File

/*
* Header file of AP mib
* Authors: David Hsu <davidhsu@realtek.com.tw>
*
* $Id: apmib.h,v 1.54 2009/09/15 02:12:24 bradhuang Exp $
*
*/
#ifndef INCLUDE_APMIB_H
#define INCLUDE_APMIB_H
/* Forrest, 2007.11.07.
* If you want to let APMIB adopt shared memory mechanism, define it to 1.
* Or define it to 0 will go back to original local copy mechanism.
* Note:
* 1. I only use shared memory for HW Configuration (pHwSetting), Default
* Configuration (pMibDef) and Current Configuration (pMib). There is
* no shared memory for each linkchain now.
* 2. Because uClibc does not support POSIX inter-process semaphore, I have
* to use SYSTEM V semaphore and shared memory. So if you want to adopt
* shared memory mechanism, you must go to turn on CONFIG_SYSVIPC
* kernel config to support it.
*/
#ifdef CONFIG_APMIB_SHARED
#define CONFIG_APMIB_SHARED_MEMORY 1
#else
#define CONFIG_APMIB_SHARED_MEMORY 0
#endif
// added by rock /////////////////////////////////////////
#ifdef VOIP_SUPPORT
#include "voip_flash.h"
#include "voip_flash_mib.h"
#endif
#if defined(CONFIG_DOMAIN_NAME_QUERY_SUPPORT)
//#define LOGDEBUG_ENABLED
#endif
#define MBSSID
//hf
//#define CONFIG_RTL_BT_CLIENT
#define COMPRESS_MIB_SETTING
#define MIB_TLV
#ifdef MIB_TLV
#define MIB_TABLE_LIST 0x8000
#else
#define MIB_TABLE_LIST 0x0
#endif
//#ifdef HOME_GATEWAY
//#define GW_QOS_ENGINE
//#endif
#ifdef ENABLE_QOS // thru makefile
#ifndef QOS_BY_BANDWIDTH
#define GW_QOS_ENGINE
#endif
#endif
#ifdef VOIP_SUPPORT
#ifndef HEADER_LEN_INT
#define HEADER_LEN_INT
#endif
#endif
#if defined(CONFIG_RTL_92D_SUPPORT)||defined(HAVE_RTK_DUAL_BAND_SUPPORT)
#define NUM_WLAN_INTERFACE 2 // number of wlan interface supported
#else
#define NUM_WLAN_INTERFACE 1 // number of wlan interface supported
#endif
#if defined(CONFIG_RTL_819X)
#define NUM_WLAN_MULTIPLE_SSID 8 // number of wlan ssid support
#else
//!CONFIG_RTL_8196B => rtl8651c+rtl8190
#define NUM_WLAN_MULTIPLE_SSID 5 // number of wlan ssid support
#endif
#ifdef MBSSID
#define NUM_VWLAN 4 // number of virtual wlan interface supported
#else
#define NUM_VWLAN 0
#endif
#if defined(UNIVERSAL_REPEATER) && defined(CONFIG_RTL_ULINKER)
#define NUM_VWLAN_INTERFACE NUM_VWLAN+4 //+4 is ulinker_ap, ulinker_cl, ulinker_rpt, repeater(vxd)
#elif defined(CONFIG_RTL_ULINKER)
#define NUM_VWLAN_INTERFACE NUM_VWLAN+2 //+2 is ulinker_ap, ulinker_cl
#elif defined(UNIVERSAL_REPEATER)
#define NUM_VWLAN_INTERFACE NUM_VWLAN+1
#else
#define NUM_VWLAN_INTERFACE NUM_VWLAN
#endif
#if defined(UNIVERSAL_REPEATER) && defined(CONFIG_RTL_ULINKER)
#define ULINKER_AP_MIB (NUM_VWLAN_INTERFACE-3)
#define ULINKER_CL_MIB (NUM_VWLAN_INTERFACE-2)
#define ULINKER_RPT_MIB (NUM_VWLAN_INTERFACE-1)
#elif defined(CONFIG_RTL_ULINKER)
#define ULINKER_AP_MIB (NUM_VWLAN_INTERFACE-1)
#define ULINKER_CL_MIB (NUM_VWLAN_INTERFACE)
#endif
// WLAN MIB id
#define MIB_WLAN_SSID 1
#define MIB_WLAN_CHANNEL 2
#define MIB_WLAN_WEP 3
#define MIB_WLAN_WEP64_KEY1 4
#define MIB_WLAN_WEP64_KEY2 5
#define MIB_WLAN_WEP64_KEY3 6
#define MIB_WLAN_WEP64_KEY4 7
#define MIB_WLAN_WEP128_KEY1 8
#define MIB_WLAN_WEP128_KEY2 9
#define MIB_WLAN_WEP128_KEY3 10
#define MIB_WLAN_WEP128_KEY4 11
#define MIB_WLAN_WEP_KEY_TYPE 12
#define MIB_WLAN_WEP_DEFAULT_KEY 13
#define MIB_WLAN_FRAG_THRESHOLD 14
#define MIB_WLAN_SUPPORTED_RATES 15
#define MIB_WLAN_BEACON_INTERVAL 16
#define MIB_WLAN_PREAMBLE_TYPE 17
#define MIB_WLAN_BASIC_RATES 18
#define MIB_WLAN_RTS_THRESHOLD 19
#define MIB_WLAN_AUTH_TYPE 20
#define MIB_WLAN_HIDDEN_SSID 21
#define MIB_WLAN_WLAN_DISABLED 22
#define MIB_ELAN_MAC_ADDR 23
#define MIB_WLAN_WLAN_MAC_ADDR 24
#define MIB_WLAN_ENCRYPT 25
#define MIB_WLAN_ENABLE_SUPP_NONWPA 26
#define MIB_WLAN_SUPP_NONWPA 27
#define MIB_WLAN_WPA_AUTH 28
#define MIB_WLAN_WPA_CIPHER_SUITE 29
#define MIB_WLAN_WPA_PSK 30
#define MIB_WLAN_WPA_GROUP_REKEY_TIME 31
#define MIB_WLAN_RS_IP 32
#define MIB_WLAN_RS_PORT 33
#define MIB_WLAN_RS_PASSWORD 34
#define MIB_WLAN_ENABLE_1X 35
#define MIB_WLAN_PSK_FORMAT 36
#define MIB_WLAN_WPA2_PRE_AUTH 37
#define MIB_WLAN_WPA2_CIPHER_SUITE 38
#define MIB_WLAN_ACCOUNT_RS_ENABLED 39
#define MIB_WLAN_ACCOUNT_RS_IP 40
#define MIB_WLAN_ACCOUNT_RS_PORT 41
#define MIB_WLAN_ACCOUNT_RS_PASSWORD 42
#define MIB_WLAN_ACCOUNT_RS_UPDATE_ENABLED 43
#define MIB_WLAN_ACCOUNT_RS_UPDATE_DELAY 44
#define MIB_WLAN_MAC_AUTH_ENABLED 45
#define MIB_WLAN_RS_MAXRETRY 46
#define MIB_WLAN_RS_INTERVAL_TIME 47
#define MIB_WLAN_ACCOUNT_RS_MAXRETRY 48
#define MIB_WLAN_ACCOUNT_RS_INTERVAL_TIME 49
#define MIB_WLAN_INACTIVITY_TIME 50
#define MIB_WLAN_RATE_ADAPTIVE_ENABLED 51
#define MIB_WLAN_MACAC_ENABLED 52
#define MIB_WLAN_MACAC_NUM 53
#define MIB_WLAN_MACAC_ADDR ((MIB_WLAN_MACAC_NUM+1)|MIB_TABLE_LIST)
#define MIB_WLAN_AC_ADDR_ADD ((MIB_WLAN_MACAC_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_WLAN_AC_ADDR_DEL ((MIB_WLAN_MACAC_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_WLAN_AC_ADDR_DELALL ((MIB_WLAN_MACAC_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_WLAN_DTIM_PERIOD 58
#define MIB_WLAN_MODE 59
#define MIB_WLAN_NETWORK_TYPE 60
#define MIB_WLAN_DEFAULT_SSID 61 // used while configured as Ad-hoc and no any other Ad-hoc could be joined
// it will use this default SSID to start BSS
#define MIB_WLAN_IAPP_DISABLED 62
#define MIB_WLAN_WDS_ENABLED 63
#define MIB_WLAN_WDS_NUM 64
#define MIB_WLAN_WDS ((MIB_WLAN_WDS_NUM+1)|MIB_TABLE_LIST)
#define MIB_WLAN_WDS_ADD ((MIB_WLAN_WDS_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_WLAN_WDS_DEL ((MIB_WLAN_WDS_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_WLAN_WDS_DELALL ((MIB_WLAN_WDS_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_WLAN_WDS_ENCRYPT 69
#define MIB_WLAN_WDS_WEP_FORMAT 70
#define MIB_WLAN_WDS_WEP_KEY 71
#define MIB_WLAN_WDS_PSK_FORMAT 72
#define MIB_WLAN_WDS_PSK 73
#define MIB_WLAN_BAND 74
#define MIB_WLAN_FIX_RATE 75
#define MIB_WLAN_BLOCK_RELAY 76
#define MIB_WLAN_MACCLONE_ENABLED 77
#define MIB_WLAN_PROTECTION_DISABLED 78
#ifdef TLS_CLIENT
//sc_yang for client mode TLS
#define MIB_CERTROOT_TBL_NUM 79
#define MIB_CERTROOT_TBL ((MIB_CERTROOT_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_CERTROOT_ADD ((MIB_CERTROOT_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_CERTROOT_DEL ((MIB_CERTROOT_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_CERTROOT_DELALL ((MIB_CERTROOT_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_CERTUSER_TBL_NUM 84
#define MIB_CERTUSER_TBL ((MIB_CERTUSER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_CERTUSER_ADD ((MIB_CERTUSER_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_CERTUSER_DEL ((MIB_CERTUSER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_CERTUSER_DELALL ((MIB_CERTUSER_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#endif
// for WMM
#define MIB_WLAN_WMM_ENABLED 89
#ifdef WLAN_EASY_CONFIG
#define MIB_WLAN_EASYCFG_ENABLED 90
#define MIB_WLAN_EASYCFG_MODE 91
#define MIB_WLAN_EASYCFG_SSID 92
#define MIB_WLAN_EASYCFG_KEY 93
#define MIB_WLAN_EASYCFG_ALG_REQ 94
#define MIB_WLAN_EASYCFG_ALG_SUPP 95
#define MIB_WLAN_EASYCFG_DIGEST 96
#define MIB_WLAN_EASYCFG_ROLE 97
#define MIB_WLAN_EASYCFG_SCAN_SSID 98
#define MIB_WLAN_EASYCFG_WLAN_MODE 99
#endif // WLAN_EASY_CONFIG
#ifdef MIB_TLV
#define MIB_ROOT (100|MIB_TABLE_LIST)
#define MIB_WLAN_ROOT (101|MIB_TABLE_LIST)
#else //etop modify
#define MIB_ROOT (100|MIB_TABLE_LIST)
#define MIB_WLAN_ROOT (101|MIB_TABLE_LIST)
#endif
#if defined(CONFIG_RTL_8198_AP_ROOT) || defined(CONFIG_RTL_8197D_AP)
#define MIB_NTP_ENABLED 151
#define MIB_NTP_SERVER_ID 152
#define MIB_NTP_TIMEZONE 153
#define MIB_NTP_SERVER_IP1 154
#define MIB_NTP_SERVER_IP2 155
#endif
#define MIB_WAN_MAC_ADDR 100
#define MIB_WAN_IP_ADDR 101
#define MIB_WAN_SUBNET_MASK 102
#define MIB_WAN_DEFAULT_GATEWAY 103
#define MIB_WAN_DHCP 104
#define MIB_DNS_MODE 105
#define MIB_PPP_USER_NAME 106
#define MIB_PPP_PASSWORD 107
#define MIB_PPP_IDLE_TIME 108
#define MIB_PPP_CONNECT_TYPE 109
#ifdef HOME_GATEWAY
#define MIB_PORTFW_ENABLED 110
#define MIB_PORTFW_TBL_NUM 111
#define MIB_PORTFW_TBL ((MIB_PORTFW_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_PORTFW_ADD ((MIB_PORTFW_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_PORTFW_DEL ((MIB_PORTFW_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_PORTFW_MOD ((MIB_PORTFW_TBL_NUM+3)|MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_PORTFW_DELALL ((MIB_PORTFW_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_IPFILTER_ENABLED 116
#define MIB_IPFILTER_TBL_NUM 117
#define MIB_IPFILTER_TBL ((MIB_IPFILTER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_IPFILTER_ADD ((MIB_IPFILTER_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_IPFILTER_DEL ((MIB_IPFILTER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_IPFILTER_DELALL ((MIB_IPFILTER_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_MACFILTER_ENABLED 122
#define MIB_MACFILTER_TBL_NUM 123
#define MIB_MACFILTER_TBL ((MIB_MACFILTER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_MACFILTER_ADD ((MIB_MACFILTER_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_MACFILTER_DEL ((MIB_MACFILTER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_MACFILTER_DELALL ((MIB_MACFILTER_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_PORTFILTER_ENABLED 128
#define MIB_PORTFILTER_TBL_NUM 129
#define MIB_PORTFILTER_TBL ((MIB_PORTFILTER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_PORTFILTER_ADD ((MIB_PORTFILTER_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_PORTFILTER_DEL ((MIB_PORTFILTER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_PORTFILTER_DELALL ((MIB_PORTFILTER_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_TRIGGERPORT_ENABLED 134
#define MIB_TRIGGERPORT_TBL_NUM 135
#define MIB_TRIGGERPORT_TBL ((MIB_TRIGGERPORT_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_TRIGGERPORT_ADD ((MIB_TRIGGERPORT_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_TRIGGERPORT_DEL ((MIB_TRIGGERPORT_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_TRIGGERPORT_DELALL ((MIB_TRIGGERPORT_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_DMZ_ENABLED 140
#define MIB_DMZ_HOST 141
#define MIB_UPNP_ENABLED 142
#define MIB_UPNP_IGD_NAME 143
#endif //#ifdef HOME_GATEWAY
#define MIB_PPP_MTU_SIZE 144
#define MIB_PPTP_IP_ADDR 145
#define MIB_PPTP_SUBNET_MASK 146
#define MIB_PPTP_SERVER_IP_ADDR 147
#define MIB_PPTP_USER_NAME 148
#define MIB_PPTP_PASSWORD 149
#define MIB_PPTP_MTU_SIZE 150
#define MIB_NTP_ENABLED 151
#define MIB_NTP_SERVER_ID 152
#define MIB_NTP_TIMEZONE 153
#define MIB_NTP_SERVER_IP1 154
#define MIB_NTP_SERVER_IP2 155
#define MIB_PPTP_SECURITY_ENABLED 156
#define MIB_FIXED_IP_MTU_SIZE 157
#define MIB_DHCP_MTU_SIZE 158
#define MIB_PPTP_MPPC_ENABLED 159
#ifdef HOME_GATEWAY
#ifdef VPN_SUPPORT
#define MIB_IPSECTUNNEL_ENABLED 160
#define MIB_IPSECTUNNEL_TBL_NUM 161
#define MIB_IPSECTUNNEL_TBL ((MIB_IPSECTUNNEL_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_IPSECTUNNEL_ADD ((MIB_IPSECTUNNEL_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_IPSECTUNNEL_DEL ((MIB_IPSECTUNNEL_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_IPSECTUNNEL_DELALL ((MIB_IPSECTUNNEL_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_IPSEC_NATT_ENABLED 167
#define MIB_IPSEC_RSA_FILE 168
#endif
#endif // HOME_GATEWAY
#define MIB_IP_ADDR 170
#define MIB_SUBNET_MASK 171
#define MIB_DEFAULT_GATEWAY 172
#define MIB_DHCP 173
#define MIB_DHCP_CLIENT_START 174
#define MIB_DHCP_CLIENT_END 175
#define MIB_DNS1 176
#define MIB_DNS2 177
#define MIB_DNS3 178
#define MIB_STP_ENABLED 179
#ifdef SUPER_NAME_SUPPORT
#define MIB_SUPER_NAME 180
#define MIB_SUPER_PASSWORD 181
#endif
#define MIB_USER_NAME 182
#define MIB_USER_PASSWORD 183
#define MIB_SCRLOG_ENABLED 184
#define MIB_AUTO_DISCOVERY_ENABLED 185
#define MIB_DEVICE_NAME 186
#ifdef HOME_GATEWAY
#define MIB_DDNS_ENABLED 187
#define MIB_DDNS_TYPE 188
#define MIB_DDNS_DOMAIN_NAME 189
#define MIB_DDNS_USER 190
#define MIB_DDNS_PASSWORD 191
#endif
#define MIB_OP_MODE 192
#define MIB_WISP_WAN_ID 193
#ifdef HOME_GATEWAY
#define MIB_WEB_WAN_ACCESS_ENABLED 194
#define MIB_PING_WAN_ACCESS_ENABLED 195
#define MIB_HOST_NAME 197
#endif
#define MIB_DOMAIN_NAME 198
#ifdef MIB_TLV
//#define MIB_TABLE_LIST 0x8000
#define MIB_ID_MASK (0x8000-1)
#define MIB_HW_ROOT (200|MIB_TABLE_LIST)
#define MIB_HW_WLAN_ROOT (201|MIB_TABLE_LIST)
#define MIB_ADD_TBL_ENTRY 0x10000
#define MIB_DEL_TBL_ENTRY 0x20000
#define MIB_DELALL_TBL_ENTRY 0x40000
#define MIB_MOD_TBL_ENTRY 0x100000
#define MIB_WLAN_TBL 0x80000
#else //etop modify :for config
//#define MIB_TABLE_LIST 0x8000
#define MIB_ID_MASK (0x8000-1)
#define MIB_HW_ROOT (200|MIB_TABLE_LIST)
#define MIB_HW_WLAN_ROOT (201|MIB_TABLE_LIST)
#define MIB_ADD_TBL_ENTRY 0x10000
#define MIB_DEL_TBL_ENTRY 0x20000
#define MIB_MOD_TBL_ENTRY 0x100000
#define MIB_DELALL_TBL_ENTRY 0x40000
#define MIB_WLAN_TBL 0x80000
#endif // #ifdef MIB_TLV
// Hardware setting MIB
#define MIB_HW_BOARD_VER 200
#define MIB_HW_NIC0_ADDR 201
#define MIB_HW_NIC1_ADDR 202
#define MIB_HW_WLAN_ADDR 203
#define MIB_HW_REG_DOMAIN 204
#define MIB_HW_RF_TYPE 205
#define MIB_HW_TX_POWER_CCK 206
#define MIB_HW_TX_POWER_OFDM 207
#define MIB_HW_ANT_DIVERSITY 208
#define MIB_HW_TX_ANT 209
#define MIB_HW_CCA_MODE 210
#define MIB_HW_PHY_TYPE 211
#define MIB_HW_LED_TYPE 212
#define MIB_HW_INIT_GAIN 213
#ifdef TLS_CLIENT
#define MIB_ROOT_IDX 214
#define MIB_USER_IDX 215
#endif
#ifdef ROUTE_SUPPORT
#define MIB_STATICROUTE_ENABLED 216
#define MIB_STATICROUTE_TBL_NUM 217
#define MIB_STATICROUTE_TBL ((MIB_STATICROUTE_TBL_NUM+1)|MIB_TABLE_LIST) /*218*/
#define MIB_STATICROUTE_ADD ((MIB_STATICROUTE_TBL_NUM+2) | MIB_ADD_TBL_ENTRY)
#define MIB_STATICROUTE_DEL ((MIB_STATICROUTE_TBL_NUM+3) | MIB_DEL_TBL_ENTRY)
#define MIB_STATICROUTE_MOD ((MIB_STATICROUTE_TBL_NUM+3) | MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_STATICROUTE_DELALL ((MIB_STATICROUTE_TBL_NUM+4) | MIB_DELALL_TBL_ENTRY)/*221*/
#define MIB_RIP_ENABLED 222
#define MIB_RIP_LAN_TX 223
#define MIB_RIP_LAN_RX 224
#define MIB_RIP_WAN_TX 225
#define MIB_RIP_WAN_RX 226
#ifdef RIP6_SUPPORT
#define MIB_RIP6_ENABLED 222+2254
#endif
#endif
#define MIB_REMOTELOG_ENABLED 227
#define MIB_REMOTELOG_SERVER 228
#ifdef HOME_GATEWAY
#ifdef DOS_SUPPORT
#define MIB_DOS_ENABLED 229
#define MIB_DOS_SYSSYN_FLOOD 230
#define MIB_DOS_SYSFIN_FLOOD 231
#define MIB_DOS_SYSUDP_FLOOD 232
#define MIB_DOS_SYSICMP_FLOOD 233
#define MIB_DOS_PIPSYN_FLOOD 234
#define MIB_DOS_PIPFIN_FLOOD 235
#define MIB_DOS_PIPUDP_FLOOD 236
#define MIB_DOS_PIPICMP_FLOOD 237
#define MIB_DOS_BLOCK_TIME 238
#endif
#define MIB_URLFILTER_ENABLED 239
#define MIB_URLFILTER_TBL_NUM 240
#define MIB_URLFILTER_TBL ((MIB_URLFILTER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_URLFILTER_ADD ((MIB_URLFILTER_TBL_NUM+2) | MIB_ADD_TBL_ENTRY)
#define MIB_URLFILTER_DEL ((MIB_URLFILTER_TBL_NUM+3) | MIB_DEL_TBL_ENTRY)
#define MIB_URLFILTER_DELALL ((MIB_URLFILTER_TBL_NUM+4)| MIB_DELALL_TBL_ENTRY)
//#define MIB_URLFILTER_MODE 255
#define MIB_VPN_PASSTHRU_IPSEC_ENABLED 245
#define MIB_VPN_PASSTHRU_PPTP_ENABLED 246
#define MIB_VPN_PASSTHRU_L2TP_ENABLED 247
#define MIB_CUSTOM_PASSTHRU_ENABLED 386
#endif
//#ifdef SNMP_SUPPORT Keith remove
#define MIB_SNMP_RO_COMMUNITY 248
#define MIB_SNMP_RW_COMMUNITY 249
//#endif Keith remove
#ifdef UNIVERSAL_REPEATER
#define MIB_REPEATER_ENABLED1 250
#define MIB_REPEATER_SSID1 251
#define MIB_REPEATER_ENABLED2 252
#define MIB_REPEATER_SSID2 253
#endif
// added by rock /////////////////////////////////////////
#ifdef VOIP_SUPPORT
#define MIB_VOIP_CFG 254
#endif // VOIP_SUPPORT
#define MIB_URLFILTER_MODE 255
#define MIB_WIFI_SPECIFIC 260
#define MIB_PPP_SERVICE_NAME 261
#define MIB_WLAN_TURBO_MODE 262
#define MIB_WLAN_RFPOWER_SCALE 263
#if defined(WIFI_SIMPLE_CONFIG) || defined(HAVE_WIFI_SIMPLE_CONFIG)
#define MIB_WLAN_WSC_DISABLE 270
#define MIB_WLAN_WSC_METHOD 271
#define MIB_WLAN_WSC_CONFIGURED 272
#define MIB_HW_WSC_PIN 273
#define MIB_WLAN_WSC_AUTH 274
#define MIB_WLAN_WSC_ENC 275
#define MIB_WLAN_WSC_MANUAL_ENABLED 276
#define MIB_WLAN_WSC_PSK 277
#define MIB_WLAN_WSC_SSID 278
#define MIB_WLAN_WSC_UPNP_ENABLED 279
#define MIB_WLAN_WSC_REGISTRAR_ENABLED 280
#define MIB_WLAN_WSC_CONFIGBYEXTREG 281
#endif
//Brad addd
#define MIB_DAYLIGHT_SAVE 282
#define MIB_IGMP_PROXY_DISABLED 283
//Brad add for 11N
#define MIB_WLAN_CHANNEL_BONDING 284
#define MIB_WLAN_CONTROL_SIDEBAND 285
#define MIB_WLAN_AGGREGATION 286
#define MIB_WLAN_SHORT_GI 287
//Brad define
#define MIB_WLAN_WEP64_KEY 288
#define MIB_WLAN_WEP128_KEY 289
#define MIB_HW_11N_XCAP 290
#define MIB_HW_11N_RXIMR 291
#define MIB_DHCPRSVDIP_ENABLED 292
#define MIB_DHCPRSVDIP_TBL_NUM 293
#define MIB_DHCPRSVDIP_TBL ((MIB_DHCPRSVDIP_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_DHCPRSVDIP_ADD ((MIB_DHCPRSVDIP_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_DHCPRSVDIP_DEL ((MIB_DHCPRSVDIP_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_DHCPRSVDIP_DELALL ((MIB_DHCPRSVDIP_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_HW_11N_LOFDMPWD 298
#define MIB_HW_11N_ANTPWD_B 299
#define MIB_HW_11N_ANTPWD_C 300
#define MIB_HW_11N_ANTPWD_D 301
#define MIB_HW_11N_THER_RFIC 302
#define MIB_HW_WLAN_ADDR1 303
#define MIB_HW_WLAN_ADDR2 304
#define MIB_HW_WLAN_ADDR3 305
#define MIB_HW_WLAN_ADDR4 306
// GW_QOS_ENGINE
#define MIB_QOS_ENABLED 307
#define MIB_QOS_AUTO_UPLINK_SPEED 308
#define MIB_QOS_MANUAL_UPLINK_SPEED 309
#define MIB_QOS_RULE_TBL_NUM 310
#define MIB_QOS_RULE_TBL ((MIB_QOS_RULE_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_QOS_ADD ((MIB_QOS_RULE_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_QOS_DEL ((MIB_QOS_RULE_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_QOS_DELALL ((MIB_QOS_RULE_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_WLAN_ACCESS 315
#define MIB_WLAN_PRIORITY 316
#define MIB_START_MP 317
#define MIB_SYSTIME_YEAR 321
#define MIB_SYSTIME_MON 322
#define MIB_SYSTIME_DAY 323
#define MIB_SYSTIME_HOUR 324
#define MIB_SYSTIME_MIN 325
#define MIB_SYSTIME_SEC 326
/* # keith: add l2tp support. 20080515 */
#define MIB_L2TP_IP_ADDR 331
#define MIB_L2TP_SUBNET_MASK 332
#define MIB_L2TP_SERVER_IP_ADDR 333
#define MIB_L2TP_USER_NAME 334
#define MIB_L2TP_PASSWORD 335
#define MIB_L2TP_MTU_SIZE 336
#define MIB_L2TP_CONNECTION_TYPE 337
#define MIB_L2TP_IDLE_TIME 338
// Patch for our router under another router to dial up l2tp
#define MIB_L2TP_DEFAULT_GW 339
// Patch for our router under another router to dial up pptp
#define MIB_PPTP_DEFAULT_GW 340
#define MIB_PPTP_WAN_IP_DYNAMIC 341
#ifdef CONFIG_GET_SERVER_IP_BY_DOMAIN
#define MIB_PPTP_SERVER_DOMAIN 342
#define MIB_PPTP_GET_SERV_BY_DOMAIN 343
#endif
#ifndef _PATH_PROCNET_DEV
#define _PATH_PROCNET_DEV "/proc/net/dev"
#endif
#ifndef _PATH_PROCNET_IFINET6
#define _PATH_PROCNET_IFINET6 "/proc/net/if_inet6"
#endif
#define MIB_HAME_LANG 16029
#ifdef CONFIG_IPV6
#ifdef CONFIG_IPV6_CE_ROUTER_SUPPORT
#define MIB_IPV6_ULA_ENABLE 350
#define MIB_IPV6_ULA_MODE 351
#define MIB_IPV6_ADDR_ULA_PARAM 352
#endif
#define MIB_IPV6_ID 370
#define MIB_IPV6_RADVD_PARAM (MIB_IPV6_ID)
#define MIB_IPV6_DNSV6_PARAM (MIB_IPV6_ID+1)
#define MIB_IPV6_DHCPV6S_PARAM (MIB_IPV6_ID+2)
#define MIB_IPV6_ADDR_PARAM (MIB_IPV6_ID+3)
#define MIB_IPV6_TUNNEL_PARAM (MIB_IPV6_ID+4)
#define MIB_IPV6_DHCPV6C_PARAM (MIB_IPV6_ID+5)
#define MIB_IPV6_ADDR6_PARAM (MIB_IPV6_ID+6)
#define MIB_IPV6_ADDR_LAN_PARAM (MIB_IPV6_ID+7)
#define MIB_IPV6_ADDR_WAN_PARAM (MIB_IPV6_ID+8)
#define MIB_IPV6_ADDR_GW_PARAM (MIB_IPV6_ID+9)
#define MIB_IPV6_ADDR_PFEFIX_PARAM (MIB_IPV6_ID+10)
#define MIB_IPV6_ADDR_DNS_PARAM (MIB_IPV6_ID+11)
#define MIB_IPV6_ADDR_DNS_SECONDARY 369
#define MIB_IPV6_ORIGIN_TYPE (MIB_IPV6_ID+12)
#define MIB_IPV6_LINK_TYPE (MIB_IPV6_ID+13)
#define MIB_IPV6_WAN_ENABLE (MIB_IPV6_ID+14)
#define MIB_IPV6_DNS_AUTO (MIB_IPV6_ID+15)
#define MIB_MLD_PROXY_DISABLED (MIB_IPV6_ID+16)
#define MIB_IPV6_DHCP_MODE (MIB_IPV6_ID+17)
#define MIB_IPV6_DHCP_PD_ENABLE (MIB_IPV6_ID+18)
#define MIB_IPV6_DHCP_RAPID_COMMIT_ENABLE (MIB_IPV6_ID+19)
#define MIB_IPV6_DHCPC_RAPID_COMMIT (MIB_IPV6_ID+20)
#ifdef TR181_SUPPORT
#define IPV6_DHCPC_SENDOPT_NUM 10
#define IPV6_DHCPC_RCVOPT_NUM 16
#define MIB_IPV6_DHCPC_REQUEST_ADDR (MIB_IPV6_ID+21)
#define MIB_IPV6_DHCPC_SUGGESTEDT1 (MIB_IPV6_ID+22)
#define MIB_IPV6_DHCPC_SUGGESTEDT2 (MIB_IPV6_ID+23)
#define MIB_IPV6_DHCPC_SENDOPT_TBL_NUM (MIB_IPV6_ID+25)
#define MIB_IPV6_DHCPC_SENDOPT_TBL ((MIB_IPV6_DHCPC_SENDOPT_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_IPV6_DHCPC_SENDOPT_MOD ((MIB_IPV6_DHCPC_SENDOPT_TBL_NUM+3) | MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_IPV6_DHCPC_SENDOPT_ENABLE (MIB_IPV6_ID+31)
#define MIB_IPV6_DHCPC_SENDOPT_TAG (MIB_IPV6_ID+32)
#define MIB_IPV6_DHCPC_SENDOPT_VALUE (MIB_IPV6_ID+33)
#define MIB_IPV6_DHCPC_IFACE (MIB_IPV6_ID+34)
#define MIB_IPV6_DHCPC_SENDOPT_INDEX (MIB_IPV6_ID+35)
#endif
typedef enum IPV6_ORIGIN_T_
{
IPV6_ORIGIN_DHCP =0,
IPV6_ORIGIN_STATIC =1,
IPV6_ORIGIN_NONE =3
} IPV6_ORIGIN_T;
typedef enum IPV6_LINKTYPE_T_
{
IPV6_LINKTYPE_IP=0,
IPV6_LINKTYPE_PPP=1
}IPV6_LINKTYPE_T;
typedef enum IPV6_DHCP_MODE_T_
{
IPV6_DHCP_STATELESS=0,
IPV6_DHCP_STATEFUL=1
}IPV6_DHCP_MODE_T;
#endif
#ifdef TR181_SUPPORT
/* add for Device.DNS. Device.DNS.Client. and Device.DNS.Client.Server.{i}. */
#define MIB_DNS_CLIENT_ENABLE 406
#ifdef CONFIG_IPV6
#define DNS_CLIENT_SERVER_NUM 10
#else
#define DNS_CLIENT_SERVER_NUM 6
#endif
#define MIB_DNS_CLIENT_SERVER_TBL_NUM 408
#define MIB_DNS_CLIENT_SERVER_TBL ((MIB_DNS_CLIENT_SERVER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_DNS_CLIENT_SERVER_MOD ((MIB_DNS_CLIENT_SERVER_TBL_NUM+3) | MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_DNS_CLIENT_SERVER_INDEX 414
#define MIB_DNS_CLIENT_SERVER_ENABLE 415
#define MIB_DNS_CLIENT_SERVER_STATUS 416
//#define MIB_DNS_CLIENT_SERVER_ALIAS MIB_IPV6_ID+47
#define MIB_DNS_CLIENT_SERVER_IPADDR 418
//#define MIB_DNS_CLIENT_SERVER_IF MIB_IPV6_ID+49
#define MIB_DNS_CLIENT_SERVER_TYPE 420
#endif
#ifdef CONFIG_RTL_8198C
#define MIB_IPV6_ADDR_AFTR_PARAM 421
#define MIB_DSLITE_MODE 422
#define MIB_IPV6_6RD_PREFIX_PARAM 423
#define MIB_IPV4_6RD_MASK_LEN 424
#define MIB_IPV4_6RD_BR_ADDR 425
#endif
// SNMP, Forrest added, 2007.10.25.
#ifdef CONFIG_SNMP
#define MIB_SNMP_ENABLED 435
#define MIB_SNMP_NAME 436
#define MIB_SNMP_LOCATION 437
#define MIB_SNMP_CONTACT 438
#define MIB_SNMP_RWCOMMUNITY 439
#define MIB_SNMP_ROCOMMUNITY 440
#define MIB_SNMP_TRAP_RECEIVER1 441
#define MIB_SNMP_TRAP_RECEIVER2 442
#define MIB_SNMP_TRAP_RECEIVER3 443
#endif
//### add by sen_liu 2011.3.29 TX Beamforming added to mib in 92D
#define MIB_WLAN_TX_BEAMFORMING 450
//### end
/*hf add for country str*/
#define MIB_WLAN_COUNTRY_STRING 451
/*end*/
#define MIB_WLAN_TX_RESTRICT 452
#define MIB_WLAN_RX_RESTRICT 453
/* # keith: add l2tp support. 20080515 */
#ifdef CONFIG_GET_SERVER_IP_BY_DOMAIN
#define MIB_L2TP_GET_SERV_BY_DOMAIN 499
#define MIB_L2TP_SERVER_DOMAIN 500
#endif
#define MIB_L2TP_WAN_IP_DYNAMIC 501
#define MIB_L2TP_GATEWAY 502
//SCHEDULE
#define MIB_WLAN_SCHEDULE_ENABLED 503
#define MIB_WLAN_SCHEDULE_TBL_NUM 504
#define MIB_WLAN_SCHEDULE_TBL ((MIB_WLAN_SCHEDULE_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_WLAN_SCHEDULE_ADD ((MIB_WLAN_SCHEDULE_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_WLAN_SCHEDULE_DEL ((MIB_WLAN_SCHEDULE_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_WLAN_SCHEDULE_DELALL ((MIB_WLAN_SCHEDULE_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_PPTP_CONNECTION_TYPE 509
#define MIB_PPTP_IDLE_TIME 510
//NewAdd For rtl8196B
#define MIB_HW_WLAN_ADDR5 511
#define MIB_HW_WLAN_ADDR6 512
#define MIB_HW_WLAN_ADDR7 513
#define MIB_HW_TX_POWER_OFDM_1S 514
#define MIB_HW_TX_POWER_OFDM_2S 515
#define MIB_HW_11N_LOFDMPWDA 516
#define MIB_HW_11N_LOFDMPWDB 517
#define MIB_HW_11N_TSSI1 518
#define MIB_HW_11N_TSSI2 519
#define MIB_HW_11N_THER 520
#define MIB_HW_11N_TRSWITCH 521 //MIB_HW_11N_ESERVED1->MIB_HW_11N_TRSWITCH
#define MIB_HW_11N_TRSWPAPE_C9 522
#define MIB_HW_11N_TRSWPAPE_CC 523
#define MIB_HW_11N_TARGET_PWR 524
#define MIB_HW_11N_PA_TYPE 525
#define MIB_HW_11N_THER_2 526
#define MIB_HW_11N_XCAP_2 527
#define MIB_HW_11N_RESERVED8 528
/*-----end-----*/
// SNMP maximum length of fields, Forrest added, 2007.10.25.
#ifdef CONFIG_SNMP
#define MAX_SNMP_NAME_LEN 64
#define MAX_SNMP_LOCATION_LEN 64
#define MAX_SNMP_CONTACT_LEN 64
#define MAX_SNMP_COMMUNITY_LEN 64
#endif
//=========add for MESH=========
//#ifdef CONFIG_RTK_MESH Keith remove
#define MIB_WLAN_MESH_ENABLE 644 //new feature:Mesh enable/disable
#define MIB_WLAN_MESH_ROOT_ENABLE 551
#define MIB_WLAN_MESH_ID 554
#define MIB_WLAN_MESH_MAX_NEIGHTBOR 555
#define MIB_WLAN_MESH_ENCRYPT 559
#define MIB_WLAN_MESH_PSK_FORMAT 560
#define MIB_WLAN_MESH_WPA_PSK 561
#define MIB_WLAN_MESH_WPA_AUTH 562
#define MIB_WLAN_MESH_WPA2_CIPHER_SUITE 563
//#ifdef _MESH_ACL_ENABLE_ Keith remove
#define MIB_WLAN_MESH_ACL_ENABLED 580
#define MIB_WLAN_MESH_ACL_NUM 581
#define MIB_WLAN_MESH_ACL_ADDR ((MIB_WLAN_MESH_ACL_NUM+1)|MIB_TABLE_LIST)
#define MIB_WLAN_MESH_ACL_ADDR_ADD ((MIB_WLAN_MESH_ACL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_WLAN_MESH_ACL_ADDR_DEL ((MIB_WLAN_MESH_ACL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_WLAN_MESH_ACL_ADDR_DELALL ((MIB_WLAN_MESH_ACL_NUM+4)|MIB_DELALL_TBL_ENTRY)
//#endif Keith remove
//#ifdef _11s_TEST_MODE_ Keith remove
#define MIB_WLAN_MESH_TEST_PARAM1 600
#define MIB_WLAN_MESH_TEST_PARAM2 601
#define MIB_WLAN_MESH_TEST_PARAM3 602
#define MIB_WLAN_MESH_TEST_PARAM4 603
#define MIB_WLAN_MESH_TEST_PARAM5 604
#define MIB_WLAN_MESH_TEST_PARAM6 605
#define MIB_WLAN_MESH_TEST_PARAM7 606
#define MIB_WLAN_MESH_TEST_PARAM8 607
#define MIB_WLAN_MESH_TEST_PARAM9 608
#define MIB_WLAN_MESH_TEST_PARAMA 609
#define MIB_WLAN_MESH_TEST_PARAMB 610
#define MIB_WLAN_MESH_TEST_PARAMC 611
#define MIB_WLAN_MESH_TEST_PARAMD 612
#define MIB_WLAN_MESH_TEST_PARAME 613
#define MIB_WLAN_MESH_TEST_PARAMF 614
#define MIB_WLAN_MESH_TEST_PARAMSTR1 615
//#endif Keith remove
//#endif // CONFIG_RTK_MESH Keith remove
//=========add for MESH=========
#define MIB_VLANCONFIG_ENABLED 616
#define MIB_VLANCONFIG_TBL_NUM 617
#define MIB_VLANCONFIG_TBL ((MIB_VLANCONFIG_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_VLANCONFIG_ADD ((MIB_VLANCONFIG_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_VLANCONFIG_DEL ((MIB_VLANCONFIG_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_VLANCONFIG_DELALL ((MIB_VLANCONFIG_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
//#ifdef CONFIG_RTL_WAPI_SUPPORT Keith remove
//WAPI start from 630
#define MIB_WLAN_WAPI_PSK 630
#define MIB_WLAN_WAPI_PSKLEN 631
#define MIB_WLAN_WAPI_PSK_FORMAT 632
#define MIB_WLAN_WAPI_AUTH 633
#define MIB_WLAN_WAPI_ASIPADDR 634
#define MIB_WLAN_WAPI_SEARCHINFO 635
#define MIB_WLAN_WAPI_SEARCHINDEX 636
#define MIB_WLAN_WAPI_MCASTREKEY 637
#define MIB_WLAN_WAPI_MCAST_TIME 638
#define MIB_WLAN_WAPI_MCAST_PACKETS 639
#define MIB_WLAN_WAPI_UCASTREKEY 640
#define MIB_WLAN_WAPI_UCAST_TIME 641
#define MIB_WLAN_WAPI_UCAST_PACKETS 642
#define MIB_WLAN_WAPI_CA_INIT 643
//Added to support two remote as and one local as at the same time
#define MIB_WLAN_WAPI_CERT_SEL 656
#define MIB_WLAN_WAPI_AUTH_MODE_2or3_CERT 657
#define MIB_NAT_ENABLED 645
#define MIB_WLAN_STBC_ENABLED 646
#define MIB_WLAN_COEXIST_ENABLED 647
#define MIB_WLAN_LDPC_ENABLED 648
#define MIB_SAMBA_ENABLED 650
#define MIB_WLAN_LOWEST_MLCST_RATE 663
#define MIB_WLAN_MC2U_DISABLED 664
#define MIB_MIB_VER 655
//#ifdef CONFIG_RTL_WAPI_SUPPORT Keith remove
#define CERTS_DATABASE "/var/myca/index.txt"
#define ONE_DAY_SECONDS 86400
#define USER_NAME_LEN 32
typedef struct _CertsDbEntry_ {
unsigned char userName[USER_NAME_LEN]; //user name of this user cert
unsigned long serial; //serial of this cert
unsigned short validDays; //total valid days of this cert
unsigned short validDaysLeft; //the left valid days of this cert
unsigned char certType; //0(default): X.509; others: reserved
unsigned char certStatus; //0(default): valid; 1: expired; 2: revoked
} CERTS_DB_ENTRY_T, *CERTS_DB_ENTRY_Tp;
//#endif Keith remove
//WAPI END
// GW_QOS_ENGINE
#define MIB_QOS_AUTO_DOWNLINK_SPEED 651
#define MIB_QOS_MANUAL_DOWNLINK_SPEED 652
//11n onoff TKIP
#define MIB_WLAN_11N_ONOFF_TKIP 660
#if (defined CONFIG_RTL_BT_CLIENT) || (defined CONFIG_RTL_TRANSMISSION)
#define MIB_BT_UPLOAD_DIR 680
#define MIB_BT_DOWNLOAD_DIR 681
#define MIB_BT_TOTAL_ULIMIT 682
#define MIB_BT_TOTAL_DLIMIT 683
#define MIB_BT_REFRESH_TIME 684
#define MIB_BT_ENABLED 685
#endif
#define MIB_WLAN_ACK_TIMEOUT 686
#ifdef WLAN_HS2_CONFIG
#define MIB_WLAN_HS2_ENABLE 687
#endif
#define BRIDGE_ETHERNET 0
#define BRIDGE_PPPOE 1
#define BRIDGE_DISABLE 2
typedef enum { IP_BRIDGE=0, IP_ROUTE=1, IP_PPP=2} CMODE_T; //WANIface Mode Not the Method of getting IP address
/*+++++added by Jack for Tr-069 configuration+++++*/
#ifdef CONFIG_APP_TR069
/* Keith add for tr069 --start */
#undef mib_get
#undef mib_set
#undef mib_update
#define MAX_WAN_NAME_LEN 40 // E8 WAN connection name
// resv | media | ppp | vc
#define MAX_VC_NUM 8
#define MAX_PPP_NUM 8
#define PHY_INTF(x) (x | 0xff00)/*physical interface*/
#define VC_INDEX(x) (x & 0x0ff)
#define ETH_INDEX(x) (x & 0x0ff)
#define PPP_INDEX(x) ((x >> 8) & 0x0ff)
#define MEDIA_INDEX(x) ((x >> 16) & 0x0ff)
#define TO_IFINDEX(x,y,z) ((x<<16) | (y<<8) | z)
#define DUMMY_VC_INDEX 0xff
#define DUMMY_PPP_INDEX 0xff
#define DUMMY_IFINDEX 0xffff
#define NA_PPP 0xefff
#define NA_VC 0xffff
#define MAX_POE_PER_VC 5
#define STR_LEN_64 64
typedef enum { MEDIA_ATM, MEDIA_ETH } MEDIA_TYPE_T;
typedef enum { APPTYPE_TR069_INTERNET, APPTYPE_INTERNET, APPTYPE_TR069,
APPTYPE_OTHER, APPTYPE_VOICE, APPTYPE_TR069_VOICE,
APPTYPE_VOICE_INTERNET, APPTYPE_TR069_VOICE_INTERNET } APPTYPE_T;
typedef enum { PPP_AUTH_AUTO=0, PPP_AUTH_PAP, PPP_AUTH_CHAP, PPP_AUTH_NONE } PPP_AUTH_T;
#define mib_get(S, T) apmib_get(S, T)
#define mib_set(S, T) apmib_set(S, T)
#define mib_update(S) apmib_update(S)
#define LANDEVNAME2BR0(a) do{ if(a && (strncmp(a, "eth0", 4)==0||strncmp(a, "wlan0", 5)==0||strncmp(a, "usb0", 4)==0)) strcpy(a, "br0"); }while(0)
#ifdef CONFIG_USER_CWMP_WITH_SSL
#define _CWMP_WITH_SSL_ 1
#endif //CONFIG_USER_CWMP_WITH_SSL
#if defined(CONFIG_USER_CWMP_WITH_TR143)
#define _PRMT_TR143_ 1
#endif
#define TIME_ZONE
#define _PRMT_USERINTERFACE_
#define WLAN_SUPPORT
#ifdef MBSSID
#define WLAN_MBSSID 1
#endif
#ifdef UNIVERSAL_REPEATER
#define WLAN_REPEATER
#endif
#define MAC_FILTER
#define ENABLE_WPAAES_WPA2TKIP
//--- for TR098 -------------------------------
#define MOD_FOR_TR098 /* brucehou */
#if defined(MOD_FOR_TR098)
#define MOD_FOR_TR098_LAYER3FWD
#define MOD_FOR_TR098_LANDEVICE
#define MOD_FOR_TR098_VAP
#define MOD_FOR_TR098_PORTMAP
#if defined(CONFIG_RTL_92D_SUPPORT)
#define MOD_FOR_TR098_DUALBAND
#endif
#endif /* #if defined(MOD_FOR_TR098) */
//--- for TR098 -------------------------------
/* Keith add for tr069 --end */
///////////////////////////////////////////////////////////////////////////Enable for E8C
#define ALIASNAME_VC "vc"
#define ALIASNAME_BR "br"
#define ALIASNAME_NAS "nas"
#define ALIASNAME_DSL "dsl"
#define ALIASNAME_ETH "eth"
#define ALIASNAME_WLAN "wlan"
#define ALIASNAME_PPP "ppp"
#define ALIASNAME_MWNAS "nas0_"
#define ALIASNAME_ETH0DOT "eth0."
#if defined(_PRMT_TR143_)
#define RTL_DEV_NAME_NUM(name,num) name#num
#define ALIASNAME_VC0 RTL_DEV_NAME_NUM(ALIASNAME_VC,0)//"vc0"
#define ALIASNAME_BR0 RTL_DEV_NAME_NUM(ALIASNAME_BR,0)//"br0"
#define ALIASNAME_WLAN0 RTL_DEV_NAME_NUM(ALIASNAME_WLAN,0)//"wlan0"
#define ALIASNAME_WLAN1 RTL_DEV_NAME_NUM(ALIASNAME_WLAN,1)//"wlan1"
#define ALIASNAME_NAS0 RTL_DEV_NAME_NUM(ALIASNAME_NAS,0)//nas0
#define ALIASNAME_DSL0 RTL_DEV_NAME_NUM(ALIASNAME_DSL,0)//dsl0
#define ALIASNAME_ETH0 RTL_DEV_NAME_NUM(ALIASNAME_ETH,0)//eth0
#define ALIASNAME_PPP0 RTL_DEV_NAME_NUM(ALIASNAME_PPP,0)//ppp0
#define ALIASNAME_VAP "-vap" //must include '-' at fast
#define ALIASNAME_WLAN0_VAP RTL_DEV_NAME_NUM(ALIASNAME_WLAN0,-vap)//"wlan0-vap"
#define ALIASNAME_WLAN1_VAP RTL_DEV_NAME_NUM(ALIASNAME_WLAN1,-vap)//"wlan1-vap"
#define ALIASNAME_WLAN0__VAP RTL_DEV_NAME_NUM(ALIASNAME_WLAN0,_vap)//"wlan0_vap"
#define ALIASNAME_WLAN0__VAP0 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0__VAP,0)//"wlan0_vap0"
#define ALIASNAME_WLAN0__VAP1 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0__VAP,1)//"wlan0_vap1"
#define ALIASNAME_WLAN0__VAP2 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0__VAP,2)//"wlan0_vap2"
#define ALIASNAME_WLAN0__VAP3 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0__VAP,3)//"wlan0_vap3"
#define ALIASNAME_WLAN0_VAP0 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0_VAP,0)//"wlan0-vap0"
#define ALIASNAME_WLAN0_VAP1 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0_VAP,1)//"wlan0-vap1"
#define ALIASNAME_WLAN0_VAP2 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0_VAP,2)//"wlan0-vap2"
#define ALIASNAME_WLAN0_VAP3 RTL_DEV_NAME_NUM(ALIASNAME_WLAN0_VAP,3)//"wlan0-vap3"
#define ALIASNAME_WLAN1_VAP0 RTL_DEV_NAME_NUM(ALIASNAME_WLAN1_VAP,0)//"wlan0-vap0"
#define ALIASNAME_WLAN1_VAP1 RTL_DEV_NAME_NUM(ALIASNAME_WLAN1_VAP,1)//"wlan0-vap0"
#define ALIASNAME_WLAN1_VAP2 RTL_DEV_NAME_NUM(ALIASNAME_WLAN1_VAP,2)//"wlan0-vap0"
#define ALIASNAME_WLAN1_VAP3 RTL_DEV_NAME_NUM(ALIASNAME_WLAN1_VAP,3)//"wlan0-vap0"
#define ALIASNAME_ETH0DOT2 RTL_DEV_NAME_NUM(ALIASNAME_ETH0DOT,2)
#define ALIASNAME_ETH0DOT3 RTL_DEV_NAME_NUM(ALIASNAME_ETH0DOT,3)
#define ALIASNAME_ETH0DOT4 RTL_DEV_NAME_NUM(ALIASNAME_ETH0DOT,4)
#define ALIASNAME_ETH0DOT5 RTL_DEV_NAME_NUM(ALIASNAME_ETH0DOT,5)
#define ALIASNAME_ETH0_SW RTL_DEV_NAME_NUM(ALIASNAME_ETH0,_sw)
#define ALIASNAME_ETH0_SW0 RTL_DEV_NAME_NUM(ALIASNAME_ETH0_SW,0)
#define ALIASNAME_ETH0_SW1 RTL_DEV_NAME_NUM(ALIASNAME_ETH0_SW,1)
#define ALIASNAME_ETH0_SW2 RTL_DEV_NAME_NUM(ALIASNAME_ETH0_SW,2)
#define ALIASNAME_ETH0_SW3 RTL_DEV_NAME_NUM(ALIASNAME_ETH0_SW,3)
#define ALIASNAME_BR00 RTL_DEV_NAME_NUM(ALIASNAME_BR0,:0)
#define ALIASNAME_BR01 RTL_DEV_NAME_NUM(ALIASNAME_BR0,:1)
typedef enum
{
ITF_ALL=0,
ITF_WAN, //wan pppx or vcx
ITF_LAN, //br0
ITF_ETH0, //eth0
ITF_ETH0_SW0, //eth0_sw0
ITF_ETH0_SW1, //eth0_sw1
ITF_ETH0_SW2, //eth0_sw2
ITF_ETH0_SW3, //eth0_sw3
ITF_WLAN0, //wlan0
ITF_WLAN0_VAP0, //wlan0-vap0
ITF_WLAN0_VAP1, //wlan0-vap1
ITF_WLAN0_VAP2, //wlan0-vap2
ITF_WLAN0_VAP3, //wlan0-vap3
ITF_WLAN1, //wlan0
ITF_WLAN1_VAP0, //wlan0-vap0
ITF_WLAN1_VAP1, //wlan0-vap1
ITF_WLAN1_VAP2, //wlan0-vap2
ITF_WLAN1_VAP3, //wlan0-vap3
ITF_USB0, //usb0
ITF_END //last one
} ITF_T;
extern char *strItf[];
#endif //_PRMT_TR143_
#define DEF_MANUFACTURER_STR "REALTEK SEMICONDUCTOR CORP."
#define DEF_MANUFACTUREROUI_STR "00E04C"
#define DEF_PRODUCTCLASS_STR "IGD"
#define CWMP_ID 700
#define MIB_CWMP_ENABLED CWMP_ID + 0
#define MIB_CWMP_PROVISIONINGCODE CWMP_ID + 1 //069
#define MIB_CWMP_ACS_URL CWMP_ID + 2 //069
#define MIB_CWMP_ACS_USERNAME CWMP_ID + 3 //069
#define MIB_CWMP_ACS_PASSWORD CWMP_ID + 4 //069
#define MIB_CWMP_INFORM_ENABLE CWMP_ID + 5 //069
#define MIB_CWMP_INFORM_INTERVAL CWMP_ID + 6 //069
#define MIB_CWMP_INFORM_TIME CWMP_ID + 7
#define MIB_CWMP_CONREQ_USERNAME CWMP_ID + 8
#define MIB_CWMP_CONREQ_PASSWORD CWMP_ID + 9
#define MIB_CWMP_ACS_UPGRADESMANAGED CWMP_ID + 10 //069
#define MIB_CWMP_LAN_CONFIGPASSWD CWMP_ID + 11
#define MIB_CWMP_SERIALNUMBER CWMP_ID + 12 //069
#define MIB_CWMP_DHCP_SERVERCONF CWMP_ID + 13
#define MIB_CWMP_LAN_IPIFENABLE CWMP_ID + 14
#define MIB_CWMP_LAN_ETHIFENABLE CWMP_ID + 15
#define MIB_CWMP_WLAN_BASICENCRY CWMP_ID + 16
#define MIB_CWMP_WLAN_WPAENCRY CWMP_ID + 17
#define MIB_CWMP_DL_COMMANDKEY CWMP_ID + 18
#define MIB_CWMP_DL_STARTTIME CWMP_ID + 19
#define MIB_CWMP_DL_COMPLETETIME CWMP_ID + 20
#define MIB_CWMP_DL_FAULTCODE CWMP_ID + 21
#define MIB_CWMP_INFORM_EVENTCODE CWMP_ID + 22
#define MIB_CWMP_RB_COMMANDKEY CWMP_ID + 23
#define MIB_CWMP_ACS_PARAMETERKEY CWMP_ID + 24
#define MIB_CWMP_CERT_PASSWORD CWMP_ID + 25
#define MIB_CWMP_FLAG CWMP_ID + 26
#define MIB_CWMP_SI_COMMANDKEY CWMP_ID + 27 /*ScheduleInform's commandkey*/
#ifdef _PRMT_USERINTERFACE_ /*InternetGatewayDevice.UserInterface.*/
#define MIB_UIF_PW_REQUIRED CWMP_ID + 28 /*PasswordRequired*/
#define MIB_UIF_PW_USER_SEL CWMP_ID + 29 /*PasswordUserSelectable*/
#define MIB_UIF_UPGRADE CWMP_ID + 30 /*UpgradeAvailable*/
#define MIB_UIF_WARRANTYDATE CWMP_ID + 31 /*WarrantyDate*/
#define MIB_UIF_AUTOUPDATESERVER CWMP_ID + 32 /*AutoUpdateServer*/
#define MIB_UIF_USERUPDATESERVER CWMP_ID + 33 /*UserUpdateServer*/
#endif /*_PRMT_USERINTERFACE_*/
#define MIB_CWMP_ACS_KICKURL CWMP_ID + 74
#define MIB_CWMP_ACS_DOWNLOADURL CWMP_ID + 75
#define MIB_CWMP_CONREQ_PORT CWMP_ID + 76 /*port for connection request*/
#define MIB_CWMP_CONREQ_PATH CWMP_ID + 77 /*path for connection request*/
#define MIB_CWMP_FLAG2 CWMP_ID + 78
//#ifdef _PRMT_TR143_
#define MIB_TR143_UDPECHO_ENABLE CWMP_ID + 79
#define MIB_TR143_UDPECHO_ITFTYPE CWMP_ID + 80
#define MIB_TR143_UDPECHO_SRCIP CWMP_ID + 81
#define MIB_TR143_UDPECHO_PORT CWMP_ID + 82
#define MIB_TR143_UDPECHO_PLUS CWMP_ID + 83
//#endif //_PRMT_TR143_
#define MIB_CWMP_NOTIFY_LIST CWMP_ID + 84
#define MIB_CWMP_ACS_URL_OLD CWMP_ID + 85 //069
#define MIB_CWMP_USERINFO_RESULT CWMP_ID + 92
#define MIB_CWMP_NEED_REBOOT CWMP_ID + 93
#define MIB_CWMP_PERSISTENT_DATA CWMP_ID + 97
#define MIB_CWMP_PARAMETERKEY CWMP_ID + 109
#define MIB_CWMP_PPPCON_INSTNUM CWMP_ID + 110
#define MIB_CWMP_IPCON_INSTNUM CWMP_ID + 111
#define MIB_CWMP_PPPCON_CREATED CWMP_ID + 112
#define MIB_CWMP_IPCON_CREATED CWMP_ID + 113
#define MIB_CWMP_LAN_ETHIFDISABLE CWMP_ID + 114
#define MIB_CWMP_WAN_ETHIFDISABLE CWMP_ID + 115
#define MIB_CWMP_SW_PORT1_DISABLE CWMP_ID + 116
#define MIB_CWMP_SW_PORT1_MAXBITRATE CWMP_ID + 117
#define MIB_CWMP_SW_PORT1_DUPLEXMODE CWMP_ID + 118
#define MIB_CWMP_SW_PORT2_DISABLE CWMP_ID + 119
#define MIB_CWMP_SW_PORT2_MAXBITRATE CWMP_ID + 120
#define MIB_CWMP_SW_PORT2_DUPLEXMODE CWMP_ID + 121
#define MIB_CWMP_SW_PORT3_DISABLE CWMP_ID + 122
#define MIB_CWMP_SW_PORT3_MAXBITRATE CWMP_ID + 123
#define MIB_CWMP_SW_PORT3_DUPLEXMODE CWMP_ID + 124
#define MIB_CWMP_SW_PORT4_DISABLE CWMP_ID + 125
#define MIB_CWMP_SW_PORT4_MAXBITRATE CWMP_ID + 126
#define MIB_CWMP_SW_PORT4_DUPLEXMODE CWMP_ID + 127
#define MIB_CWMP_SW_PORT5_DISABLE CWMP_ID + 128
#define MIB_CWMP_SW_PORT5_MAXBITRATE CWMP_ID + 129
#define MIB_CWMP_SW_PORT5_DUPLEXMODE CWMP_ID + 130
#define MIB_CWMP_RETRY_MIN_WAIT_INTERVAL CWMP_ID + 131
#define MIB_CWMP_RETRY_INTERVAL_MUTIPLIER CWMP_ID + 132
#define MIB_CWMP_UDP_CONN_REQ_ADDR CWMP_ID + 133
#define MIB_CWMP_STUN_EN CWMP_ID + 134
#define MIB_CWMP_STUN_SERVER_ADDR CWMP_ID + 135
#define MIB_CWMP_STUN_SERVER_PORT CWMP_ID + 136
#define MIB_CWMP_STUN_USERNAME CWMP_ID + 137
#define MIB_CWMP_STUN_PASSWORD CWMP_ID + 138
#define MIB_CWMP_STUN_MAX_KEEP_ALIVE_PERIOD CWMP_ID + 139
#define MIB_CWMP_STUN_MIN_KEEP_ALIVE_PERIOD CWMP_ID + 140
#define MIB_CWMP_NAT_DETECTED CWMP_ID + 141
#define MIB_CWMP_MIB_END CWMP_ID + 200 /* Reserve 200 mib for tr069*/
#endif /*CONFIG_APP_TR069*/
#define MIB_TEST_DATA 10000
#define MIB_DHCPRSVDIP_IPADDR 1001
#define MIB_DHCPRSVDIP_MACADDR 1002
#define MIB_DHCPRSVDIP_HOSTNAME 1003
#define MIB_SCHEDULE_TEXT 1011
#define MIB_SCHEDULE_ECO 1012
#define MIB_SCHEDULE_FTIME 1013
#define MIB_SCHEDULE_TTIME 1014
#define MIB_SCHEDULE_DAY 1015
#define MIB_PORTFW_IPADDR 1021
#define MIB_PORTFW_FROMPORT 1022
#define MIB_PORTFW_TOPORT 1023
#define MIB_PORTFW_PROTOTYPE 1024
#define MIB_PORTFW_COMMENT 1025
#define MIB_PORTFW_SVRPORT 1026
#define MIB_PORTFW_SVRNAME 1027
#define MIB_PORTFW_INSTANCENUM 1028
#define MIB_PORTFW_WANIFACE_ID 1029
#define MIB_IPFILTER_IPADDR 1031
#define MIB_IPFILTER_PROTOTYPE 1032
#define MIB_IPFILTER_COMMENT 1033
#define MIB_IPFILTER_IP6ADDR 1034
#define MIB_IPFILTER_IP_VERSION 1035
#define MIB_PORTFILTER_FROMPORT 1041
#define MIB_PORTFILTER_TOPORT 1042
#define MIB_PORTFILTER_PROTOTYPE 1043
#define MIB_PORTFILTER_COMMENT 1044
#define MIB_PORTFILTER_IPVERSION 1045
#define MIB_MACFILTER_MACADDR 1051
#define MIB_MACFILTER_COMMENT 1052
#define MIB_TRIGGERPORT_TRI_FROMPORT 1061
#define MIB_TRIGGERPORT_TRI_TOPORT 1062
#define MIB_TRIGGERPORT_TRI_PROTOTYPE 1063
#define MIB_TRIGGERPORT_INC_FROMPORT 1064
#define MIB_TRIGGERPORT_INC_TOPORT 1065
#define MIB_TRIGGERPORT_INC_PROTOTYPE 1066
#define MIB_TRIGGERPORT_COMMENT 1067
#define MIB_URLFILTER_URLADDR 1071
#define MIB_URLFILTER_RULE_MODE 1072
#ifdef URL_FILTER_USER_MODE_SUPPORT
#define MIB_URLFILTER_IPADDR 1073
#define MIB_URLFILTER_MACADDR 1074
#define MIB_URLFILTER_USR_MODE 1075
#endif
#define MIB_VLANCONFIG_ENTRY_ENABLED 1081
#define MIB_VLANCONFIG_NETIFACE 1082
#define MIB_VLANCONFIG_TAGGED 1083
#define MIB_VLANCONFIG_UNTAGGED 1084
#define MIB_VLANCONFIG_PRIORITY 1085
#define MIB_VLANCONFIG_CFI 1086
#define MIB_VLANCONFIG_GROUPID 1087
#define MIB_VLANCONFIG_VLANID 1088
#if defined(CONFIG_RTK_VLAN_NEW_FEATURE) || defined(CONFIG_RTL_HW_VLAN_SUPPORT)
#define MIB_VLANCONFIG_FORWARDING_RULE 1089
#endif
#define MIB_STATICROUTE_DSTADDR 1091
#define MIB_STATICROUTE_NETMASK 1092
#define MIB_STATICROUTE_GATEWAY 1093
#define MIB_STATICROUTE_INTERFACE 1094
#define MIB_STATICROUTE_METRIC 1095
#define MIB_IPSECTUNNEL_TUNNELID 1101
#define MIB_IPSECTUNNEL_AUTHTYPE 1102
#define MIB_IPSECTUNNEL_LCTYPE 1103
#define MIB_IPSECTUNNEL_LC_IPADDR 1104
#define MIB_IPSECTUNNEL_LC_MASKLEN 1105
#define MIB_IPSECTUNNEL_RTTYPE 1106
#define MIB_IPSECTUNNEL_RT_IPADDR 1107
#define MIB_IPSECTUNNEL_RT_MASKLEN 1108
#define MIB_IPSECTUNNEL_RT_GWADDR 1109
#define MIB_IPSECTUNNEL_KEYMODE 1110
#define MIB_IPSECTUNNEL_ESPAH 1111
#define MIB_IPSECTUNNEL_ESPENCR 1112
#define MIB_IPSECTUNNEL_ESPAUTH 1113
#define MIB_IPSECTUNNEL_AHAUTH 1114
#define MIB_IPSECTUNNEL_CONTYPE 1115
#define MIB_IPSECTUNNEL_PSKEY 1116
#define MIB_IPSECTUNNEL_RSAKEY 1117
#define MIB_IPSECTUNNEL_SPI 1118
#define MIB_IPSECTUNNEL_ENCRKEY 1119
#define MIB_IPSECTUNNEL_AUTHKEY 1120
#define MIB_IPSECTUNNEL_ENABLE 1121
#define MIB_IPSECTUNNEL_CONNNAME 1122
#define MIB_IPSECTUNNEL_LCIDTYPE 1123
#define MIB_IPSECTUNNEL_RTIDTYPE 1124
#define MIB_IPSECTUNNEL_LCID 1125
#define MIB_IPSECTUNNEL_RTID 1126
#define MIB_IPSECTUNNEL_IKELIFETIME 1127
#define MIB_IPSECTUNNEL_IKEENCR 1128
#define MIB_IPSECTUNNEL_IKEAUTH 1129
#define MIB_IPSECTUNNEL_IKEKEYGROUP 1130
#define MIB_IPSECTUNNEL_IPSECLIFETIME 1131
#define MIB_IPSECTUNNEL_IPSECPFS 1132
#define MIB_CERTROOT_COMMENT 1151
#define MIB_CERTUSER_COMMENT 1161
#define MIB_CERTROOT_PASS 1162
#define MIB_QOS_ENTRY_NAME 1171
#define MIB_QOS_ENTRY_ENABLED 1172
#define MIB_QOS_PRIORITY 1173
#define MIB_QOS_PROTOCOL 1174
#define MIB_QOS_LOCAL_IP_START 1175
#define MIB_QOS_LOCAL_IP_END 1176
#define MIB_QOS_LOCAL_PORT_START 1177
#define MIB_QOS_LOCAL_PORT_END 1178
#define MIB_QOS_REMOTE_IP_START 1179
#define MIB_QOS_REMOTE_IP_END 1180
#define MIB_QOS_REMOTE_PORT_START 1181
#define MIB_QOS_REMOTE_PORT_END 1182
#define MIB_IPQOS_ENTRY_NAME 1191
#define MIB_IPQOS_ENABLED 1192
#define MIB_IPQOS_MAC 1193
#define MIB_IPQOS_MODE 1194
#define MIB_IPQOS_LOCAL_IP_START 1195
#define MIB_IPQOS_LOCAL_IP_END 1196
#define MIB_IPQOS_BANDWIDTH 1197
#define MIB_IPQOS_BANDWIDTH_DOWNLINK 1198
#define MIB_IPQOS_LAYER7_PROTOCOL 1199
#define MIB_IPQOS_IPV6_SRC 1200
#define MIB_MECH_ACL_MACADDR 1201
#define MIB_MECH_ACL_COMMENT 1202
#define MIB_WLAN_ACL_ADDR_MACADDR 1211
#define MIB_WLAN_ACL_ADDR_COMMENT 1212
#define MIB_WLAN_WDS_MACADDR 1221
#define MIB_WLAN_WDS_FIXEDTXRATE 1222
#define MIB_WLAN_WDS_COMMENT 1223
//#ifdef CONFIG_RTL_FLASH_DUAL_IMAGE_ENABLE
#define MIB_DUALBANK_ENABLED 1300
#define MIB_WLAN_PHY_BAND_SELECT 1301
#define MIB_WLAN_MAC_PHY_MODE 1302
#define MIB_WLAN_BAND2G5G_SELECT 1303
//#endif
//MIBs for 802.1x wlan client mode
#ifdef CONFIG_RTL_802_1X_CLIENT_SUPPORT
#define MIB_WLAN_EAP_TYPE 1311
#define MIB_WLAN_EAP_INSIDE_TYPE 1312
#define MIB_WLAN_EAP_USER_ID 1313
#define MIB_WLAN_RS_USER_NAME 1314
#define MIB_WLAN_RS_USER_PASSWD 1315
#define MIB_WLAN_RS_USER_CERT_PASSWD 1316
#define MIB_WLAN_RS_BAND_SEL 1317
#endif
/* USB3G */
#define MIB_USB3G_USER 1400
#define MIB_USB3G_PASS 1401
#define MIB_USB3G_PIN 1402
#define MIB_USB3G_APN 1403
#define MIB_USB3G_DIALNUM 1404
#define MIB_USB3G_CONN_TYPE 1405
#define MIB_USB3G_IDLE_TIME 1406
#define MIB_USB3G_MTU_SIZE 1407
/*for P2P_SUPPORT*/
#define MIB_WLAN_P2P_TYPE 1450
#define MIB_WLAN_P2P_INTENT 1451
#define MIB_WLAN_P2P_LISTEN_CHANNEL 1452
#define MIB_WLAN_P2P_OPERATION_CHANNEL 1453
#define MIB_WLAN_RS2_IP 1454
#define MIB_WLAN_RS2_PORT 1455
#define MIB_WLAN_RS2_PASSWORD 1456
#define MIB_WLAN_RS2_MAXRETRY 1457
#define MIB_WLAN_RS2_INTERVAL_TIME 1458
#define MIB_WLAN_ACCOUNT_RS2_IP 1459
#define MIB_WLAN_ACCOUNT_RS2_PORT 1460
#define MIB_WLAN_ACCOUNT_RS2_PASSWORD 1461
#define MIB_WLAN_RS_REAUTH_TO 1462
#define MIB_WLAN_FUNC_OFF 1463
#if defined(CONFIG_RTL_ULINKER)
#define MIB_ULINKER_AUTO 1470
#define MIB_ULINKER_CURRENT_MODE 1471
#define MIB_ULINKER_LATEST_MODE 1472
#define MIB_ULINKER_CURRENT_WLAN_MODE 1473
#define MIB_ULINKER_LATEST_WLAN_MODE 1474
#define MIB_ULINKER_REPEATER_ENABLED1 1475
#define MIB_ULINKER_REPEATER_ENABLED2 1476
#endif
/*multi pppoe*/
//dzh begin
//#define MIB_PPP_USER_NAME 106
#define MIB_PPP_CONNECT_COUNT 1499
#define MIB_PPP_USER_NAME2 1500
#define MIB_PPP_PASSWORD2 1501
#define MIB_PPP_USER_NAME3 1502
#define MIB_PPP_PASSWORD3 1503
#define MIB_PPP_USER_NAME4 1504
#define MIB_PPP_PASSWORD4 1505
#define MIB_PPP_SERVICE_NAME2 1506
#define MIB_PPP_SERVICE_NAME3 1507
#define MIB_PPP_SERVICE_NAME4 1508
#define MIB_PPP_IDLE_TIME2 1509
#define MIB_PPP_CONNECT_TYPE2 1510
#define MIB_PPP_IDLE_TIME3 1511
#define MIB_PPP_CONNECT_TYPE3 1512
#define MIB_PPP_IDLE_TIME4 1513
#define MIB_PPP_CONNECT_TYPE4 1514
#define MIB_PPP_MTU_SIZE2 1515
#define MIB_PPP_MTU_SIZE3 1516
#define MIB_PPP_MTU_SIZE4 1517
#define MIB_PPP_SESSION_NUM2 1522
#define MIB_PPP_SERVER_MAC2 1523
#define MIB_PPP_SESSION_NUM3 1524
#define MIB_PPP_SERVER_MAC3 1525
#define MIB_PPP_SESSION_NUM4 1526
#define MIB_PPP_SERVER_MAC4 1527
//add for subnet
#define MIB_SUBNET1_COUNT 1528
#define MIB_SUBNET1_F1_START 1529
#define MIB_SUBNET1_F1_END 1530
#define MIB_SUBNET1_F2_START 1531
#define MIB_SUBNET1_F2_END 1532
#define MIB_SUBNET1_F3_START 1533
#define MIB_SUBNET1_F3_END 1534
#define MIB_SUBNET2_COUNT 1535
#define MIB_SUBNET2_F1_START 1536
#define MIB_SUBNET2_F1_END 1537
#define MIB_SUBNET2_F2_START 1538
#define MIB_SUBNET2_F2_END 1539
#define MIB_SUBNET2_F3_START 1540
#define MIB_SUBNET2_F3_END 1541
#define MIB_SUBNET3_COUNT 1542
#define MIB_SUBNET3_F1_START 1543
#define MIB_SUBNET3_F1_END 1544
#define MIB_SUBNET3_F2_START 1545
#define MIB_SUBNET3_F2_END 1546
#define MIB_SUBNET3_F3_START 1547
#define MIB_SUBNET3_F3_END 1548
#define MIB_SUBNET4_COUNT 1549
#define MIB_SUBNET4_F1_START 1550
#define MIB_SUBNET4_F1_END 1551
#define MIB_SUBNET4_F2_START 1552
#define MIB_SUBNET4_F2_END 1553
#define MIB_SUBNET4_F3_START 1554
#define MIB_SUBNET4_F3_END 1555
#define MIB_PPP_SUBNET1 1556
#define MIB_PPP_SUBNET2 1557
#define MIB_PPP_SUBNET3 1558
#define MIB_PPP_SUBNET4 1559
#ifdef CONFIG_CPU_UTILIZATION
#define MIB_ENABLE_CPU_UTILIZATION 1580
#define MIB_CPU_UTILIZATION_INTERVAL 1581
#endif
#define MIB_LAN_DHCP_CONFIGURABLE 1749
#define MIB_STATICROUTE_ENABLE 1776
#define MIB_STATICROUTE_TYPE 1777
#define MIB_STATICROUTE_SRCADDR 1778
#define MIB_STATICROUTE_SRCNETMASK 1779
#define MIB_STATICROUTE_IFACEINDEX 1780
#define MIB_STATICROUTE_INSTANCENUM 1781
#define MIB_STATICROUTE_FLAGS 1782
#define MIB_WLAN_CWMP_WLANCONFIG_INSTNUM 1783
//////////////////////////////////////////////////////////////////////////
#define MIB_CWMP_WLANCONF_ENABLED 1784
#define MIB_CWMP_WLANCONF_TBL_NUM 1785
#define MIB_CWMP_WLANCONF_TBL ((MIB_CWMP_WLANCONF_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_CWMP_WLANCONF_ADD ((MIB_CWMP_WLANCONF_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_CWMP_WLANCONF_DEL ((MIB_CWMP_WLANCONF_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_CWMP_WLANCONF_MOD ((MIB_CWMP_WLANCONF_TBL_NUM+3)|MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY) //brucehou
#define MIB_CWMP_WLANCONF_DELALL ((MIB_CWMP_WLANCONF_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MAX_CWMP_WLANCONF_NUM 12
#define MIB_CWMP_WLANCONF_INSTANCENUM 1790
#define MIB_CWMP_WLANCONF_ROOT_IDX 1791
#define MIB_CWMP_WLANCONF_VWLAN_IDX 1792
#define MIB_CWMP_WLANCONF_ISCONFIGURED 1793
#define MIB_CWMP_WLANCONF_RFBAND 1794
#define VLAN_WAN 2000
#define MIB_VLAN_WAN_ENALE VLAN_WAN + 1
#define MIB_VLAN_WAN_TAG VLAN_WAN + 2
#define MIB_VLAN_WAN_BRIDGE_ENABLE VLAN_WAN + 3
#define MIB_VLAN_WAN_BRIDGE_TAG VLAN_WAN + 4
#define MIB_VLAN_WAN_BRIDGE_PORT VLAN_WAN + 5
#define MIB_VLAN_WAN_BRIDGE_MULTICAST_ENABLE VLAN_WAN + 6
#define MIB_VLAN_WAN_BRIDGE_MULTICAST_TAG VLAN_WAN + 7
#define MIB_VLAN_WAN_HOST_ENABLE VLAN_WAN + 8
#define MIB_VLAN_WAN_HOST_TAG VLAN_WAN + 9
#define MIB_VLAN_WAN_HOST_PRI VLAN_WAN + 10
#define MIB_VLAN_WAN_WIFI_ROOT_ENABLE VLAN_WAN + 11
#define MIB_VLAN_WAN_WIFI_ROOT_TAG VLAN_WAN + 12
#define MIB_VLAN_WAN_WIFI_ROOT_PRI VLAN_WAN + 13
#define MIB_VLAN_WAN_WIFI_VAP0_ENABLE VLAN_WAN + 14
#define MIB_VLAN_WAN_WIFI_VAP0_TAG VLAN_WAN + 15
#define MIB_VLAN_WAN_WIFI_VAP0_PRI VLAN_WAN + 16
#define MIB_VLAN_WAN_WIFI_VAP1_ENABLE VLAN_WAN + 17
#define MIB_VLAN_WAN_WIFI_VAP1_TAG VLAN_WAN + 18
#define MIB_VLAN_WAN_WIFI_VAP1_PRI VLAN_WAN + 19
#define MIB_VLAN_WAN_WIFI_VAP2_ENABLE VLAN_WAN + 20
#define MIB_VLAN_WAN_WIFI_VAP2_TAG VLAN_WAN + 21
#define MIB_VLAN_WAN_WIFI_VAP2_PRI VLAN_WAN + 22
#define MIB_VLAN_WAN_WIFI_VAP3_ENABLE VLAN_WAN + 23
#define MIB_VLAN_WAN_WIFI_VAP3_TAG VLAN_WAN + 24
#define MIB_VLAN_WAN_WIFI_VAP3_PRI VLAN_WAN + 25
// Reserve 100 mib for vlan wan tag
#define MIB_VLAN_WAN_TAG_ID_END VLAN_WAN + 99 // 2099
#ifdef WLAN_PROFILE
#define WLAN_PROFILE_ID 2100
#define MIB_PROFILE_ENABLED1 (WLAN_PROFILE_ID+0)
#define MIB_PROFILE_NUM1 (WLAN_PROFILE_ID+1)
#define MIB_PROFILE_TBL1 ((WLAN_PROFILE_ID+2)|MIB_TABLE_LIST)
#define MIB_PROFILE_ADD1 ((WLAN_PROFILE_ID+3)|MIB_ADD_TBL_ENTRY)
#define MIB_PROFILE_DEL1 ((WLAN_PROFILE_ID+4)|MIB_DEL_TBL_ENTRY)
#define MIB_PROFILE_MOD1 ((WLAN_PROFILE_ID+4) | MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_PROFILE_DELALL1 ((WLAN_PROFILE_ID+5)|MIB_DELALL_TBL_ENTRY)
#define MIB_PROFILE_SSID (WLAN_PROFILE_ID+6)
#define MIB_PROFILE_ENC (WLAN_PROFILE_ID+7)
#define MIB_PROFILE_AUTH (WLAN_PROFILE_ID+8)
#define MIB_PROFILE_WPA_CIPHER (WLAN_PROFILE_ID+9)
#define MIB_PROFILE_WPA_PSK (WLAN_PROFILE_ID+10)
#define MIB_PROFILE_WEP_DEFAULT_KEY (WLAN_PROFILE_ID+11)
#define MIB_PROFILE_WEP_KEY1 (WLAN_PROFILE_ID+12)
#define MIB_PROFILE_WEP_KEY2 (WLAN_PROFILE_ID+13)
#define MIB_PROFILE_WEP_KEY3 (WLAN_PROFILE_ID+14)
#define MIB_PROFILE_WEP_KEY4 (WLAN_PROFILE_ID+15)
#define MIB_PROFILE_ENABLED2 (WLAN_PROFILE_ID+16)
#define MIB_PROFILE_WEP_KEY_TYPE (WLAN_PROFILE_ID+17)
#define MIB_PROFILE_PSK_FORMAT (WLAN_PROFILE_ID+18)
#define MIB_PROFILE_NUM2 (WLAN_PROFILE_ID+19)
#define MIB_PROFILE_TBL2 ((WLAN_PROFILE_ID+20)|MIB_TABLE_LIST)
#define MIB_PROFILE_ADD2 ((WLAN_PROFILE_ID+21)|MIB_ADD_TBL_ENTRY)
#define MIB_PROFILE_DEL2 ((WLAN_PROFILE_ID+22)|MIB_DEL_TBL_ENTRY)
#define MIB_PROFILE_MOD2 ((WLAN_PROFILE_ID+22) | MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_PROFILE_DELALL2 ((WLAN_PROFILE_ID+23)|MIB_DELALL_TBL_ENTRY)
#endif // WLAN_PROFILE
#define IP6_ADDR_LEN 16
#define MAX_PPP_NAME_LEN 63
//dzh end
#ifdef CONFIG_APP_TR069
/* define the len of the entities */
#define CWMP_LANCONF_PASSWD_LEN 64
#define CWMP_SERIALNUMBER_LEN 64
#define CWMP_COMMAND_KEY_LEN 32
/* define the len of the entities */
#define CWMP_PROVISION_CODE_LEN 32 //64 in spec
#define CWMP_ACS_URL_LEN 64 //256 in spec
#define CWMP_ACS_USERNAME_LEN 32 //256 in spec
#define CWMP_ACS_PASSWD_LEN 32 //256 in spec
#define CWMP_CONREQ_USERNAME_LEN 32 //256 in spec
#define CWMP_CONREQ_PASSWD_LEN 32 //256 in spec
#define CONN_REQ_PATH_LEN 32 //32 in spec
#define CWMP_KICK_URL 32 //64 in spec
#define CWMP_DOWNLOAD_URL 32 //64 in spec
#define CWMP_CERT_PASSWD_LEN 32 //64 in spec
#define CWMP_NOTIFY_LIST_LEN (2) //No limitation in spec
#define CWMP_UDP_CONN_REQ_ADDR_LEN 256
#define CWMP_STUN_SERVER_ADDR_LEN 256
#define CWMP_STUN_USERNAME_LEN 256
#define CWMP_STUN_PASSWORD_LEN 256
#define IP_ADDR_LEN 4
/* define the cwmp_flag */
#define CWMP_FLAG_DEBUG_MSG 0x01
#define CWMP_FLAG_CERT_AUTH 0x02
#define CWMP_FLAG_SENDGETRPC 0x04
#define CWMP_FLAG_SKIPMREBOOT 0x08
#define CWMP_FLAG_DELAY 0x10
#define CWMP_FLAG_AUTORUN 0x20
#define CWMP_FLAG_CTINFORMEXT 0x40
#define CWMP_FLAG_SELFREBOOT 0x80
/*flag for CWMP_FLAG2 setting*/
#define CWMP_FLAG2_DIS_CONREQ_AUTH 0x01 /*disable connection request authentication*/
#define CWMP_FLAG2_DEFAULT_WANIP_IN_INFORM 0x02 /*bring the default wan ip in the inform*/
#define CWMP_FLAG2_NULL_TO_SKIP_AUTH 0x04
/*action type for applying new values*/
#define CWMP_NONE 0
#define CWMP_START 1
#define CWMP_STOP 2
#define CWMP_RESTART 3
/*EC_xxxxx event must consist with those defined in cwmp_rpc.h*/
#define EC_X_CT_COM_ACCOUNT 0x10000 /*X_CT-COM_ACCOUNTCHANGE*/
#endif /*CONFIG_APP_TR069*/
#if defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B) || defined(CONFIG_RTL_8881A) || defined(CONFIG_WLAN_HAL_8197F)
/*new add since new platform rtl8196c*/
#define MIB_HW_TX_POWER_CCK_A 901
#define MIB_HW_TX_POWER_CCK_B 902
#define MIB_HW_TX_POWER_HT40_1S_A 903
#define MIB_HW_TX_POWER_HT40_1S_B 904
#define MIB_HW_TX_POWER_DIFF_HT40_2S 905
#define MIB_HW_TX_POWER_DIFF_HT20 906
#define MIB_HW_TX_POWER_DIFF_OFDM 907
#define MIB_HW_11N_RESERVED9 908
#define MIB_HW_11N_RESERVED10 909
#define MIB_HW_TX_POWER_5G_HT40_1S_A 910
#define MIB_HW_TX_POWER_5G_HT40_1S_B 911
#define MIB_HW_TX_POWER_DIFF_5G_HT40_2S 912
#define MIB_HW_TX_POWER_DIFF_5G_HT20 913
#define MIB_HW_TX_POWER_DIFF_5G_OFDM 914
/*new add end*/
#endif
#if defined(CONFIG_WLAN_HAL_8814AE) || defined(HAVE_RTK_4T4R_AC_SUPPORT)
#define MIB_HW_TX_POWER_CCK_C 2336
#define MIB_HW_TX_POWER_CCK_D 2337
#define MIB_HW_TX_POWER_HT40_1S_C 2338
#define MIB_HW_TX_POWER_HT40_1S_D 2339
#define MIB_HW_TX_POWER_5G_HT40_1S_C 2340
#define MIB_HW_TX_POWER_5G_HT40_1S_D 2341
#endif
#if defined(CONFIG_RTL_8812_SUPPORT) || defined(HAVE_RTK_AC_SUPPORT) || defined(HAVE_RTK_4T4R_AC_SUPPORT)
#define MIB_HW_TX_POWER_DIFF_20BW1S_OFDM1T_A 2200
#define MIB_HW_TX_POWER_DIFF_40BW2S_20BW2S_A 2201
#define MIB_HW_TX_POWER_DIFF_OFDM2T_CCK2T_A 2202
#define MIB_HW_TX_POWER_DIFF_40BW3S_20BW3S_A 2203
#define MIB_HW_TX_POWER_DIFF_OFDM3T_CCK3T_A 2204
#define MIB_HW_TX_POWER_DIFF_40BW4S_20BW4S_A 2205
#define MIB_HW_TX_POWER_DIFF_OFDM4T_CCK4T_A 2206
#define MIB_HW_TX_POWER_DIFF_5G_20BW1S_OFDM1T_A 2207
#define MIB_HW_TX_POWER_DIFF_5G_40BW2S_20BW2S_A 2208
#define MIB_HW_TX_POWER_DIFF_5G_40BW3S_20BW3S_A 2209
#define MIB_HW_TX_POWER_DIFF_5G_40BW4S_20BW4S_A 2210
#define MIB_HW_TX_POWER_DIFF_5G_RSVD_OFDM4T_A 2211
#define MIB_HW_TX_POWER_DIFF_5G_80BW1S_160BW1S_A 2212
#define MIB_HW_TX_POWER_DIFF_5G_80BW2S_160BW2S_A 2213
#define MIB_HW_TX_POWER_DIFF_5G_80BW3S_160BW3S_A 2214
#define MIB_HW_TX_POWER_DIFF_5G_80BW4S_160BW4S_A 2215
#define MIB_HW_TX_POWER_DIFF_20BW1S_OFDM1T_B 2220
#define MIB_HW_TX_POWER_DIFF_40BW2S_20BW2S_B 2221
#define MIB_HW_TX_POWER_DIFF_OFDM2T_CCK2T_B 2222
#define MIB_HW_TX_POWER_DIFF_40BW3S_20BW3S_B 2223
#define MIB_HW_TX_POWER_DIFF_OFDM3T_CCK3T_B 2224
#define MIB_HW_TX_POWER_DIFF_40BW4S_20BW4S_B 2225
#define MIB_HW_TX_POWER_DIFF_OFDM4T_CCK4T_B 2226
#define MIB_HW_TX_POWER_DIFF_5G_20BW1S_OFDM1T_B 2227
#define MIB_HW_TX_POWER_DIFF_5G_40BW2S_20BW2S_B 2228
#define MIB_HW_TX_POWER_DIFF_5G_40BW3S_20BW3S_B 2229
#define MIB_HW_TX_POWER_DIFF_5G_40BW4S_20BW4S_B 2230
#define MIB_HW_TX_POWER_DIFF_5G_RSVD_OFDM4T_B 2231
#define MIB_HW_TX_POWER_DIFF_5G_80BW1S_160BW1S_B 2232
#define MIB_HW_TX_POWER_DIFF_5G_80BW2S_160BW2S_B 2233
#define MIB_HW_TX_POWER_DIFF_5G_80BW3S_160BW3S_B 2234
#define MIB_HW_TX_POWER_DIFF_5G_80BW4S_160BW4S_B 2235
#endif
#if defined(CONFIG_WLAN_HAL_8814AE) || defined(HAVE_RTK_4T4R_AC_SUPPORT)
#define MIB_HW_TX_POWER_DIFF_20BW1S_OFDM1T_C 2300
#define MIB_HW_TX_POWER_DIFF_40BW2S_20BW2S_C 2301
#define MIB_HW_TX_POWER_DIFF_OFDM2T_CCK2T_C 2302
#define MIB_HW_TX_POWER_DIFF_40BW3S_20BW3S_C 2303
#define MIB_HW_TX_POWER_DIFF_OFDM3T_CCK3T_C 2304
#define MIB_HW_TX_POWER_DIFF_40BW4S_20BW4S_C 2305
#define MIB_HW_TX_POWER_DIFF_OFDM4T_CCK4T_C 2306
#define MIB_HW_TX_POWER_DIFF_5G_20BW1S_OFDM1T_C 2307
#define MIB_HW_TX_POWER_DIFF_5G_40BW2S_20BW2S_C 2308
#define MIB_HW_TX_POWER_DIFF_5G_40BW3S_20BW3S_C 2309
#define MIB_HW_TX_POWER_DIFF_5G_40BW4S_20BW4S_C 2310
#define MIB_HW_TX_POWER_DIFF_5G_RSVD_OFDM4T_C 2311
#define MIB_HW_TX_POWER_DIFF_5G_80BW1S_160BW1S_C 2312
#define MIB_HW_TX_POWER_DIFF_5G_80BW2S_160BW2S_C 2313
#define MIB_HW_TX_POWER_DIFF_5G_80BW3S_160BW3S_C 2314
#define MIB_HW_TX_POWER_DIFF_5G_80BW4S_160BW4S_C 2315
#define MIB_HW_TX_POWER_DIFF_20BW1S_OFDM1T_D 2320
#define MIB_HW_TX_POWER_DIFF_40BW2S_20BW2S_D 2321
#define MIB_HW_TX_POWER_DIFF_OFDM2T_CCK2T_D 2322
#define MIB_HW_TX_POWER_DIFF_40BW3S_20BW3S_D 2323
#define MIB_HW_TX_POWER_DIFF_OFDM3T_CCK3T_D 2324
#define MIB_HW_TX_POWER_DIFF_40BW4S_20BW4S_D 2325
#define MIB_HW_TX_POWER_DIFF_OFDM4T_CCK4T_D 2326
#define MIB_HW_TX_POWER_DIFF_5G_20BW1S_OFDM1T_D 2327
#define MIB_HW_TX_POWER_DIFF_5G_40BW2S_20BW2S_D 2328
#define MIB_HW_TX_POWER_DIFF_5G_40BW3S_20BW3S_D 2329
#define MIB_HW_TX_POWER_DIFF_5G_40BW4S_20BW4S_D 2330
#define MIB_HW_TX_POWER_DIFF_5G_RSVD_OFDM4T_D 2331
#define MIB_HW_TX_POWER_DIFF_5G_80BW1S_160BW1S_D 2332
#define MIB_HW_TX_POWER_DIFF_5G_80BW2S_160BW2S_D 2333
#define MIB_HW_TX_POWER_DIFF_5G_80BW3S_160BW3S_D 2334
#define MIB_HW_TX_POWER_DIFF_5G_80BW4S_160BW4S_D 2335
#endif
#define MIB_WLAN_RETRY_LIMIT 2252
#define MIB_WLAN_UAPSD_ENABLED 2253
#define MIB_WLAN_REGULATORY_DOMAIN 2254
#ifdef SAMBA_WEB_SUPPORT
#define MIB_STORAGE_USER_TBL_NUM 2300
#define MIB_STORAGE_USER_TBL ((MIB_STORAGE_USER_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_STORAGE_USER_ADD ((MIB_STORAGE_USER_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_STORAGE_USER_DEL ((MIB_STORAGE_USER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_STORAGE_USER_MOD ((MIB_STORAGE_USER_TBL_NUM+3)|MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_STORAGE_USER_DELALL ((MIB_STORAGE_USER_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_STORAGE_GROUP_TBL_NUM 2400
#define MIB_STORAGE_GROUP_TBL ((MIB_STORAGE_GROUP_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_STORAGE_GROUP_ADD ((MIB_STORAGE_GROUP_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_STORAGE_GROUP_DEL ((MIB_STORAGE_GROUP_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_STORAGE_GROUP_MOD ((MIB_STORAGE_GROUP_TBL_NUM+3)|MIB_DEL_TBL_ENTRY | MIB_MOD_TBL_ENTRY)
#define MIB_STORAGE_GROUP_DELALL ((MIB_STORAGE_GROUP_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_STORAGE_USER_NAME 2501
#define MIB_STORAGE_USER_PASSWD 2502
#define MIB_STORAGE_USER_GROUP 2503
#define MIB_STORAGE_GROUP_NAME 2511
#define MIB_STORAGE_GROUP_ACCESS 2512
#define MIB_STORAGE_GROUP_SHAREFOLDER_FLAG 2513
#define MIB_STORAGE_GROUP_DISPLAYNAME 2514
#define MIB_STORAGE_GROUP_SHAREFOLDER 2515
#define MIB_STORAGE_ANON_ENABLE 2520
//#define MIB_STORAGE_ANON_FTP_ENABLE 2521
#define MIB_STORAGE_ANON_DISK_ENABLE 2522
#define MIB_STORAGE_FOLDER_LOCAL 2523
#define MIB_STORAGE_GROUP_EDIT_INDEX 2524
#define MIB_STORAGE_USER_EDIT_INDEX 2525
#define MIB_STORAGE_FOLDER_EDIT_NAME 2526
#endif
#ifdef CONFIG_RTL_ETH_802DOT1X_SUPPORT
#define MIB_ELAN_RS_IP 3032
#define MIB_ELAN_RS_PORT 3033
#define MIB_ELAN_RS_PASSWORD 3034
#define MIB_ELAN_ENABLE_1X 3035
#define MIB_ELAN_RS_REAUTH_TO 3036
#define MIB_ELAN_ACCOUNT_RS_ENABLED 3039
#define MIB_ELAN_ACCOUNT_RS_IP 3040
#define MIB_ELAN_ACCOUNT_RS_PORT 3041
#define MIB_ELAN_ACCOUNT_RS_PASSWORD 3042
#define MIB_ELAN_ACCOUNT_RS_UPDATE_ENABLED 3043
#define MIB_ELAN_ACCOUNT_RS_UPDATE_DELAY 3044
#define MIB_ELAN_MAC_AUTH_ENABLED 3045
#define MIB_ELAN_RS_MAXRETRY 3046
#define MIB_ELAN_RS_INTERVAL_TIME 3047
#define MIB_ELAN_ACCOUNT_RS_MAXRETRY 3048
#define MIB_ELAN_ACCOUNT_RS_INTERVAL_TIME 3049
#define MIB_ELAN_DOT1X_MODE 3050
#define MIB_ELAN_DOT1X_PROXY_TYPE 3051
#define MIB_ELAN_DOT1X_CLIENT_MODE_PORT_MASK 3052
#define MIB_ELAN_DOT1X_PROXY_MODE_PORT_MASK 3053
#define MIB_ELAN_INACTIVITY_TIME 3054
#define MIB_ELAN_EAPOL_UNICAST_ENABLED 3055
#ifdef CONFIG_RTL_ETH_802DOT1X_CLIENT_MODE_SUPPORT
#define MIB_ELAN_EAP_TYPE 3056
#define MIB_ELAN_EAP_INSIDE_TYPE 3057
#define MIB_ELAN_EAP_USER_ID 3058
#define MIB_ELAN_RS_USER_NAME 3059
#define MIB_ELAN_RS_USER_PASSWD 3060
#define MIB_ELAN_RS_USER_CERT_PASSWD 3061
#define MIB_ELAN_EAP_PHASE2_TYPE 3062
#define MIB_ELAN_PHASE2_EAP_METHOD 3063
#endif
typedef enum {ETH_DOT1X_CLIENT_MODE=1,ETH_DOT1X_PROXY_MODE=2}ETH_DOT1X_MODE_T;
#define MIB_ELAN_DOT1X_PORT_ENABLED 3070
#define MIB_ELAN_DOT1X_PORT_NUMBER 3071
#define MIB_ELAN_DOT1X_SERVER_PORT 3072
#define MIB_ELAN_DOT1X_TBL_NUM 3073
#define MIB_ELAN_DOT1X_TBL ((MIB_ELAN_DOT1X_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_ELAN_DOT1X_ADD ((MIB_ELAN_DOT1X_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_ELAN_DOT1X_DEL ((MIB_ELAN_DOT1X_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_ELAN_DOT1X_DELALL ((MIB_ELAN_DOT1X_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MAX_ELAN_DOT1X_PORTNUM (5) /* eth0~eth4 */
#define ETH_DOT1X_CLIENT_PORT (4)
#define ETH_DOT1X_PROXY_SNOOPING_MODE_ENABLE_BIT (1<<0)
#define ETH_DOT1X_CLIENT_MODE_ENABLE_BIT (1<<1)
#define ETH_DOT1X_PROXY_MODE_ENABLE_BIT (1<<0)
#define ETH_DOT1X_CLIENT_MODE_BIT (1<<0)
#define ETH_DOT1X_PROXY_MODE_BIT (1<<1)
#define ETH_DOT1X_SNOOPING_MODE_BIT (1<<2)
#endif
#define MIB_WLAN_RETRY_LIMIT 2252
#define MIB_WLAN_UAPSD_ENABLED 2253
#define MIB_WLAN_REGULATORY_DOMAIN 2254
#define MAX_L2TP_BUFF_LEN 50
#define MIB_PPP_SESSION_NUM 940
#define MIB_PPP_SERVER_MAC 941
#define MIB_L2TP_PAYLOAD 942
#define MIB_L2TP_PAYLOAD_LENGTH 943
#define MIB_L2TP_NS 944
#define MIB_DHCP_LEASE_TIME 945
/* ==== CAPWAP start =======*/
#ifdef RTK_CAPWAP // currently use 2300~2329
#define MIB_CAPWAP_MODE 2300
typedef enum {
CAPWAP_DISABLE = 0,
CAPWAP_WTP_ENABLE = (1<<0),
CAPWAP_AC_ENABLE = (1<<1),
CAPWAP_BOTH_ENABLE = (CAPWAP_WTP_ENABLE | CAPWAP_AC_ENABLE),
} CAPWAP_MODE_T;
// for WTP (if WTP enabled or both enabled)
#define MIB_CAPWAP_WTP_ID 2301 // 0 is invalid
#define MIB_CAPWAP_AC_IP 2302
// for AC (if AC enabled or both enabled)
#define MIB_CAPWAP_WTP_CONFIG_TBL_NUM 2305 // <= MAX_CAPWAP_WTP_NUM
#define MIB_CAPWAP_WTP_CONFIG_TBL ((MIB_CAPWAP_WTP_CONFIG_TBL_NUM+1)|MIB_TABLE_LIST)
#define MIB_CAPWAP_WTP_CONFIG_ADD ((MIB_CAPWAP_WTP_CONFIG_TBL_NUM+2)|MIB_ADD_TBL_ENTRY)
#define MIB_CAPWAP_WTP_CONFIG_DEL ((MIB_CAPWAP_WTP_CONFIG_TBL_NUM+3)|MIB_DEL_TBL_ENTRY)
#define MIB_CAPWAP_WTP_CONFIG_DELALL ((MIB_CAPWAP_WTP_CONFIG_TBL_NUM+4)|MIB_DELALL_TBL_ENTRY)
#define MIB_CAPWAP_CFG_WTP_ID 2310 // 0 is invalid
#define MIB_CAPWAP_CFG_RADIO_NUM 2311 // radios per wtp <= MAX_CAPWAP_RADIO_NUM
#define MIB_CAPWAP_CFG_WLAN_NUM 2312 // wlans per radio <= MAX_CAPWAP_WLAN_NUM
#define MIB_CAPWAP_CFG_RFPOWER_SCALE 2313 // for multiple radios
/*
typedef enum {
POWER_SCALE_100 = 0,
POWER_SCALE_70 = 1,
POWER_SCALE_50 = 2,
POWER_SCALE_35 = 3,
POWER_SCALE_15 = 4,
} WLAN_POWER_SCALE_T;
*/
#define MIB_CAPWAP_CFG_CHANNEL 2314 // for multiple radios
#define MIB_CAPWAP_CFG_WLAN 2315 // for multiple wlans (vaps)
#define MIB_CAPWAP_CFG_WLAN_ENABLE 2320 // for each wlan (vap)
#define MIB_CAPWAP_CFG_KEY_TYPE 2321 // for each wlan (vap)
typedef enum {
CAPWAP_KEY_TYPE_NONE = 0,
CAPWAP_KEY_TYPE_SHARED_WEP40,
CAPWAP_KEY_TYPE_SHARED_WEP104,
CAPWAP_KEY_TYPE_SHARED_WPA_AES,
CAPWAP_KEY_TYPE_SHARED_WPA_TKIP,
CAPWAP_KEY_TYPE_SHARED_WPA2_AES,
CAPWAP_KEY_TYPE_SHARED_WPA2_TKIP,
} CAPWAP_KEY_TYPE_T;
#define MIB_CAPWAP_CFG_PSK_FORMAT 2322 // for each wlan (vap)
typedef enum {
PSK_FORMAT_PASSPHRASE = 0,
PSK_FORMAT_HEX = 1,
}PASK_FORMAT_T;
#define MIB_CAPWAP_CFG_KEY 2323 // for each wlan (vap)
#define MIB_CAPWAP_CFG_SSID 2324 // for each wlan (vap)
#define MIB_CAPWAP_CFG_BSSID 2325 // for each wlan (vap)
#define MAX_CAPWAP_WTP_NUM 4 // max wtps for one AC
#define MAX_CAPWAP_RADIO_NUM 2 // radios per wtp
#define MAX_CAPWAP_WLAN_NUM 5 // max wlans per radio
#endif //#ifdef RTK_CAPWAP
/* ==== CAPWAP end =======*/
// MIB value and constant
#ifdef CONFIG_IPV6
#define IFNAMESIZE 32
#define MAX_PREFIX_NUM 2
#define RR_MAX_NUM 2
#define NAMSIZE 32
#define MAX_DNAME_SIZE 128
#endif
#define MAX_REGULATORY_DOMAIN 4
#define MAX_SSID_LEN 33
#define WEP64_KEY_LEN 5
#define WEP128_KEY_LEN 13
#define MAX_NAME_LEN 31
#define COMMENT_LEN 21
#define MAX_CCK_CHAN_NUM 14
#define MAX_OFDM_CHAN_NUM 162
#define MAX_SERVER_DOMAIN_LEN 32
#define MAX_2G_CHANNEL_NUM_MIB 14
#define MAX_5G_CHANNEL_NUM_MIB 196
#if defined(CONFIG_RTL_8812_SUPPORT) || defined(HAVE_RTK_AC_SUPPORT) || defined(HAVE_RTK_4T4R_AC_SUPPORT)
#define MAX_5G_DIFF_NUM 14
#endif
#define MIN_PSK_LEN 8
#define MAX_PSK_LEN 64
#define MAX_RS_PASS_LEN 65
#define MAX_DOMAIN_LEN 51
#define MAX_NAME_LEN_LONG 129
#define TX_RATE_1M 0x01
#define TX_RATE_2M 0x02
#define TX_RATE_5M 0x04
#define TX_RATE_11M 0x08
#define TX_RATE_6M 0x10
#define TX_RATE_9M 0x20
#define TX_RATE_12M 0x40
#define TX_RATE_18M 0x80
#define TX_RATE_24M 0x100
#define TX_RATE_36M 0x200
#define TX_RATE_48M 0x400
#define TX_RATE_54M 0x800
#define MAX_WLAN_AC_NUM 20
//#if defined(CONFIG_RTK_MESH) && defined(_MESH_ACL_ENABLE_) Keith remove
#define MAX_MESH_ACL_NUM MAX_WLAN_AC_NUM
//#endif Keith remove
#define MAX_CERTROOT_NUM 5
#define MAX_CERTUSER_NUM 5
#ifdef HOME_GATEWAY
#define MAX_FILTER_NUM 20
#define MAX_URLFILTER_NUM 16
#ifdef VPN_SUPPORT
#define MAX_TUNNEL_NUM 10
#define MAX_RSA_FILE_LEN 2048
#define MAX_RSA_KEY_LEN 380
#define MAX_ENCRKEY_LEN 49
#define MAX_AUTHKEY_LEN 41
#define MAX_SPI_LEN 5
#endif
#define MAX_QOS_RULE_NUM 10
#endif
#define MAX_ROUTE_NUM 10
#define MAX_DHCP_RSVD_IP_NUM 20
#define MAXFNAME 60
//#ifdef CONFIG_RTL8196B_GW_8M
//#define MAX_WDS_NUM 4
//#else
#define MAX_WDS_NUM 8
//#endif
#ifdef WLAN_EASY_CONFIG
#define MAX_ACF_KEY_LEN 64
#define MAX_ACF_DIGEST_LEN 32
#endif
//#ifdef SNMP_SUPPORT Keith remove
#define MAX_SNMP_COMMUNITY_LEN 64
//#endif Keith remove
#if defined(WIFI_SIMPLE_CONFIG) || defined(HAVE_WIFI_SIMPLE_CONFIG)
#define PIN_LEN 8
#endif
#define IFNAMSIZE 16
#if defined(CONFIG_RTL_8198_AP_ROOT) && defined(GMII_ENABLED) || defined(CONFIG_RTK_VLAN_NEW_FEATURE)
#define MAX_IFACE_VLAN_CONFIG (7+5*2) /* eth0~eth6, 2*(wlanX,wlanX-va0~wlanX-va3)no wds and vxd*/
#else
#define MAX_IFACE_VLAN_CONFIG (6+5*2) /* eth0~eth5, 2*(wlanX,wlanX-va0~wlanX-va3)no wds and vxd*/
#endif
#ifdef WLAN_PROFILE
#define MAX_WLAN_PROFILE_NUM 5
#define PROFILE_BOTTOM_UP
#endif
#if defined(UNIVERSAL_REPEATER)
#define CONFIG_SMART_REPEATER
//#define CONFIG_REPEATER_WPS_SUPPORT
//#define CONFIG_WPS_EITHER_AP_OR_VXD //either one. When enable repeater, the wps is working for virtual client. Otherwise wps is working for root AP.
//#define CONFIG_ONLY_SUPPORT_CLIENT_REPEATER_WPS //if and only if root is client mode, the virtual vxd support wps
#endif
#define NEW_SCHEDULE_SUPPORT
#if defined(NEW_SCHEDULE_SUPPORT)
#define MAX_SCHEDULE_NUM 10
#else
/*Brad add for schedule*/
#define MAX_SCHEDULE_NUM 1
#endif
/* # keith: add l2tp support. 20080515 */
#define MAX_PPTP_HOST_NAME_LEN 64
#ifdef SAMBA_WEB_SUPPORT
#define MAX_USER_NUM 10
#define MAX_GROUP_NUM 10
#define MAX_USER_NAME_LEN 10
#define MAX_USER_PASSWD_LEN 10
#define MAX_GROUP_NAME_LEN 10
#define MAX_FOLDER_NAME_LEN 30
#define MAX_DISPLAY_NAME_LEN 10
#endif
#ifdef __mips__
#ifdef CONFIG_MTD_NAND
#define FLASH_DEVICE_NAME ("/hw_setting/hw.bin")
#define FLASH_DEVICE_NAME1 ("/hw_setting/hw1.bin")
#else
#define FLASH_DEVICE_NAME ("/dev/mtdblock0")
#define FLASH_DEVICE_NAME1 ("/dev/mtdblock1")
#endif
#else
#define FLASH_DEVICE_NAME ("setting.bin")
#define FLASH_DEVICE_NAME1 ("setting1.bin")
#endif
#ifdef CONFIG_RTL_FLASH_MAPPING_ENABLE
#define HW_SETTING_OFFSET CONFIG_RTL_HW_SETTING_OFFSET
#define DEFAULT_SETTING_OFFSET CONFIG_RTL_DEFAULT_SETTING_OFFSET
#define CURRENT_SETTING_OFFSET CONFIG_RTL_CURRENT_SETTING_OFFSET
#define WEB_PAGE_OFFSET CONFIG_RTL_WEB_PAGES_OFFSET
#define CODE_IMAGE_OFFSET CONFIG_RTL_CODE_IMAGE_OFFSET
#define ROOT_IMAGE_OFFSET CONFIG_RTL_ROOT_IMAGE_OFFSET
#else
#define HW_SETTING_OFFSET 0x6000
#define DEFAULT_SETTING_OFFSET 0x8000
#define CURRENT_SETTING_OFFSET 0xc000
#define WEB_PAGE_OFFSET 0x10000
#define CODE_IMAGE_OFFSET 0x20000
#define ROOT_IMAGE_OFFSET 0xE0000
#endif
#ifdef HOME_GATEWAY
#define CERT_PAGE_OFFSET 0x3f0000
#else
#define CERT_PAGE_OFFSET 0x1f0000
#endif
#ifdef CONFIG_RTL_FLASH_MAPPING_ENABLE
#define HW_SETTING_SECTOR_LEN (CONFIG_RTL_DEFAULT_SETTING_OFFSET-CONFIG_RTL_HW_SETTING_OFFSET)
#define DEFAULT_SETTING_SECTOR_LEN (CONFIG_RTL_CURRENT_SETTING_OFFSET-CONFIG_RTL_DEFAULT_SETTING_OFFSET)
#define CURRENT_SETTING_SECTOR_LEN (CONFIG_RTL_WEB_PAGES_OFFSET-CONFIG_RTL_CURRENT_SETTING_OFFSET)
#else
#define HW_SETTING_SECTOR_LEN (0x8000-0x6000)
#define DEFAULT_SETTING_SECTOR_LEN (0xc000-0x8000)
#define CURRENT_SETTING_SECTOR_LEN (0x10000-0xc000)
#endif
#ifndef WIN32
#define __PACK__ __attribute__ ((packed))
#else
#define __PACK__
#endif
/* Config/fw image file header */
typedef enum { HW_SETTING=1, DEFAULT_SETTING=2, CURRENT_SETTING=4 } CONFIG_DATA_T;
#if defined(CONFIG_RTL_8196B)
// update tag
#define HW_SETTING_HEADER_TAG ((char *)"h6")
//Brad add for distinguish ap(da:default setting for ap) or gateway(dg: default setting for gateway) platform
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6V")
#elif (defined(HOME_GATEWAY))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6G")
#else
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6A")
#endif
//Brad add for distinguish ap(ca:current setting for ap) or gateway(cg: current setting for gateway) platform
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define CURRENT_SETTING_HEADER_TAG ((char *)"6v")
#elif (defined(HOME_GATEWAY))
#define CURRENT_SETTING_HEADER_TAG ((char *)"6g")
#else
#define CURRENT_SETTING_HEADER_TAG ((char *)"6a")
#endif
// force tag
#define HW_SETTING_HEADER_FORCE_TAG ((char *)"Hf")
#define DEFAULT_SETTING_HEADER_FORCE_TAG ((char *)"Df")
#define CURRENT_SETTING_HEADER_FORCE_TAG ((char *)"Cf")
// upgrade
#define HW_SETTING_HEADER_UPGRADE_TAG ((char *)"Hu")
#define DEFAULT_SETTING_HEADER_UPGRADE_TAG ((char *)"Du")
#define CURRENT_SETTING_HEADER_UPGRADE_TAG ((char *)"Cu")
#elif defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B) || defined(CONFIG_RTL_8197F)
// update tag
#define HW_SETTING_HEADER_TAG ((char *)"H6")
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6V")
#elif (defined(HOME_GATEWAY))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6G")
#else
#define DEFAULT_SETTING_HEADER_TAG ((char *)"6A")
#endif
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define CURRENT_SETTING_HEADER_TAG ((char *)"6v")
#elif (defined(HOME_GATEWAY))
#define CURRENT_SETTING_HEADER_TAG ((char *)"6g")
#else
#define CURRENT_SETTING_HEADER_TAG ((char *)"6a")
#endif
// force tag
#define HW_SETTING_HEADER_FORCE_TAG ((char *)"Hf")
#define DEFAULT_SETTING_HEADER_FORCE_TAG ((char *)"Df")
#define CURRENT_SETTING_HEADER_FORCE_TAG ((char *)"Cf")
// upgrade
#define HW_SETTING_HEADER_UPGRADE_TAG ((char *)"Hu")
#define DEFAULT_SETTING_HEADER_UPGRADE_TAG ((char *)"Du")
#define CURRENT_SETTING_HEADER_UPGRADE_TAG ((char *)"Cu")
#else
// update tag
#define HW_SETTING_HEADER_TAG ((char *)"hs")
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"dv")
#elif (defined(HOME_GATEWAY))
#define DEFAULT_SETTING_HEADER_TAG ((char *)"dg")
#else
#define DEFAULT_SETTING_HEADER_TAG ((char *)"da")
#endif
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define CURRENT_SETTING_HEADER_TAG ((char *)"cv")
#elif (defined(HOME_GATEWAY))
#define CURRENT_SETTING_HEADER_TAG ((char *)"cg")
#else
#define CURRENT_SETTING_HEADER_TAG ((char *)"ca")
#endif
// force tag
#define HW_SETTING_HEADER_FORCE_TAG ((char *)"hf")
#define DEFAULT_SETTING_HEADER_FORCE_TAG ((char *)"df")
#define CURRENT_SETTING_HEADER_FORCE_TAG ((char *)"cf")
// upgrade
#define HW_SETTING_HEADER_UPGRADE_TAG ((char *)"hu")
#define DEFAULT_SETTING_HEADER_UPGRADE_TAG ((char *)"du")
#define CURRENT_SETTING_HEADER_UPGRADE_TAG ((char *)"cu")
#endif //#if defined(CONFIG_RTL_8196B)
#if 0//def CONFIG_RTL8196B_GW_8M
#undef DEFAULT_SETTING_HEADER_TAG
#define DEFAULT_SETTING_HEADER_TAG ((char *)"61")
#undef CURRENT_SETTING_HEADER_TAG
#define CURRENT_SETTING_HEADER_TAG ((char *)"62")
#endif
#define TAG_LEN 2
#if defined(CONFIG_RTL_8196B)
#define HW_SETTING_VER 1 // hw setting version
#define DEFAULT_SETTING_VER 2 // default setting version
#define CURRENT_SETTING_VER DEFAULT_SETTING_VER // current setting version
#elif defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B) || defined(CONFIG_RTL_8197F)
#define HW_SETTING_VER 1 // hw setting version
#define DEFAULT_SETTING_VER 1 // default setting version
#define CURRENT_SETTING_VER DEFAULT_SETTING_VER // current setting version
#else
#define HW_SETTING_VER 3 // hw setting version
#define DEFAULT_SETTING_VER 4 // default setting version
#define CURRENT_SETTING_VER DEFAULT_SETTING_VER // current setting version
#endif
#if defined(CONFIG_RTL_8196B)
#define FW_HEADER_WITH_ROOT ((char *)"cr6b")
#define FW_HEADER ((char *)"cs6b")
#elif defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B)
#define FW_HEADER_WITH_ROOT ((char *)"cr6c")
#define FW_HEADER ((char *)"cs6c")
#else
#define FW_HEADER_WITH_ROOT ((char *)"csro")
#define FW_HEADER ((char *)"csys")
#endif //#if defined(CONFIG_RTL_8196B)
#if defined(CONFIG_RTL_8196B)
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define WEB_HEADER ((char *)"w6bv")
#elif (defined(HOME_GATEWAY))
#define WEB_HEADER ((char *)"w6bg")
#else
#define WEB_HEADER ((char *)"w6ba")
#endif
#elif defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B)
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define WEB_HEADER ((char *)"w6cv")
#elif (defined(HOME_GATEWAY))
#define WEB_HEADER ((char *)"w6cg")
#else
#define WEB_HEADER ((char *)"w6ca")
#endif
#else
#if (defined(HOME_GATEWAY) && defined(VPN_SUPPORT))
#define WEB_HEADER ((char *)"webv")
#elif (defined(HOME_GATEWAY))
#define WEB_HEADER ((char *)"webg")
#else
#define WEB_HEADER ((char *)"weba")
#endif
#endif //#if defined(CONFIG_RTL_8196B)
#if defined(CONFIG_RTL_8196B)
#define ROOT_HEADER ((char *)"r6br")
#elif defined(CONFIG_RTL_8198C)||defined(CONFIG_RTL_8196C) || defined(CONFIG_RTL_8198) || defined(CONFIG_RTL_819XD) || defined(CONFIG_RTL_8196E) || defined(CONFIG_RTL_8198B)
#define ROOT_HEADER ((char *)"r6cr")
#else
#define ROOT_HEADER ((char *)"root")
#endif //#if defined(CONFIG_RTL_8196B)
#define CERT_HEADER ((char *)"cert")
#define BOOT_HEADER ((char *)"boot")
#define ALL_HEADER ((char *)"allp")
#define SIGNATURE_LEN 4
/* wlan driver ioctl id */
#define SIOCGIWRTLSTAINFO 0x8B30 // get station table information
#define SIOCGIWRTLSTANUM 0x8B31 // get the number of stations in table
#define SIOCGIWRTLSCANREQ 0x8B33 // scan request
#define SIOCGIWRTLGETBSSDB 0x8B34 // get bss data base
#define SIOCGIWRTLJOINREQ 0x8B35 // join request
#define SIOCGIWRTLJOINREQSTATUS 0x8B36 // get status of join request
#define SIOCGIWRTLGETBSSINFO 0x8B37 // get currnet bss info
#define SIOCGIWRTLGETWDSINFO 0x8B38
#define SIOCGMISCDATA 0x8B48 // get misc data
/*for P2P_SUPPORT*/
#define SIOCP2PSCANREQ 0x8BD2 // p2p scan request
#define SIOCP2PGETRESULT 0x8BD3 // get p2p discovery result
#define SIOCP2PPROVREQ 0x8BD4 // issue provision discovery request
#define SIOCP2WSCMETHODCONF 0x8BD5 // report event and state
#define SIOCP2PPGETEVNIND 0x8BD6 // report event and state
#define SIOCP2P_WSC_REPORT_STATE 0x8BD7
#define SIOCP2P_REPORT_CLIENT_STATE 0x8BD8 // report client connect state
//=========add for MESH=========
//#ifdef CONFIG_RTK_MESH Keith remove
// by GANTOE for site survey 2008/12/26
#define SIOCJOINMESH 0x8B94
#define SIOCCHECKMESHLINK 0x8B95
//#endif Keith remove
//=========add for MESH=========
#define MAC_ADDR_LEN 6
#define MAX_STA_NUM 64 // max support sta number
/* flag of sta info */
#define STA_INFO_FLAG_AUTH_OPEN 0x01
#define STA_INFO_FLAG_AUTH_WEP 0x02
#define STA_INFO_FLAG_ASOC 0x04
#define STA_INFO_FLAG_ASLEEP 0x08
// bit value for hw board id
#if 0
// Old code and no longer used
#define ETH_PHY_TYPE 1
#define BOOT_PORT_SELECT 2
#define USE_ETH0_WAN 4
#endif
#define WLAN_RF_2T2R 1
#ifdef WIFI_SIMPLE_CONFIG
enum { WSC_AUTH_OPEN=1, WSC_AUTH_WPAPSK=2, WSC_AUTH_SHARED=4, WSC_AUTH_WPA=8, WSC_AUTH_WPA2=0x10, WSC_AUTH_WPA2PSK=0x20, WSC_AUTH_WPA2PSKMIXED=0x22 };
enum { WSC_ENCRYPT_NONE=1, WSC_ENCRYPT_WEP=2, WSC_ENCRYPT_TKIP=4, WSC_ENCRYPT_AES=8, WSC_ENCRYPT_TKIPAES=12 };
enum {
CONFIG_METHOD_ETH=0x2,
CONFIG_METHOD_PIN=0x4,
CONFIG_METHOD_DISPLAY=0x8 ,
CONFIG_METHOD_PBC=0x80 ,
CONFIG_METHOD_KEYPAD=0x100
};
enum { CONFIG_BY_INTERNAL_REGISTRAR=1, CONFIG_BY_EXTERNAL_REGISTRAR=2};
#endif
typedef enum {
ENCRYPT_WPA_TKIP = 2,
ENCRYPT_WPA_AES = 3,
ENCRYPT_WPA2_AES = 4,
ENCRYPT_WPA2_TKIP = 5,
} WPAENCRYPT_T;
typedef enum { ENCRYPT_DISABLED=0, ENCRYPT_WEP=1, ENCRYPT_WPA=2, ENCRYPT_WPA2=4, ENCRYPT_WPA2_MIXED=6 ,ENCRYPT_WAPI=7} ENCRYPT_T;
typedef enum { WDS_ENCRYPT_DISABLED=0, WDS_ENCRYPT_WEP64=1, WDS_ENCRYPT_WEP128=2, WDS_ENCRYPT_TKIP=3, WDS_ENCRYPT_AES=4} WDS_ENCRYPT_T;
typedef enum { SUPP_NONWPA_NONE=0,SUPP_NONWPA_WEP=1,SUPP_NONWPA_1X=2} SUPP_NONWAP_T;
typedef enum { WPA_AUTH_AUTO=1, WPA_AUTH_PSK=2 } WPA_AUTH_T;
typedef enum { WAPI_AUTH_AUTO=1, WAPI_AUTH_PSK=2 } WAPI_AUTH_T;
typedef enum { WPA_CIPHER_TKIP=1, WPA_CIPHER_AES=2, WPA_CIPHER_MIXED=3 } WPA_CIPHER_T;
typedef enum { WEP_DISABLED=0, WEP64=1, WEP128=2 } WEP_T;
typedef enum { KEY_ASCII=0, KEY_HEX } KEY_TYPE_T;
typedef enum { LONG_PREAMBLE=0, SHORT_PREAMBLE=1 } PREAMBLE_T;
typedef enum { DHCP_DISABLED=0, DHCP_CLIENT=1, DHCP_SERVER=2, PPPOE=3, PPTP=4, DHCP_RELAY=5,L2TP=6, DHCP_AUTO=15 , USB3G=16, AFTR=17, DHCP_AUTO_WAN=19, DHCP_NONE=99 } DHCP_T; /* # keith: add l2tp support. 20080515 */
typedef enum { DHCP_LAN_NONE=0, DHCP_LAN_CLIENT=1, DHCP_LAN_SERVER=2, DHCP_LAN_RELAY=3 } DHCP_TYPE_T; //keith add. LAN SIDE DHCP TYPE
typedef enum { GATEWAY_MODE=0, BRIDGE_MODE=1, WISP_MODE=2 } OPMODE_T;
typedef enum { DISABLE_MODE=0, RIP1_MODE=1, RIP2_MODE=2 } RIP_OPMODE_T;
#ifdef RIP6_SUPPORT
typedef enum { RIP6_DISABLE=0, RIP6_ENABLE=1 } RIP6_OPMODE_T;
#endif
typedef enum { FCC=1, IC, ETSI, SPAIN, FRANCE, MKK } REG_DOMAIN_T;
typedef enum { AUTH_OPEN=0, AUTH_SHARED, AUTH_BOTH } AUTH_TYPE_T;
typedef enum { DNS_AUTO=0, DNS_MANUAL } DNS_TYPE_T;
#if defined(CONFIG_DYNAMIC_WAN_IP)
typedef enum { DYNAMIC_IP=0, STATIC_IP } WAN_IP_TYPE_T;
#endif
typedef enum { CONTINUOUS=0, CONNECT_ON_DEMAND, MANUAL } PPP_CONNECT_TYPE_T;
typedef enum { RF_INTERSIL=1, RF_RFMD=2, RF_PHILIP=3, RF_MAXIM=4, RF_GCT=5,
RF_MAXIM_AG=6, RF_ZEBRA=7, RF_8255=8 } RF_TYPE_T;
typedef enum { LED_TX_RX=0, LED_LINK_TXRX=1, LED_LINKTXRX=2 } LED_TYPE_T;
typedef enum { VLAN_FORWARD_DISABLED=0, VLAN_FORWARD_BRIDGE=1, VLAN_FORWARD_NAT=2 } VLAN_FORWARD_TYPE_T;
typedef enum { CHIP_UNKNOWN=0, CHIP_RTL8188C=1, CHIP_RTL8192C=2, CHIP_RTL8192D=3, CHIP_RTL8192E=4,CHIP_RTL8188E=5, } CHIP_VERSION_T;
typedef enum {
AP_MODE=0,
CLIENT_MODE=1,
WDS_MODE=2,
AP_WDS_MODE=3,
AP_MESH_MODE=4,
MESH_MODE=5,
MP_MODE=7,
P2P_SUPPORT_MODE=8
} WLAN_MODE_T;
//=========add for MESH=========
typedef enum { INFRASTRUCTURE=0, ADHOC=1 } NETWORK_TYPE_T;
typedef enum { BAND_11B=1, BAND_11G=2, BAND_11BG=3, BAND_11A=4, BAND_11N=8, BAND_5G_11AN=12,
BAND_5G_11AC=64,BAND_5G_11AAC=68,BAND_5G_11NAC=72,BAND_5G_11ANAC=76} BAND_TYPE_T;
typedef enum { DISABLED=0, A_MPDU=1, A_MSDU=2, A_MIXED=3} AGGREGATION_MODE_T; // GANTOE & epopen: DISABLED=0 original is DISABLE=0, Because conflict with ../../auth/include/1x_common.h in AP/net-snmp-5.x.x
typedef enum { PHYBAND_OFF=0, PHYBAND_2G=1, PHYBAND_5G=2 } PHYBAND_TYPE_T;
typedef enum { SMACSPHY=0, DMACSPHY=1, DMACDPHY=2 } MACPHYMODE_TYPE_T;
typedef enum { BANDMODE2G=0, BANDMODE5G=1, BANDMODEBOTH=2, BANDMODESINGLE=3 } WLANBAND2G5GMODE_TYPE_T;
#ifdef HOME_GATEWAY
#ifdef VPN_SUPPORT
typedef enum { IKE_MODE=0, MANUAL_MODE=1} KEY_MODE_T;
typedef enum { SINGLE_ADDR=0, SUBNET_ADDR=1, ANY_ADDR=2, NATT_ADDR=3} ADDRESS_MODE_T;
typedef enum { INITIATOR=0, RESPONDER=1} CONN_TYPE_T;
typedef enum { MD5_ALGO=0, AUTH_ALGO=1} AUTH_MODE_T;
typedef enum { ESP_PROTO=0, AH_PROTO=1} IPSEC_PROTO_T;
typedef enum { TRI_DES_ALGO=0, AES_ALGO=1, NONE_ALGO=2} ENCR_MODE_T;
// DH1=768 bits, DH2=1024 bits, DH5= 1536
typedef enum { DH1_GRP=0, DH2_GRP=1, DH5_GRP=2} KEY_GROUP_T;
#endif // VPN_SUPPORT
typedef enum { PROTO_BOTH=3, PROTO_TCP=1, PROTO_UDP=2 } PROTO_TYPE_T;
typedef enum { IPv4=4, IPv6=6 } IP_VERSION_T;
#endif // HOME_GATEWAY
#ifdef WLAN_EASY_CONFIG
enum { MODE_BUTTON=1, MODE_QUESTION=2 };
enum {
ACF_ALGORITHM_WEP64 = 0x01,
ACF_ALGORITHM_WEP128 = 0x02,
ACF_ALGORITHM_WPA_TKIP = 0x04,
ACF_ALGORITHM_WPA_AES = 0x08,
ACF_ALGORITHM_WPA2_TKIP = 0x10,
ACF_ALGORITHM_WPA2_AES = 0x20,
};
enum { ROLE_SERVER=1, ROLE_CLIENT=2, ROLE_ADHOC=4};
#endif // WLAN_EASY_CONFIG
enum {TURBO_AUTO=0, TURBO_ON=1, TURBO_OFF=2};
#if defined(CONFIG_RTL_802_1X_CLIENT_SUPPORT) || defined(CONFIG_RTL_ETH_802DOT1X_CLIENT_MODE_SUPPORT)
typedef enum { EAP_MD5=0, EAP_TLS=1, EAP_PEAP=2,EAP_TTLS=3 } EAP_TYPE_T;
typedef enum { INSIDE_MSCHAPV2=0 } INSIDE_TYPE_T;
#define MAX_EAP_USER_ID_LEN 64
#define MAX_RS_USER_NAME_LEN 64
#define MAX_RS_USER_PASS_LEN 64
#define MAX_RS_USER_CERT_PASS_LEN 64
#define RS_USER_CERT_5G "/var/1x/client_5g.pem"
#define RS_ROOT_CERT_5G "/var/1x/ca_5g.pem"
#define RS_USER_CERT_2G "/var/1x/client_2g.pem"
#define RS_ROOT_CERT_2G "/var/1x/ca_2g.pem"
#define RS_USER_CERT_TMP "/var/1x/client_tmp.pem"
#define RS_ROOT_CERT_TMP "/var/1x/ca_tmp.pem"
#if defined(CONFIG_RTL_ETH_802DOT1X_CLIENT_MODE_SUPPORT)
typedef enum { TTLS_PHASE2_EAP=0,TTLS_PHASE2_PAP=1,TTLS_PHASE2_CHAP=2,TTLS_PHASE2_MSCHAP=3,TTLS_PHASE2_MSCHAPV2=4 } TTLS_PHASE2_TYPE_T;
typedef enum { TTLS_PHASE2_EAP_MD5=0 } TTLS_PHASE2_EAP_METHOD_T;
#define RS_USER_CERT_ETH "/var/1x/client_eth.pem"
#define RS_ROOT_CERT_ETH "/var/1x/ca_eth.pem"
#define CERT_SIZE 0x12000 //48KB,for ethernet 1x should be sync with users/auth/src/rwCertSrc/rsCertCommon.h
#else
#define CERT_SIZE 0x8000 //32KB, should be sync with users/auth/src/rwCertSrc/rsCertCommon.h
#endif
#endif
#if defined(CONFIG_RTL_ULINKER)
#include "rtl_ulinker.h"
#endif
#define DWORD_SWAP(v) ( (((v&0xff)<<24)&0xff000000) | ((((v>>8)&0xff)<<16)&0xff0000) | \
((((v>>16)&0xff)<<8)&0xff00) | (((v>>24)&0xff)&0xff) )
#define WORD_SWAP(v) ((unsigned short)(((v>>8)&0xff) | ((v<<8)&0xff00)))
#ifdef HEADER_LEN_INT
#define HEADER_SWAP(v) DWORD_SWAP(v)
#else
#define HEADER_SWAP(v) WORD_SWAP(v)
#endif
/* scramble saved configuration data */
#define ENCODE_DATA(data,len) { \
int i; \
for (i=0; i<len; i++) \
data[i] = ~ ( data[i] + 0x38); \
}
#define DECODE_DATA(data,len) { \
int i; \
for (i=0; i<len; i++) \
data[i] = ~data[i] - 0x38; \
}
/* Do checksum and verification for configuration data */
#ifndef WIN32
static inline unsigned char CHECKSUM(unsigned char *data, int len)
#else
__inline unsigned char CHECKSUM(unsigned char *data, int len)
#endif
{
int i;
unsigned char sum=0;
for (i=0; i<len; i++)
sum += data[i];
sum = ~sum + 1;
return sum;
}
#define CHECKSUM_LEN_MAX 0x800000
#ifndef WIN32
static inline int CHECKSUM_OK(unsigned char *data, int len)
#else
__inline int CHECKSUM_OK(unsigned char *data, int len)
#endif
{
int i;
unsigned char sum=0;
if(len<0||len>CHECKSUM_LEN_MAX)
return 0;
for (i=0; i<len; i++)
sum += data[i];
if (sum == 0)
return 1;
else
return 0;
}
/* WLAN sta info structure */
typedef struct wlan_sta_info {
unsigned short aid;
unsigned char addr[6];
unsigned long tx_packets;
unsigned long rx_packets;
unsigned long expired_time; // 10 msec unit
unsigned short flag;
unsigned char txOperaRates;
unsigned char rssi;
unsigned long link_time; // 1 sec unit
unsigned long tx_fail;
unsigned long tx_bytes;
unsigned long rx_bytes;
unsigned char network;
unsigned char ht_info; // bit0: 0=20M mode, 1=40M mode; bit1: 0=longGI, 1=shortGI
unsigned char RxOperaRate;
unsigned char resv[5];
} WLAN_STA_INFO_T, *WLAN_STA_INFO_Tp;
typedef struct wlan_rate{
unsigned int id;
unsigned char rate[20];
}WLAN_RATE_T, *WLAN_RATE_Tp;
typedef enum {
MCS0=0x80,
MCS1=0x81,
MCS2=0x82,
MCS3=0x83,
MCS4=0x84,
MCS5=0x85,
MCS6=0x86,
MCS7=0x87,
MCS8=0x88,
MCS9=0x89,
MCS10=0x8a,
MCS11=0x8b,
MCS12=0x8c,
MCS13=0x8d,
MCS14=0x8e,
MCS15=0x8f
} RATE_11N_T;
#ifdef WIN32
#pragma pack(1)
#endif
#ifdef CONFIG_RTL_P2P_SUPPORT
//#define P2P_DEBUG(fmt, args...) printf("(%s %d):"fmt,__FUNCTION__ , __LINE__ , ## args)
#define P2P_DEBUG(fmt, args...)
typedef enum {
P2P_DEVICE=1,
P2P_PRE_CLIENT=2,
P2P_CLIENT=3,
P2P_PRE_GO=4, // after GO nego , we are GO and proceed WSC exchange
P2P_TMP_GO=5 // after GO nego , we are GO and proceed WSC exchange is done
} P2P_TPYE_ENUM_T;
#endif
//zj: eco featrue
#define ECO_LEDDIM_MASK 0x08
#define ECO_TIMER_MASK 0x04
#define ECO_EVERYDAY_MASK 0x02
#define ECO_24HOURS_MASK 0x01
#define ECO_DAY_MASK 0x0000007F
#define ECO_SUNDAY_MASK 0x00000001
#define ECO_MONDAY_MASK 0x00000002
#define ECO_TUESDAY_MASK 0x00000004
#define ECO_WEDNESDAY_MASK 0x00000008
#define ECO_THURSDAY_MASK 0x00000010
#define ECO_FRIDAY_MASK 0x00000020
#define ECO_SATURDAY_MASK 0x00000040
#define SCHEDULE_NAME_LEN 20
typedef struct schedule_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_SCHEDULE_IMPORT
#include "mibdef.h"
#undef MIB_SCHEDULE_IMPORT
#undef MIBDEF
}__PACK__ SCHEDULE_T, *SCHEDULE_Tp;
typedef struct macfilter_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_MACFILTER_IMPORT
#include "mibdef.h"
#undef MIB_MACFILTER_IMPORT
#undef MIBDEF
}__PACK__ MACFILTER_T, *MACFILTER_Tp;
#ifdef HOME_GATEWAY
typedef struct urlfilter_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_URLFILTER_IMPORT
#include "mibdef.h"
#undef MIB_URLFILTER_IMPORT
#undef MIBDEF
}__PACK__ URLFILTER_T, *URLFILTER_Tp;
typedef struct portfw_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_PORTFW_IMPORT
#include "mibdef.h"
#undef MIB_PORTFW_IMPORT
#undef MIBDEF
}__PACK__ PORTFW_T, *PORTFW_Tp;
typedef struct ipfilter_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_IPFILTER_IMPORT
#include "mibdef.h"
#undef MIB_IPFILTER_IMPORT
#undef MIBDEF
}__PACK__ IPFILTER_T, *IPFILTER_Tp;
#ifdef SAMBA_WEB_SUPPORT
typedef struct storage_userentry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_STORAGE_USER_IMPORT
#include "mibdef.h"
#undef MIB_STORAGE_USER_IMPORT
#undef MIBDEF
}__PACK__ STORAGE_USER_T, *STORAGE_USER_Tp;
typedef struct storage_groupentry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_STORAGE_GROUP_IMPORT
#include "mibdef.h"
#undef MIB_STORAGE_GROUP_IMPORT
#undef MIBDEF
}__PACK__ STORAGE_GROUP_T, *STORAGE_GROUP_Tp;
#endif
typedef struct portfilter_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_PORTFILTER_IMPORT
#include "mibdef.h"
#undef MIB_PORTFILTER_IMPORT
#undef MIBDEF
}__PACK__ PORTFILTER_T, *PORTFILTER_Tp;
typedef struct triggerport_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_TRIGGERPORT_IMPORT
#include "mibdef.h"
#undef MIB_TRIGGERPORT_IMPORT
#undef MIBDEF
}__PACK__ TRIGGERPORT_T, *TRIGGERPORT_Tp;
#ifdef GW_QOS_ENGINE
#define MAX_QOS_NAME_LEN 15
typedef struct qos_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_QOS_IMPORT
#include "mibdef.h"
#undef MIB_QOS_IMPORT
#undef MIBDEF
}__PACK__ QOS_T, *QOS_Tp;
#endif
#ifdef QOS_BY_BANDWIDTH
#define QOS_RESTRICT_MIN 0x01
#define QOS_RESTRICT_MAX 0x02
#define QOS_RESTRICT_IP 0x04
#define QOS_RESTRICT_MAC 0x08
#define QOS_RESTRICT_IPV6 0x10
#define QOS_RESTRICT_ALL 0x20
#define MAX_QOS_NAME_LEN 15
typedef struct qos_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_IPQOS_IMPORT
#include "mibdef.h"
#undef MIB_IPQOS_IMPORT
#undef MIBDEF
}__PACK__ IPQOS_T, *IPQOS_Tp;
#endif
#if defined(CONFIG_RTL_ETH_802DOT1X_SUPPORT)
typedef struct ethdot1x_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_ETH_DOT1X_IMPORT
#include "mibdef.h"
#undef MIB_ETH_DOT1X_IMPORT
#undef MIBDEF
}__PACK__ ETHDOT1X_T, *ETHDOT1X_Tp;
#endif
#ifdef VPN_SUPPORT
typedef struct ipsectunnel_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_IPSECTUNNEL_IMPORT
#include "mibdef.h"
#undef MIB_IPSECTUNNEL_IMPORT
#undef MIBDEF
}__PACK__ IPSECTUNNEL_T, *IPSECTUNNEL_Tp;
#endif // VPN_SUPPORT
#ifdef CONFIG_IPV6
#define uint16 unsigned short
#define uint8 unsigned char
#define uint32 unsigned int
#ifdef TR181_SUPPORT
typedef struct ipv6DhcpcSendOptTbl_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_IPV6_DHCPC_SENDOPT_IMPORT
#include "mibdef.h"
#undef MIB_IPV6_DHCPC_SENDOPT_IMPORT
#undef MIBDEF
}__PACK__ DHCPV6C_SENDOPT_T, *DHCPV6C_SENDOPT_Tp;
#endif
/*radvd*/
struct AdvPrefix {
uint16 Prefix[8];
uint8 PrefixLen;
uint8 AdvOnLinkFlag;
uint8 AdvAutonomousFlag;
uint32 AdvValidLifetime;
uint32 AdvPreferredLifetime;
/* Mobile IPv6 extensions */
uint8 AdvRouterAddr;
/* 6to4 extensions */
char if6to4[IFNAMESIZE];
uint8 enabled;
#ifdef CONFIG_IPV6_CE_ROUTER_SUPPORT
/* prefix mode: Manually, PD, ULA prefix */
uint8 prefix_mode;
#endif
}__PACK__;
struct Interface {
char Name[IFNAMESIZE]; /* interface name */
uint32 MaxRtrAdvInterval;
uint32 MinRtrAdvInterval;
uint32 MinDelayBetweenRAs;
uint8 AdvManagedFlag;
uint8 AdvOtherConfigFlag;
uint32 AdvLinkMTU;
uint32 AdvReachableTime;
uint32 AdvRetransTimer;
uint8 AdvCurHopLimit;
uint16 AdvDefaultLifetime;
char AdvDefaultPreference[IFNAMESIZE];
uint8 AdvSourceLLAddress;
uint8 UnicastOnly;
struct AdvPrefix prefix[MAX_PREFIX_NUM];
}__PACK__;
typedef struct radvdCfgParam_s
{
uint8 enabled;
/*support br0 only*/
struct Interface interface;
}__PACK__ radvdCfgParam_t, *radvdCfgParam_Tp;
struct duid_t{
uint16 duid_type;
uint16 hw_type;
uint8 mac[6];
};
/*dnsv6*/
struct rrResource
{
char domainName[MAX_DNAME_SIZE];
uint16 address[8];
}__PACK__;
typedef struct dnsv6CfgParam_s
{
uint8 enabled;
/*default name myrouter*/
char routerName[NAMSIZE];
struct rrResource rr[RR_MAX_NUM];
}__PACK__ dnsv6CfgParam_t, *dnsv6CfgParam_Tp;
/*dhcp6s*/
typedef struct dhcp6sCfgParam_s
{
uint8 enabled;
char DNSaddr6[48];
#ifdef CONFIG_IPV6_CE_ROUTER_SUPPORT
uint8 addr6PrefixMode;
#endif
char addr6PoolS[48];
char addr6PoolE[48];
/*default name interface*/
char interfaceNameds[NAMSIZE];
}__PACK__ dhcp6sCfgParam_t, *dhcp6sCfgParam_Tp;
/*dhcp6pd*/
typedef struct dhcp6pdCfgParam_s
{
uint32 sla_len; /* SLA ID length in bits */
uint32 sla_id; /* need more than 32bits? */
char ifName[NAMSIZE];
}__PACK__ dhcp6pdCfgParam_t, *dhcp6pdCfgParam_Tp;
/*dhcp6c*/
typedef struct dhcp6cCfgParam_s
{
uint8 enabled;
dhcp6pdCfgParam_t dhcp6pd;
char ifName[NAMSIZE];
}__PACK__ dhcp6cCfgParam_t, *dhcp6cCfgParam_Tp;
/*IPv6 Addr*/
typedef struct addrIPv6CfgParam_s
{
int enabled; /* 0:off 1:on */
int prefix_len[2];
uint16 addrIPv6[2][8];
}__PACK__ addrIPv6CfgParam_t,*daddrIPv6CfgParam_Tp;
/*IPv6 Addr*/
typedef struct addr6CfgParam_s
{
int prefix_len;
uint16 addrIPv6[8];
}__PACK__ addr6CfgParam_t,*addr6CfgParam_Tp;
/*Tunnel*/
typedef struct tunnelCfgParam_s
{
uint8 enabled;
}__PACK__ tunnelCfgParam_t, *tunnelCfgParam_Tp;
#endif
#ifdef TR181_SUPPORT
typedef struct dnsClientServerTbl_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_DNS_CLIENT_SERVER_IMPORT
#include "mibdef.h"
#undef MIB_DNS_CLIENT_SERVER_IMPORT
#undef MIBDEF
}__PACK__ DNS_CLIENT_SERVER_T, *DNS_CLIENT_SERVER_Tp;
#endif
#endif // HOME_GATEWAY
#ifdef TLS_CLIENT
typedef struct certroot_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CERTROOT_IMPORT
#include "mibdef.h"
#undef MIB_CERTROOT_IMPORT
#undef MIBDEF
}__PACK__ CERTROOT_T, *CERTROOT_Tp;
typedef struct certUser_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CERTUSER_IMPORT
#include "mibdef.h"
#undef MIB_CERTUSER_IMPORT
#undef MIBDEF
}__PACK__ CERTUSER_T, *CERTUSER_Tp;
#endif
#ifdef HOME_GATEWAY
#ifdef ROUTE_SUPPORT
typedef struct staticRoute_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_STATICROUTE_IMPORT
#include "mibdef.h"
#undef MIB_STATICROUTE_IMPORT
#undef MIBDEF
}__PACK__ STATICROUTE_T, *STATICROUTE_Tp;
#endif
#endif
typedef struct dhcpRsvdIP_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_DHCPRSVDIP_IMPORT
#include "mibdef.h"
#undef MIB_DHCPRSVDIP_IMPORT
#undef MIBDEF
}__PACK__ DHCPRSVDIP_T, *DHCPRSVDIP_Tp;
typedef struct wlanwds_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_WDS_IMPORT
#include "mibdef.h"
#undef MIB_WDS_IMPORT
}__PACK__ WDS_T, *WDS_Tp;
#ifdef WLAN_PROFILE
typedef struct wlan_profile_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_WLAN_PROFILE_IMPORT
#include "mibdef.h"
#undef MIB_WLAN_PROFILE_IMPORT
#undef MIBDEF
}__PACK__ WLAN_PROFILE_T, *WLAN_PROFILE_Tp;
#endif
#if defined(VLAN_CONFIG_SUPPORTED)
typedef struct vlan_lanconfig_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_VLAN_CONFIG_IMPORT
#include "mibdef.h"
#undef MIB_VLAN_CONFIG_IMPORT
#undef MIBDEF
}__PACK__ VLAN_CONFIG_T, *VLAN_CONFIG_Tp;
#endif
typedef struct hw_wlan_setting {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_HW_WLAN_IMPORT
#include "mibdef.h"
#undef MIB_HW_WLAN_IMPORT
#undef MIBDEF
}__PACK__ HW_WLAN_SETTING_T, *HW_WLAN_SETTING_Tp;
typedef struct hw_setting {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_HW_IMPORT
#include "mibdef.h"
#undef MIB_HW_IMPORT
#undef MIBDEF
}__PACK__ HW_SETTING_T, *HW_SETTING_Tp;
typedef struct config_wlan_setting {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CONFIG_WLAN_SETTING_IMPORT
#include "mibdef.h"
#undef MIB_CONFIG_WLAN_SETTING_IMPORT
#undef MIBDEF
}__PACK__ CONFIG_WLAN_SETTING_T, *CONFIG_WLAN_SETTING_Tp;
#ifdef CONFIG_APP_TR069
#if defined(WLAN_SUPPORT)
typedef struct cwmp_wlanconf_entry {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CWMP_WLANCONF_IMPORT
#include "mibdef.h"
#undef MIB_CWMP_WLANCONF_IMPORT
#undef MIBDEF
} __PACK__ CWMP_WLANCONF_T, *CWMP_WLANCONF_Tp;
#endif //#if defined(WLAN_SUPPORT)
#endif//#ifdef CONFIG_APP_TR069
#ifdef RTK_CAPWAP
typedef struct {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CAPWAP_WLAN_CONFIG_IMPORT
#include "mibdef.h"
#undef MIB_CAPWAP_WLAN_CONFIG_IMPORT
#undef MIBDEF
} __PACK__ CAPWAP_WLAN_CONFIG_T, *CAPWAP_WLAN_CONFIG_Tp;
typedef struct {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_CAPWAP_WTP_CONFIG_IMPORT
#include "mibdef.h"
#undef MIB_CAPWAP_WTP_CONFIG_IMPORT
#undef MIBDEF
} __PACK__ CAPWAP_WTP_CONFIG_T, *CAPWAP_WTP_CONFIG_Tp;
#endif // #ifdef RTK_CAPWAP
typedef struct config_setting {
#define MIBDEF(_ctype, _cname, _crepeat, _mib_name, _mib_type, _mib_parents_ctype, _default_value, _next_tbl ) \
_ctype _cname _crepeat;
#define MIB_IMPORT
#include "mibdef.h"
#undef MIB_IMPORT
#undef MIBDEF
}__PACK__ APMIB_T, *APMIB_Tp;
#ifdef HEADER_LEN_INT
typedef struct hw_param_header {
unsigned char signature[SIGNATURE_LEN]; // Tag + version
unsigned short len;
}__PACK__ HW_PARAM_HEADER_T, *HW_PARAM_HEADER_Tp;
#endif
/* Config file header */
typedef struct param_header {
unsigned char signature[SIGNATURE_LEN]; // Tag + version
#ifdef HEADER_LEN_INT
unsigned int len;
#else
unsigned short len;
#endif
}__PACK__ PARAM_HEADER_T, *PARAM_HEADER_Tp;
/* Firmware image file header */
typedef struct img_header {
unsigned char signature[SIGNATURE_LEN];
unsigned int startAddr;
unsigned int burnAddr;
unsigned int len;
}__PACK__ IMG_HEADER_T, *IMG_HEADER_Tp;
/* Web page file header */
typedef IMG_HEADER_T WEB_HEADER_T;
typedef IMG_HEADER_Tp WEB_HEADER_Tp;
#ifdef TLS_CLIENT
typedef IMG_HEADER_T CERT_HEADER_T;
typedef IMG_HEADER_Tp CERT_HEADER_Tp;
#endif
typedef struct _file_entry {
char name[MAXFNAME];
unsigned int size;
}__PACK__ FILE_ENTRY_T, *FILE_ENTRY_Tp;
#ifdef COMPRESS_MIB_SETTING
/* Compress config setting file header */
#if 1
#define COMP_TRACE fprintf
#else
#define COMP_TRACE(...) do {} while(0)
#endif
#define COMP_SIGNATURE_LEN 6
#define COMP_HS_SIGNATURE "COMPHS"
#define COMP_CS_SIGNATURE "COMPCS"
#define COMP_DS_SIGNATURE "COMPDS"
typedef struct compress_mib_header {
unsigned char signature[COMP_SIGNATURE_LEN];
unsigned short compRate;
unsigned int compLen;
}__PACK__ COMPRESS_MIB_HEADER_T, *COMPRESS_MIB_HEADER_Tp;
#endif // #ifdef COMPRESS_MIB_SETTING
#ifdef WIN32
#pragma pack()
#endif
typedef enum {
BYTE_T,
WORD_T,
STRING_T,
BYTE5_T,
BYTE6_T,
BYTE13_T,
IA_T,
DWORD_T,
BYTE_ARRAY_T,
#ifdef HOME_GATEWAY
#ifdef CONFIG_IPV6
RADVDPREFIX_T,
DNSV6_T,
DHCPV6S_T,
DHCPV6C_T,
ADDR6_T,
ADDRV6_T,
TUNNEL6_T,
#endif
#endif
#ifdef VOIP_SUPPORT
VOIP_T,
#endif
#ifdef RTK_CAPWAP
CAPWAP_ALL_WLANS_CONFIG_T,
#endif
/* upper are Non-table array type */
/* below are table array type */
TABLE_LIST_T,
WLAC_ARRAY_T,
#ifdef TR181_SUPPORT
#ifdef CONFIG_IPV6
DHCPV6C_SENDOPT_ARRAY_T,
#endif
DNS_CLIENT_SERVER_ARRAY_T,
#endif
DHCPRSVDIP_ARRY_T,
#ifdef HOME_GATEWAY
PORTFW_ARRAY_T,
IPFILTER_ARRAY_T,
PORTFILTER_ARRAY_T,
MACFILTER_ARRAY_T,
URLFILTER_ARRAY_T,
TRIGGERPORT_ARRAY_T,
#ifdef ROUTE_SUPPORT
STATICROUTE_ARRAY_T,
#endif
#ifdef VPN_SUPPORT
IPSECTUNNEL_ARRAY_T,
#endif
#endif // #ifdef HOME_GATEWAY
WDS_ARRAY_T,
#ifdef TLS_CLIENT
CERTROOT_ARRAY_T,
CERTUSER_ARRAY_T,
#endif
#if defined(GW_QOS_ENGINE) || defined(QOS_BY_BANDWIDTH)
QOS_ARRAY_T,
#endif
//#if defined(CONFIG_RTK_MESH) && defined(_MESH_ACL_ENABLE_) Keith remove
MESH_ACL_ARRAY_T,
//#endif
SCHEDULE_ARRAY_T,
#if defined(VLAN_CONFIG_SUPPORTED)
VLANCONFIG_ARRAY_T,
#endif
#ifdef WLAN_PROFILE
PROFILE_ARRAY_T,
#endif
#ifdef CONFIG_APP_TR069
#if defined(WLAN_SUPPORT)
CWMP_WLANCONF_ARRAY_T,
#endif
#endif//#ifdef CONFIG_APP_TR069
#ifdef HOME_GATEWAY
#ifdef SAMBA_WEB_SUPPORT
STORAGE_USER_ARRAY_T,
STORAGE_GROUP_ARRAY_T,
#endif
#endif
#if defined(CONFIG_RTL_ETH_802DOT1X_SUPPORT)
ETHDOT1X_ARRAY_T,
#endif
#ifdef RTK_CAPWAP
CAPWAP_WTP_CONFIG_ARRAY_T,
#endif
} TYPE_T;
//////////////////////////////////////////////////////////
int apmib_init_HW(void);
int apmib_init(void);
int apmib_reinit(void);
char *apmib_hwconf(void);
char * apmib_load_data_to_csconf(char* dataSource);
char *apmib_csconf(void);
char *apmib_dsconf(void);
int apmib_get(int id, void *value);
int apmib_getDef(int id, void *value);
int apmib_set(int id, void *value);
int apmib_setDef(int id, void *value);
int apmib_update(CONFIG_DATA_T type);
int apmib_updateDef(void);
int apmib_updateFlash(CONFIG_DATA_T type, char *data, int len, int force, int ver);
int update_linkchain(int fmt, void *Entry_old, void *Entry_new, int type_size);
int mibtbl_check(void);
extern APMIB_Tp pMib, pMibDef;
extern HW_SETTING_Tp pHwSetting;
#ifdef HEADER_LEN_INT
extern HW_PARAM_HEADER_T hsHeader;
extern PARAM_HEADER_T dsHeader, csHeader;
#else
extern PARAM_HEADER_T hsHeader, dsHeader, csHeader;
#endif
extern int wlan_idx;
extern int vwlan_idx;
#ifdef HTTP_FILE_SERVER_HTM_UI
#define PATH_MAX_LEN 256
#define FILE_INFO_MAX_LEN 64
extern char httpfile_dirpath[PATH_MAX_LEN];
extern char httpfile_type;
extern char httpfile_order;
#endif
#ifdef GW_QOS_ENGINE
extern void getVal12(char *value, char **p1, char **p2, char **p3, char **p4, char **p5, char **p6, char **p7,
char **p8, char **p9, char **p10, char **p11, char **p12);
#define QOS_FORMAT ("%d, %d, %d, %s, %s, %d, %d, %s, %s, %d, %d, %s")
#endif
#ifdef QOS_BY_BANDWIDTH
//#define QOS_FORMAT ("%d, %s, %d, %s, %s, %d, %s")
#define QOS_FORMAT ("%d, %02x%02x%02x%02x%02x%02x, %d, %s, %s, %d, %d, %s, %s")
#endif
#if CONFIG_APMIB_SHARED_MEMORY == 1
#define HWCONF_SHM_KEY 0
#define DSCONF_SHM_KEY 1
#define CSCONF_SHM_KEY 2
int apmib_sem_lock(void);
int apmib_sem_unlock(void);
int apmib_shm_free(void *shm_memory, int shm_key);
#endif
//#ifdef CONFIG_IPV6
#ifdef TR181_SUPPORT
int tr181_ipv6_get(char * name,void * value);
int tr181_ipv6_set(char * name,void * value);
#endif
//#endif
//#if defined(CONFIG_USBDISK_UPDATE_IMAGE)
#define USB_UPLOAD_FORM_PATH "/tmp/usb/sda1/fw.bin"
//#endif
//### add by sen_liu 2011.4.21 sync the system log update (enlarge from 1 pcs to 8 pcs) to SDKv2.5 from kernel 2.4
#define RINGLOG
#ifdef RINGLOG /* ring log */
#define MAX_LOG_SIZE 8 /* unit is kbyte */
#define LOG_SPLIT 7 /* can't greater than 99 */
/*
for /var/log/messages.(LOG_SPLIT-1) to /var/log/messages.0 and then /var/log/messages
ex: LOG_SPLIT = 7, we will have
/var/log/messages.6
...
/var/log/messages.0
/var/log/messages
*/
#endif /* ring log */
//### end
void set_timeZone(void);
#endif // INCLUDE_APMIB_H