wlantest_ctrl.h 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. /*
  2. * wlantest control interface
  3. * Copyright (c) 2010, Jouni Malinen <j@w1.fi>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. *
  9. * Alternatively, this software may be distributed under the terms of BSD
  10. * license.
  11. *
  12. * See README and COPYING for more details.
  13. */
  14. #ifndef WLANTEST_CTRL_H
  15. #define WLANTEST_CTRL_H
  16. #define WLANTEST_SOCK_NAME "w1.fi.wlantest"
  17. #define WLANTEST_CTRL_MAX_CMD_LEN 1000
  18. #define WLANTEST_CTRL_MAX_RESP_LEN 1000
  19. enum wlantest_ctrl_cmd {
  20. WLANTEST_CTRL_SUCCESS,
  21. WLANTEST_CTRL_FAILURE,
  22. WLANTEST_CTRL_INVALID_CMD,
  23. WLANTEST_CTRL_UNKNOWN_CMD,
  24. WLANTEST_CTRL_PING,
  25. WLANTEST_CTRL_TERMINATE,
  26. WLANTEST_CTRL_LIST_BSS,
  27. WLANTEST_CTRL_LIST_STA,
  28. WLANTEST_CTRL_FLUSH,
  29. WLANTEST_CTRL_CLEAR_STA_COUNTERS,
  30. WLANTEST_CTRL_CLEAR_BSS_COUNTERS,
  31. WLANTEST_CTRL_GET_STA_COUNTER,
  32. WLANTEST_CTRL_GET_BSS_COUNTER,
  33. WLANTEST_CTRL_INJECT,
  34. WLANTEST_CTRL_VERSION,
  35. WLANTEST_CTRL_ADD_PASSPHRASE,
  36. WLANTEST_CTRL_INFO_STA,
  37. WLANTEST_CTRL_INFO_BSS,
  38. WLANTEST_CTRL_SEND,
  39. WLANTEST_CTRL_CLEAR_TDLS_COUNTERS,
  40. WLANTEST_CTRL_GET_TDLS_COUNTER,
  41. };
  42. enum wlantest_ctrl_attr {
  43. WLANTEST_ATTR_BSSID,
  44. WLANTEST_ATTR_STA_ADDR,
  45. WLANTEST_ATTR_STA_COUNTER,
  46. WLANTEST_ATTR_BSS_COUNTER,
  47. WLANTEST_ATTR_COUNTER,
  48. WLANTEST_ATTR_INJECT_FRAME,
  49. WLANTEST_ATTR_INJECT_SENDER_AP,
  50. WLANTEST_ATTR_INJECT_PROTECTION,
  51. WLANTEST_ATTR_VERSION,
  52. WLANTEST_ATTR_PASSPHRASE,
  53. WLANTEST_ATTR_STA_INFO,
  54. WLANTEST_ATTR_BSS_INFO,
  55. WLANTEST_ATTR_INFO,
  56. WLANTEST_ATTR_FRAME,
  57. WLANTEST_ATTR_TDLS_COUNTER,
  58. WLANTEST_ATTR_STA2_ADDR,
  59. };
  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
  67. };
  68. enum wlantest_sta_counter {
  69. WLANTEST_STA_COUNTER_AUTH_TX,
  70. WLANTEST_STA_COUNTER_AUTH_RX,
  71. WLANTEST_STA_COUNTER_ASSOCREQ_TX,
  72. WLANTEST_STA_COUNTER_REASSOCREQ_TX,
  73. WLANTEST_STA_COUNTER_PTK_LEARNED,
  74. WLANTEST_STA_COUNTER_VALID_DEAUTH_TX,
  75. WLANTEST_STA_COUNTER_VALID_DEAUTH_RX,
  76. WLANTEST_STA_COUNTER_INVALID_DEAUTH_TX,
  77. WLANTEST_STA_COUNTER_INVALID_DEAUTH_RX,
  78. WLANTEST_STA_COUNTER_VALID_DISASSOC_TX,
  79. WLANTEST_STA_COUNTER_VALID_DISASSOC_RX,
  80. WLANTEST_STA_COUNTER_INVALID_DISASSOC_TX,
  81. WLANTEST_STA_COUNTER_INVALID_DISASSOC_RX,
  82. WLANTEST_STA_COUNTER_VALID_SAQUERYREQ_TX,
  83. WLANTEST_STA_COUNTER_VALID_SAQUERYREQ_RX,
  84. WLANTEST_STA_COUNTER_INVALID_SAQUERYREQ_TX,
  85. WLANTEST_STA_COUNTER_INVALID_SAQUERYREQ_RX,
  86. WLANTEST_STA_COUNTER_VALID_SAQUERYRESP_TX,
  87. WLANTEST_STA_COUNTER_VALID_SAQUERYRESP_RX,
  88. WLANTEST_STA_COUNTER_INVALID_SAQUERYRESP_TX,
  89. WLANTEST_STA_COUNTER_INVALID_SAQUERYRESP_RX,
  90. WLANTEST_STA_COUNTER_PING_OK,
  91. WLANTEST_STA_COUNTER_ASSOCRESP_COMEBACK,
  92. WLANTEST_STA_COUNTER_REASSOCRESP_COMEBACK,
  93. WLANTEST_STA_COUNTER_PING_OK_FIRST_ASSOC,
  94. WLANTEST_STA_COUNTER_VALID_DEAUTH_RX_ACK,
  95. WLANTEST_STA_COUNTER_VALID_DISASSOC_RX_ACK,
  96. WLANTEST_STA_COUNTER_INVALID_DEAUTH_RX_ACK,
  97. WLANTEST_STA_COUNTER_INVALID_DISASSOC_RX_ACK,
  98. WLANTEST_STA_COUNTER_DEAUTH_RX_ASLEEP,
  99. WLANTEST_STA_COUNTER_DEAUTH_RX_AWAKE,
  100. WLANTEST_STA_COUNTER_DISASSOC_RX_ASLEEP,
  101. WLANTEST_STA_COUNTER_DISASSOC_RX_AWAKE,
  102. WLANTEST_STA_COUNTER_PROT_DATA_TX,
  103. NUM_WLANTEST_STA_COUNTER
  104. };
  105. enum wlantest_tdls_counter {
  106. WLANTEST_TDLS_COUNTER_VALID_DIRECT_LINK,
  107. WLANTEST_TDLS_COUNTER_INVALID_DIRECT_LINK,
  108. WLANTEST_TDLS_COUNTER_VALID_AP_PATH,
  109. WLANTEST_TDLS_COUNTER_INVALID_AP_PATH,
  110. NUM_WLANTEST_TDLS_COUNTER
  111. };
  112. enum wlantest_inject_frame {
  113. WLANTEST_FRAME_AUTH,
  114. WLANTEST_FRAME_ASSOCREQ,
  115. WLANTEST_FRAME_REASSOCREQ,
  116. WLANTEST_FRAME_DEAUTH,
  117. WLANTEST_FRAME_DISASSOC,
  118. WLANTEST_FRAME_SAQUERYREQ,
  119. };
  120. /**
  121. * enum wlantest_inject_protection - WLANTEST_CTRL_INJECT protection
  122. * @WLANTEST_INJECT_NORMAL: Use normal rules (protect if key is set)
  123. * @WLANTEST_INJECT_PROTECTED: Force protection (fail if not possible)
  124. * @WLANTEST_INJECT_UNPROTECTED: Force unprotected
  125. * @WLANTEST_INJECT_INCORRECT_KEY: Force protection with incorrect key
  126. */
  127. enum wlantest_inject_protection {
  128. WLANTEST_INJECT_NORMAL,
  129. WLANTEST_INJECT_PROTECTED,
  130. WLANTEST_INJECT_UNPROTECTED,
  131. WLANTEST_INJECT_INCORRECT_KEY,
  132. };
  133. enum wlantest_sta_info {
  134. WLANTEST_STA_INFO_PROTO,
  135. WLANTEST_STA_INFO_PAIRWISE,
  136. WLANTEST_STA_INFO_KEY_MGMT,
  137. WLANTEST_STA_INFO_RSN_CAPAB,
  138. WLANTEST_STA_INFO_STATE,
  139. };
  140. enum wlantest_bss_info {
  141. WLANTEST_BSS_INFO_PROTO,
  142. WLANTEST_BSS_INFO_PAIRWISE,
  143. WLANTEST_BSS_INFO_GROUP,
  144. WLANTEST_BSS_INFO_GROUP_MGMT,
  145. WLANTEST_BSS_INFO_KEY_MGMT,
  146. WLANTEST_BSS_INFO_RSN_CAPAB,
  147. };
  148. #endif /* WLANTEST_CTRL_H */