|
@@ -37,12 +37,6 @@
|
|
|
#define DEF
|
|
|
#endif
|
|
|
|
|
|
-//typedef int BOOL;
|
|
|
-//typedef uint32_t u32;
|
|
|
-//typedef uint16_t u16;
|
|
|
-//typedef uint8_t u8;
|
|
|
-
|
|
|
-
|
|
|
// ioctl Command code
|
|
|
#define MAGIC_CODE 0x3142
|
|
|
#define IOCTL_CMD_TEST (SIOCDEVPRIVATE + 0)
|
|
@@ -50,7 +44,6 @@
|
|
|
#define IOCTL_CMD_HOSTAPD (SIOCDEVPRIVATE + 2)
|
|
|
#define IOCTL_CMD_WPA (SIOCDEVPRIVATE + 3)
|
|
|
|
|
|
-
|
|
|
typedef enum tagWMAC_CMD {
|
|
|
|
|
|
WLAN_CMD_BSS_SCAN,
|
|
@@ -90,7 +83,6 @@ typedef enum tagWZONETYPE {
|
|
|
#define ADHOC_STARTED 1
|
|
|
#define ADHOC_JOINTED 2
|
|
|
|
|
|
-
|
|
|
#define PHY80211a 0
|
|
|
#define PHY80211b 1
|
|
|
#define PHY80211g 2
|
|
@@ -125,7 +117,6 @@ typedef struct tagSCmdScan {
|
|
|
|
|
|
} SCmdScan, *PSCmdScan;
|
|
|
|
|
|
-
|
|
|
//
|
|
|
// BSS Join
|
|
|
//
|
|
@@ -135,7 +126,7 @@ typedef struct tagSCmdBSSJoin {
|
|
|
u16 wBSSType;
|
|
|
u16 wBBPType;
|
|
|
u8 ssid[SSID_MAXLEN + 2];
|
|
|
- U32 uChannel;
|
|
|
+ u32 uChannel;
|
|
|
BOOL bPSEnable;
|
|
|
BOOL bShareKeyAuth;
|
|
|
|
|
@@ -167,43 +158,40 @@ typedef struct tagSCmdStartAP {
|
|
|
u16 wBSSType;
|
|
|
u16 wBBPType;
|
|
|
u8 ssid[SSID_MAXLEN + 2];
|
|
|
- U32 uChannel;
|
|
|
- U32 uBeaconInt;
|
|
|
+ u32 uChannel;
|
|
|
+ u32 uBeaconInt;
|
|
|
BOOL bShareKeyAuth;
|
|
|
u8 byBasicRate;
|
|
|
|
|
|
} SCmdStartAP, *PSCmdStartAP;
|
|
|
|
|
|
-
|
|
|
typedef struct tagSCmdSetWEP {
|
|
|
|
|
|
BOOL bEnableWep;
|
|
|
u8 byKeyIndex;
|
|
|
u8 abyWepKey[WEP_NKEYS][WEP_KEYMAXLEN];
|
|
|
BOOL bWepKeyAvailable[WEP_NKEYS];
|
|
|
- U32 auWepKeyLength[WEP_NKEYS];
|
|
|
+ u32 auWepKeyLength[WEP_NKEYS];
|
|
|
|
|
|
} SCmdSetWEP, *PSCmdSetWEP;
|
|
|
|
|
|
-
|
|
|
-
|
|
|
typedef struct tagSBSSIDItem {
|
|
|
|
|
|
- U32 uChannel;
|
|
|
+ u32 uChannel;
|
|
|
u8 abyBSSID[BSSID_LEN];
|
|
|
u8 abySSID[SSID_MAXLEN + 1];
|
|
|
u16 wBeaconInterval;
|
|
|
u16 wCapInfo;
|
|
|
u8 byNetType;
|
|
|
BOOL bWEPOn;
|
|
|
- U32 uRSSI;
|
|
|
+ u32 uRSSI;
|
|
|
|
|
|
} SBSSIDItem;
|
|
|
|
|
|
|
|
|
typedef struct tagSBSSIDList {
|
|
|
|
|
|
- U32 uItem;
|
|
|
+ u32 uItem;
|
|
|
SBSSIDItem sBSSIDList[0];
|
|
|
} SBSSIDList, *PSBSSIDList;
|
|
|
|
|
@@ -222,8 +210,8 @@ typedef struct tagSNodeItem {
|
|
|
u8 abyWepKey[WEP_KEYMAXLEN];
|
|
|
// Auto rate fallback vars
|
|
|
BOOL bIsInFallback;
|
|
|
- U32 uTxFailures;
|
|
|
- U32 uTxAttempts;
|
|
|
+ u32 uTxFailures;
|
|
|
+ u32 uTxAttempts;
|
|
|
u16 wFailureRatio;
|
|
|
|
|
|
} SNodeItem;
|
|
@@ -231,7 +219,7 @@ typedef struct tagSNodeItem {
|
|
|
|
|
|
typedef struct tagSNodeList {
|
|
|
|
|
|
- U32 uItem;
|
|
|
+ u32 uItem;
|
|
|
SNodeItem sNodeList[0];
|
|
|
|
|
|
} SNodeList, *PSNodeList;
|
|
@@ -244,8 +232,8 @@ typedef struct tagSCmdLinkStatus {
|
|
|
u8 byState;
|
|
|
u8 abyBSSID[BSSID_LEN];
|
|
|
u8 abySSID[SSID_MAXLEN + 2];
|
|
|
- U32 uChannel;
|
|
|
- U32 uLinkRate;
|
|
|
+ u32 uChannel;
|
|
|
+ u32 uLinkRate;
|
|
|
|
|
|
} SCmdLinkStatus, *PSCmdLinkStatus;
|
|
|
|
|
@@ -253,18 +241,18 @@ typedef struct tagSCmdLinkStatus {
|
|
|
// 802.11 counter
|
|
|
//
|
|
|
typedef struct tagSDot11MIBCount {
|
|
|
- U32 TransmittedFragmentCount;
|
|
|
- U32 MulticastTransmittedFrameCount;
|
|
|
- U32 FailedCount;
|
|
|
- U32 RetryCount;
|
|
|
- U32 MultipleRetryCount;
|
|
|
- U32 RTSSuccessCount;
|
|
|
- U32 RTSFailureCount;
|
|
|
- U32 ACKFailureCount;
|
|
|
- U32 FrameDuplicateCount;
|
|
|
- U32 ReceivedFragmentCount;
|
|
|
- U32 MulticastReceivedFrameCount;
|
|
|
- U32 FCSErrorCount;
|
|
|
+ u32 TransmittedFragmentCount;
|
|
|
+ u32 MulticastTransmittedFrameCount;
|
|
|
+ u32 FailedCount;
|
|
|
+ u32 RetryCount;
|
|
|
+ u32 MultipleRetryCount;
|
|
|
+ u32 RTSSuccessCount;
|
|
|
+ u32 RTSFailureCount;
|
|
|
+ u32 ACKFailureCount;
|
|
|
+ u32 FrameDuplicateCount;
|
|
|
+ u32 ReceivedFragmentCount;
|
|
|
+ u32 MulticastReceivedFrameCount;
|
|
|
+ u32 FCSErrorCount;
|
|
|
} SDot11MIBCount, *PSDot11MIBCount;
|
|
|
|
|
|
|
|
@@ -276,119 +264,115 @@ typedef struct tagSStatMIBCount {
|
|
|
//
|
|
|
// ISR status count
|
|
|
//
|
|
|
- U32 dwIsrTx0OK;
|
|
|
- U32 dwIsrTx1OK;
|
|
|
- U32 dwIsrBeaconTxOK;
|
|
|
- U32 dwIsrRxOK;
|
|
|
- U32 dwIsrTBTTInt;
|
|
|
- U32 dwIsrSTIMERInt;
|
|
|
- U32 dwIsrUnrecoverableError;
|
|
|
- U32 dwIsrSoftInterrupt;
|
|
|
- U32 dwIsrRxNoBuf;
|
|
|
+ u32 dwIsrTx0OK;
|
|
|
+ u32 dwIsrTx1OK;
|
|
|
+ u32 dwIsrBeaconTxOK;
|
|
|
+ u32 dwIsrRxOK;
|
|
|
+ u32 dwIsrTBTTInt;
|
|
|
+ u32 dwIsrSTIMERInt;
|
|
|
+ u32 dwIsrUnrecoverableError;
|
|
|
+ u32 dwIsrSoftInterrupt;
|
|
|
+ u32 dwIsrRxNoBuf;
|
|
|
/////////////////////////////////////
|
|
|
|
|
|
- U32 dwIsrUnknown; // unknown interrupt count
|
|
|
+ u32 dwIsrUnknown; /* unknown interrupt count */
|
|
|
|
|
|
// RSR status count
|
|
|
//
|
|
|
- U32 dwRsrFrmAlgnErr;
|
|
|
- U32 dwRsrErr;
|
|
|
- U32 dwRsrCRCErr;
|
|
|
- U32 dwRsrCRCOk;
|
|
|
- U32 dwRsrBSSIDOk;
|
|
|
- U32 dwRsrADDROk;
|
|
|
- U32 dwRsrICVOk;
|
|
|
- U32 dwNewRsrShortPreamble;
|
|
|
- U32 dwRsrLong;
|
|
|
- U32 dwRsrRunt;
|
|
|
-
|
|
|
- U32 dwRsrRxControl;
|
|
|
- U32 dwRsrRxData;
|
|
|
- U32 dwRsrRxManage;
|
|
|
-
|
|
|
- U32 dwRsrRxPacket;
|
|
|
- U32 dwRsrRxOctet;
|
|
|
- U32 dwRsrBroadcast;
|
|
|
- U32 dwRsrMulticast;
|
|
|
- U32 dwRsrDirected;
|
|
|
+ u32 dwRsrFrmAlgnErr;
|
|
|
+ u32 dwRsrErr;
|
|
|
+ u32 dwRsrCRCErr;
|
|
|
+ u32 dwRsrCRCOk;
|
|
|
+ u32 dwRsrBSSIDOk;
|
|
|
+ u32 dwRsrADDROk;
|
|
|
+ u32 dwRsrICVOk;
|
|
|
+ u32 dwNewRsrShortPreamble;
|
|
|
+ u32 dwRsrLong;
|
|
|
+ u32 dwRsrRunt;
|
|
|
+
|
|
|
+ u32 dwRsrRxControl;
|
|
|
+ u32 dwRsrRxData;
|
|
|
+ u32 dwRsrRxManage;
|
|
|
+
|
|
|
+ u32 dwRsrRxPacket;
|
|
|
+ u32 dwRsrRxOctet;
|
|
|
+ u32 dwRsrBroadcast;
|
|
|
+ u32 dwRsrMulticast;
|
|
|
+ u32 dwRsrDirected;
|
|
|
// 64-bit OID
|
|
|
- U32 ullRsrOK;
|
|
|
+ u32 ullRsrOK;
|
|
|
|
|
|
// for some optional OIDs (64 bits) and DMI support
|
|
|
- U32 ullRxBroadcastBytes;
|
|
|
- U32 ullRxMulticastBytes;
|
|
|
- U32 ullRxDirectedBytes;
|
|
|
- U32 ullRxBroadcastFrames;
|
|
|
- U32 ullRxMulticastFrames;
|
|
|
- U32 ullRxDirectedFrames;
|
|
|
-
|
|
|
- U32 dwRsrRxFragment;
|
|
|
- U32 dwRsrRxFrmLen64;
|
|
|
- U32 dwRsrRxFrmLen65_127;
|
|
|
- U32 dwRsrRxFrmLen128_255;
|
|
|
- U32 dwRsrRxFrmLen256_511;
|
|
|
- U32 dwRsrRxFrmLen512_1023;
|
|
|
- U32 dwRsrRxFrmLen1024_1518;
|
|
|
+ u32 ullRxBroadcastBytes;
|
|
|
+ u32 ullRxMulticastBytes;
|
|
|
+ u32 ullRxDirectedBytes;
|
|
|
+ u32 ullRxBroadcastFrames;
|
|
|
+ u32 ullRxMulticastFrames;
|
|
|
+ u32 ullRxDirectedFrames;
|
|
|
+
|
|
|
+ u32 dwRsrRxFragment;
|
|
|
+ u32 dwRsrRxFrmLen64;
|
|
|
+ u32 dwRsrRxFrmLen65_127;
|
|
|
+ u32 dwRsrRxFrmLen128_255;
|
|
|
+ u32 dwRsrRxFrmLen256_511;
|
|
|
+ u32 dwRsrRxFrmLen512_1023;
|
|
|
+ u32 dwRsrRxFrmLen1024_1518;
|
|
|
|
|
|
// TSR0,1 status count
|
|
|
//
|
|
|
- U32 dwTsrTotalRetry[2]; // total collision retry count
|
|
|
- U32 dwTsrOnceRetry[2]; // this packet only occur one collision
|
|
|
- U32 dwTsrMoreThanOnceRetry[2]; // this packet occur more than one collision
|
|
|
- U32 dwTsrRetry[2]; // this packet has ever occur collision,
|
|
|
- // that is (dwTsrOnceCollision0 + dwTsrMoreThanOnceCollision0)
|
|
|
- U32 dwTsrACKData[2];
|
|
|
- U32 dwTsrErr[2];
|
|
|
- U32 dwAllTsrOK[2];
|
|
|
- U32 dwTsrRetryTimeout[2];
|
|
|
- U32 dwTsrTransmitTimeout[2];
|
|
|
-
|
|
|
- U32 dwTsrTxPacket[2];
|
|
|
- U32 dwTsrTxOctet[2];
|
|
|
- U32 dwTsrBroadcast[2];
|
|
|
- U32 dwTsrMulticast[2];
|
|
|
- U32 dwTsrDirected[2];
|
|
|
+ u32 dwTsrTotalRetry[2]; /* total collision retry count */
|
|
|
+ u32 dwTsrOnceRetry[2]; /* this packet had one collision */
|
|
|
+ u32 dwTsrMoreThanOnceRetry[2]; /* this packet had many collisions */
|
|
|
+ u32 dwTsrRetry[2]; /* this packet has ever occur collision,
|
|
|
+ * that is (dwTsrOnceCollision0 plus
|
|
|
+ * dwTsrMoreThanOnceCollision0) */
|
|
|
+ u32 dwTsrACKData[2];
|
|
|
+ u32 dwTsrErr[2];
|
|
|
+ u32 dwAllTsrOK[2];
|
|
|
+ u32 dwTsrRetryTimeout[2];
|
|
|
+ u32 dwTsrTransmitTimeout[2];
|
|
|
+
|
|
|
+ u32 dwTsrTxPacket[2];
|
|
|
+ u32 dwTsrTxOctet[2];
|
|
|
+ u32 dwTsrBroadcast[2];
|
|
|
+ u32 dwTsrMulticast[2];
|
|
|
+ u32 dwTsrDirected[2];
|
|
|
|
|
|
// RD/TD count
|
|
|
- U32 dwCntRxFrmLength;
|
|
|
- U32 dwCntTxBufLength;
|
|
|
+ u32 dwCntRxFrmLength;
|
|
|
+ u32 dwCntTxBufLength;
|
|
|
|
|
|
u8 abyCntRxPattern[16];
|
|
|
u8 abyCntTxPattern[16];
|
|
|
|
|
|
- // Software check....
|
|
|
- U32 dwCntRxDataErr; // rx buffer data software compare CRC err count
|
|
|
- U32 dwCntDecryptErr; // rx buffer data software compare CRC err count
|
|
|
- U32 dwCntRxICVErr; // rx buffer data software compare CRC err count
|
|
|
- U32 idxRxErrorDesc; // index for rx data error RD
|
|
|
+ /* Software check.... */
|
|
|
+ u32 dwCntRxDataErr; /* rx buffer data CRC err count */
|
|
|
+ u32 dwCntDecryptErr; /* rx buffer data CRC err count */
|
|
|
+ u32 dwCntRxICVErr; /* rx buffer data CRC err count */
|
|
|
+ u32 idxRxErrorDesc; /* index for rx data error RD */
|
|
|
|
|
|
- // 64-bit OID
|
|
|
- U32 ullTsrOK[2];
|
|
|
+ /* 64-bit OID */
|
|
|
+ u32 ullTsrOK[2];
|
|
|
|
|
|
// for some optional OIDs (64 bits) and DMI support
|
|
|
- U32 ullTxBroadcastFrames[2];
|
|
|
- U32 ullTxMulticastFrames[2];
|
|
|
- U32 ullTxDirectedFrames[2];
|
|
|
- U32 ullTxBroadcastBytes[2];
|
|
|
- U32 ullTxMulticastBytes[2];
|
|
|
- U32 ullTxDirectedBytes[2];
|
|
|
+ u32 ullTxBroadcastFrames[2];
|
|
|
+ u32 ullTxMulticastFrames[2];
|
|
|
+ u32 ullTxDirectedFrames[2];
|
|
|
+ u32 ullTxBroadcastBytes[2];
|
|
|
+ u32 ullTxMulticastBytes[2];
|
|
|
+ u32 ullTxDirectedBytes[2];
|
|
|
} SStatMIBCount, *PSStatMIBCount;
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
typedef struct tagSCmdValue {
|
|
|
|
|
|
- U32 dwValue;
|
|
|
+ u32 dwValue;
|
|
|
|
|
|
} SCmdValue, *PSCmdValue;
|
|
|
|
|
|
-
|
|
|
//
|
|
|
// hostapd & viawget ioctl related
|
|
|
//
|
|
|
|
|
|
-
|
|
|
// VIAGWET_IOCTL_HOSTAPD ioctl() cmd:
|
|
|
enum {
|
|
|
VIAWGET_HOSTAPD_FLUSH = 1,
|
|
@@ -405,16 +389,13 @@ enum {
|
|
|
VIAWGET_HOSTAPD_STA_CLEAR_STATS = 12,
|
|
|
};
|
|
|
|
|
|
-
|
|
|
#define VIAWGET_HOSTAPD_GENERIC_ELEMENT_HDR_LEN \
|
|
|
((int) (&((struct viawget_hostapd_param *) 0)->u.generic_elem.data))
|
|
|
|
|
|
// Maximum length for algorithm names (-1 for nul termination) used in ioctl()
|
|
|
|
|
|
-
|
|
|
-
|
|
|
struct viawget_hostapd_param {
|
|
|
- U32 cmd;
|
|
|
+ u32 cmd;
|
|
|
u8 sta_addr[6];
|
|
|
union {
|
|
|
struct {
|
|
@@ -423,20 +404,20 @@ struct viawget_hostapd_param {
|
|
|
u8 tx_supp_rates;
|
|
|
} add_sta;
|
|
|
struct {
|
|
|
- U32 inactive_sec;
|
|
|
+ u32 inactive_sec;
|
|
|
} get_info_sta;
|
|
|
struct {
|
|
|
u8 alg;
|
|
|
- U32 flags;
|
|
|
- U32 err;
|
|
|
+ u32 flags;
|
|
|
+ u32 err;
|
|
|
u8 idx;
|
|
|
u8 seq[8];
|
|
|
u16 key_len;
|
|
|
u8 key[0];
|
|
|
} crypt;
|
|
|
struct {
|
|
|
- U32 flags_and;
|
|
|
- U32 flags_or;
|
|
|
+ u32 flags_and;
|
|
|
+ u32 flags_or;
|
|
|
} set_flags_sta;
|
|
|
struct {
|
|
|
u16 rid;
|
|
@@ -458,16 +439,12 @@ struct viawget_hostapd_param {
|
|
|
} u;
|
|
|
};
|
|
|
|
|
|
-
|
|
|
-
|
|
|
/*--------------------- Export Classes ----------------------------*/
|
|
|
|
|
|
/*--------------------- Export Variables --------------------------*/
|
|
|
|
|
|
-
|
|
|
/*--------------------- Export Types ------------------------------*/
|
|
|
|
|
|
-
|
|
|
/*--------------------- Export Functions --------------------------*/
|
|
|
|
|
|
#endif /* __IOCMD_H__ */
|