2 * wlantest control interface
3 * Copyright (c) 2010, Jouni Malinen <j@w1.fi>
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
9 #ifndef WLANTEST_CTRL_H
10 #define WLANTEST_CTRL_H
12 #define WLANTEST_SOCK_NAME "w1.fi.wlantest"
13 #define WLANTEST_CTRL_MAX_CMD_LEN 1000
14 #define WLANTEST_CTRL_MAX_RESP_LEN 1000
16 enum wlantest_ctrl_cmd
{
17 WLANTEST_CTRL_SUCCESS
,
18 WLANTEST_CTRL_FAILURE
,
19 WLANTEST_CTRL_INVALID_CMD
,
20 WLANTEST_CTRL_UNKNOWN_CMD
,
22 WLANTEST_CTRL_TERMINATE
,
23 WLANTEST_CTRL_LIST_BSS
,
24 WLANTEST_CTRL_LIST_STA
,
26 WLANTEST_CTRL_CLEAR_STA_COUNTERS
,
27 WLANTEST_CTRL_CLEAR_BSS_COUNTERS
,
28 WLANTEST_CTRL_GET_STA_COUNTER
,
29 WLANTEST_CTRL_GET_BSS_COUNTER
,
31 WLANTEST_CTRL_VERSION
,
32 WLANTEST_CTRL_ADD_PASSPHRASE
,
33 WLANTEST_CTRL_INFO_STA
,
34 WLANTEST_CTRL_INFO_BSS
,
36 WLANTEST_CTRL_CLEAR_TDLS_COUNTERS
,
37 WLANTEST_CTRL_GET_TDLS_COUNTER
,
40 enum wlantest_ctrl_attr
{
42 WLANTEST_ATTR_STA_ADDR
,
43 WLANTEST_ATTR_STA_COUNTER
,
44 WLANTEST_ATTR_BSS_COUNTER
,
45 WLANTEST_ATTR_COUNTER
,
46 WLANTEST_ATTR_INJECT_FRAME
,
47 WLANTEST_ATTR_INJECT_SENDER_AP
,
48 WLANTEST_ATTR_INJECT_PROTECTION
,
49 WLANTEST_ATTR_VERSION
,
50 WLANTEST_ATTR_PASSPHRASE
,
51 WLANTEST_ATTR_STA_INFO
,
52 WLANTEST_ATTR_BSS_INFO
,
55 WLANTEST_ATTR_TDLS_COUNTER
,
56 WLANTEST_ATTR_STA2_ADDR
,
60 enum wlantest_bss_counter
{
61 WLANTEST_BSS_COUNTER_VALID_BIP_MMIE
,
62 WLANTEST_BSS_COUNTER_INVALID_BIP_MMIE
,
63 WLANTEST_BSS_COUNTER_MISSING_BIP_MMIE
,
64 WLANTEST_BSS_COUNTER_BIP_DEAUTH
,
65 WLANTEST_BSS_COUNTER_BIP_DISASSOC
,
66 NUM_WLANTEST_BSS_COUNTER
69 enum wlantest_sta_counter
{
70 WLANTEST_STA_COUNTER_AUTH_TX
,
71 WLANTEST_STA_COUNTER_AUTH_RX
,
72 WLANTEST_STA_COUNTER_ASSOCREQ_TX
,
73 WLANTEST_STA_COUNTER_REASSOCREQ_TX
,
74 WLANTEST_STA_COUNTER_PTK_LEARNED
,
75 WLANTEST_STA_COUNTER_VALID_DEAUTH_TX
,
76 WLANTEST_STA_COUNTER_VALID_DEAUTH_RX
,
77 WLANTEST_STA_COUNTER_INVALID_DEAUTH_TX
,
78 WLANTEST_STA_COUNTER_INVALID_DEAUTH_RX
,
79 WLANTEST_STA_COUNTER_VALID_DISASSOC_TX
,
80 WLANTEST_STA_COUNTER_VALID_DISASSOC_RX
,
81 WLANTEST_STA_COUNTER_INVALID_DISASSOC_TX
,
82 WLANTEST_STA_COUNTER_INVALID_DISASSOC_RX
,
83 WLANTEST_STA_COUNTER_VALID_SAQUERYREQ_TX
,
84 WLANTEST_STA_COUNTER_VALID_SAQUERYREQ_RX
,
85 WLANTEST_STA_COUNTER_INVALID_SAQUERYREQ_TX
,
86 WLANTEST_STA_COUNTER_INVALID_SAQUERYREQ_RX
,
87 WLANTEST_STA_COUNTER_VALID_SAQUERYRESP_TX
,
88 WLANTEST_STA_COUNTER_VALID_SAQUERYRESP_RX
,
89 WLANTEST_STA_COUNTER_INVALID_SAQUERYRESP_TX
,
90 WLANTEST_STA_COUNTER_INVALID_SAQUERYRESP_RX
,
91 WLANTEST_STA_COUNTER_PING_OK
,
92 WLANTEST_STA_COUNTER_ASSOCRESP_COMEBACK
,
93 WLANTEST_STA_COUNTER_REASSOCRESP_COMEBACK
,
94 WLANTEST_STA_COUNTER_PING_OK_FIRST_ASSOC
,
95 WLANTEST_STA_COUNTER_VALID_DEAUTH_RX_ACK
,
96 WLANTEST_STA_COUNTER_VALID_DISASSOC_RX_ACK
,
97 WLANTEST_STA_COUNTER_INVALID_DEAUTH_RX_ACK
,
98 WLANTEST_STA_COUNTER_INVALID_DISASSOC_RX_ACK
,
99 WLANTEST_STA_COUNTER_DEAUTH_RX_ASLEEP
,
100 WLANTEST_STA_COUNTER_DEAUTH_RX_AWAKE
,
101 WLANTEST_STA_COUNTER_DISASSOC_RX_ASLEEP
,
102 WLANTEST_STA_COUNTER_DISASSOC_RX_AWAKE
,
103 WLANTEST_STA_COUNTER_PROT_DATA_TX
,
104 WLANTEST_STA_COUNTER_DEAUTH_RX_RC6
,
105 WLANTEST_STA_COUNTER_DEAUTH_RX_RC7
,
106 WLANTEST_STA_COUNTER_DISASSOC_RX_RC6
,
107 WLANTEST_STA_COUNTER_DISASSOC_RX_RC7
,
108 NUM_WLANTEST_STA_COUNTER
111 enum wlantest_tdls_counter
{
112 WLANTEST_TDLS_COUNTER_VALID_DIRECT_LINK
,
113 WLANTEST_TDLS_COUNTER_INVALID_DIRECT_LINK
,
114 WLANTEST_TDLS_COUNTER_VALID_AP_PATH
,
115 WLANTEST_TDLS_COUNTER_INVALID_AP_PATH
,
116 WLANTEST_TDLS_COUNTER_SETUP_REQ
,
117 WLANTEST_TDLS_COUNTER_SETUP_RESP_OK
,
118 WLANTEST_TDLS_COUNTER_SETUP_RESP_FAIL
,
119 WLANTEST_TDLS_COUNTER_SETUP_CONF_OK
,
120 WLANTEST_TDLS_COUNTER_SETUP_CONF_FAIL
,
121 WLANTEST_TDLS_COUNTER_TEARDOWN
,
122 NUM_WLANTEST_TDLS_COUNTER
125 enum wlantest_inject_frame
{
127 WLANTEST_FRAME_ASSOCREQ
,
128 WLANTEST_FRAME_REASSOCREQ
,
129 WLANTEST_FRAME_DEAUTH
,
130 WLANTEST_FRAME_DISASSOC
,
131 WLANTEST_FRAME_SAQUERYREQ
,
135 * enum wlantest_inject_protection - WLANTEST_CTRL_INJECT protection
136 * @WLANTEST_INJECT_NORMAL: Use normal rules (protect if key is set)
137 * @WLANTEST_INJECT_PROTECTED: Force protection (fail if not possible)
138 * @WLANTEST_INJECT_UNPROTECTED: Force unprotected
139 * @WLANTEST_INJECT_INCORRECT_KEY: Force protection with incorrect key
141 enum wlantest_inject_protection
{
142 WLANTEST_INJECT_NORMAL
,
143 WLANTEST_INJECT_PROTECTED
,
144 WLANTEST_INJECT_UNPROTECTED
,
145 WLANTEST_INJECT_INCORRECT_KEY
,
148 enum wlantest_sta_info
{
149 WLANTEST_STA_INFO_PROTO
,
150 WLANTEST_STA_INFO_PAIRWISE
,
151 WLANTEST_STA_INFO_KEY_MGMT
,
152 WLANTEST_STA_INFO_RSN_CAPAB
,
153 WLANTEST_STA_INFO_STATE
,
154 WLANTEST_STA_INFO_GTK
,
157 enum wlantest_bss_info
{
158 WLANTEST_BSS_INFO_PROTO
,
159 WLANTEST_BSS_INFO_PAIRWISE
,
160 WLANTEST_BSS_INFO_GROUP
,
161 WLANTEST_BSS_INFO_GROUP_MGMT
,
162 WLANTEST_BSS_INFO_KEY_MGMT
,
163 WLANTEST_BSS_INFO_RSN_CAPAB
,
166 #endif /* WLANTEST_CTRL_H */