wps.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387
  1. /*
  2. * WPS IE definitions
  3. *
  4. * Portions of this code are copyright (c) 2020 Cypress Semiconductor Corporation
  5. *
  6. * Copyright (C) 1999-2020, Broadcom Corporation
  7. *
  8. * Unless you and Broadcom execute a separate written software license
  9. * agreement governing use of this software, this software is licensed to you
  10. * under the terms of the GNU General Public License version 2 (the "GPL"),
  11. * available at http://www.broadcom.com/licenses/GPLv2.php, with the
  12. * following added to such license:
  13. *
  14. * As a special exception, the copyright holders of this software give you
  15. * permission to link this software with independent modules, and to copy and
  16. * distribute the resulting executable under terms of your choice, provided that
  17. * you also meet, for each linked independent module, the terms and conditions of
  18. * the license of that module. An independent module is a module which is not
  19. * derived from this software. The special exception does not apply to any
  20. * modifications of the software.
  21. *
  22. * Notwithstanding the above, under no circumstances may you combine this
  23. * software in any way with any other Broadcom software provided under a license
  24. * other than the GPL, without Broadcom's express prior written consent.
  25. *
  26. *
  27. * <<Broadcom-WL-IPTag/Open:>>
  28. *
  29. * $Id$
  30. */
  31. #ifndef _WPS_
  32. #define _WPS_
  33. #ifdef __cplusplus
  34. extern "C" {
  35. #endif // endif
  36. /* Data Element Definitions */
  37. #define WPS_ID_AP_CHANNEL 0x1001
  38. #define WPS_ID_ASSOC_STATE 0x1002
  39. #define WPS_ID_AUTH_TYPE 0x1003
  40. #define WPS_ID_AUTH_TYPE_FLAGS 0x1004
  41. #define WPS_ID_AUTHENTICATOR 0x1005
  42. #define WPS_ID_CONFIG_METHODS 0x1008
  43. #define WPS_ID_CONFIG_ERROR 0x1009
  44. #define WPS_ID_CONF_URL4 0x100A
  45. #define WPS_ID_CONF_URL6 0x100B
  46. #define WPS_ID_CONN_TYPE 0x100C
  47. #define WPS_ID_CONN_TYPE_FLAGS 0x100D
  48. #define WPS_ID_CREDENTIAL 0x100E
  49. #define WPS_ID_DEVICE_NAME 0x1011
  50. #define WPS_ID_DEVICE_PWD_ID 0x1012
  51. #define WPS_ID_E_HASH1 0x1014
  52. #define WPS_ID_E_HASH2 0x1015
  53. #define WPS_ID_E_SNONCE1 0x1016
  54. #define WPS_ID_E_SNONCE2 0x1017
  55. #define WPS_ID_ENCR_SETTINGS 0x1018
  56. #define WPS_ID_ENCR_TYPE 0x100F
  57. #define WPS_ID_ENCR_TYPE_FLAGS 0x1010
  58. #define WPS_ID_ENROLLEE_NONCE 0x101A
  59. #define WPS_ID_FEATURE_ID 0x101B
  60. #define WPS_ID_IDENTITY 0x101C
  61. #define WPS_ID_IDENTITY_PROOF 0x101D
  62. #define WPS_ID_KEY_WRAP_AUTH 0x101E
  63. #define WPS_ID_KEY_IDENTIFIER 0x101F
  64. #define WPS_ID_MAC_ADDR 0x1020
  65. #define WPS_ID_MANUFACTURER 0x1021
  66. #define WPS_ID_MSG_TYPE 0x1022
  67. #define WPS_ID_MODEL_NAME 0x1023
  68. #define WPS_ID_MODEL_NUMBER 0x1024
  69. #define WPS_ID_NW_INDEX 0x1026
  70. #define WPS_ID_NW_KEY 0x1027
  71. #define WPS_ID_NW_KEY_INDEX 0x1028
  72. #define WPS_ID_NEW_DEVICE_NAME 0x1029
  73. #define WPS_ID_NEW_PWD 0x102A
  74. #define WPS_ID_OOB_DEV_PWD 0x102C
  75. #define WPS_ID_OS_VERSION 0x102D
  76. #define WPS_ID_POWER_LEVEL 0x102F
  77. #define WPS_ID_PSK_CURRENT 0x1030
  78. #define WPS_ID_PSK_MAX 0x1031
  79. #define WPS_ID_PUBLIC_KEY 0x1032
  80. #define WPS_ID_RADIO_ENABLED 0x1033
  81. #define WPS_ID_REBOOT 0x1034
  82. #define WPS_ID_REGISTRAR_CURRENT 0x1035
  83. #define WPS_ID_REGISTRAR_ESTBLSHD 0x1036
  84. #define WPS_ID_REGISTRAR_LIST 0x1037
  85. #define WPS_ID_REGISTRAR_MAX 0x1038
  86. #define WPS_ID_REGISTRAR_NONCE 0x1039
  87. #define WPS_ID_REQ_TYPE 0x103A
  88. #define WPS_ID_RESP_TYPE 0x103B
  89. #define WPS_ID_RF_BAND 0x103C
  90. #define WPS_ID_R_HASH1 0x103D
  91. #define WPS_ID_R_HASH2 0x103E
  92. #define WPS_ID_R_SNONCE1 0x103F
  93. #define WPS_ID_R_SNONCE2 0x1040
  94. #define WPS_ID_SEL_REGISTRAR 0x1041
  95. #define WPS_ID_SERIAL_NUM 0x1042
  96. #define WPS_ID_SC_STATE 0x1044
  97. #define WPS_ID_SSID 0x1045
  98. #define WPS_ID_TOT_NETWORKS 0x1046
  99. #define WPS_ID_UUID_E 0x1047
  100. #define WPS_ID_UUID_R 0x1048
  101. #define WPS_ID_VENDOR_EXT 0x1049
  102. #define WPS_ID_VERSION 0x104A
  103. #define WPS_ID_X509_CERT_REQ 0x104B
  104. #define WPS_ID_X509_CERT 0x104C
  105. #define WPS_ID_EAP_IDENTITY 0x104D
  106. #define WPS_ID_MSG_COUNTER 0x104E
  107. #define WPS_ID_PUBKEY_HASH 0x104F
  108. #define WPS_ID_REKEY_KEY 0x1050
  109. #define WPS_ID_KEY_LIFETIME 0x1051
  110. #define WPS_ID_PERM_CFG_METHODS 0x1052
  111. #define WPS_ID_SEL_REG_CFG_METHODS 0x1053
  112. #define WPS_ID_PRIM_DEV_TYPE 0x1054
  113. #define WPS_ID_SEC_DEV_TYPE_LIST 0x1055
  114. #define WPS_ID_PORTABLE_DEVICE 0x1056
  115. #define WPS_ID_AP_SETUP_LOCKED 0x1057
  116. #define WPS_ID_APP_LIST 0x1058
  117. #define WPS_ID_EAP_TYPE 0x1059
  118. #define WPS_ID_INIT_VECTOR 0x1060
  119. #define WPS_ID_KEY_PROVIDED_AUTO 0x1061
  120. #define WPS_ID_8021X_ENABLED 0x1062
  121. #define WPS_ID_WEP_TRANSMIT_KEY 0x1064
  122. #define WPS_ID_REQ_DEV_TYPE 0x106A
  123. /* WSC 2.0, WFA Vendor Extension Subelements */
  124. #define WFA_VENDOR_EXT_ID "\x00\x37\x2A"
  125. #define WPS_WFA_SUBID_VERSION2 0x00
  126. #define WPS_WFA_SUBID_AUTHORIZED_MACS 0x01
  127. #define WPS_WFA_SUBID_NW_KEY_SHAREABLE 0x02
  128. #define WPS_WFA_SUBID_REQ_TO_ENROLL 0x03
  129. #define WPS_WFA_SUBID_SETTINGS_DELAY_TIME 0x04
  130. #define WPS_WFA_SUBID_REG_CFG_METHODS 0x05
  131. /* WCN-NET Windows Rally Vertical Pairing Vendor Extensions */
  132. #define MS_VENDOR_EXT_ID "\x00\x01\x37"
  133. #define WPS_MS_ID_VPI 0x1001 /* Vertical Pairing Identifier TLV */
  134. #define WPS_MS_ID_TRANSPORT_UUID 0x1002 /* Transport UUID TLV */
  135. /* Vertical Pairing Identifier TLV Definitions */
  136. #define WPS_MS_VPI_TRANSPORT_NONE 0x00 /* None */
  137. #define WPS_MS_VPI_TRANSPORT_DPWS 0x01 /* Devices Profile for Web Services */
  138. #define WPS_MS_VPI_TRANSPORT_UPNP 0x02 /* uPnP */
  139. #define WPS_MS_VPI_TRANSPORT_SDNWS 0x03 /* Secure Devices Profile for Web Services */
  140. #define WPS_MS_VPI_NO_PROFILE_REQ 0x00 /* Wi-Fi profile not requested.
  141. * Not supported in Windows 7
  142. */
  143. #define WPS_MS_VPI_PROFILE_REQ 0x01 /* Wi-Fi profile requested. */
  144. /* sizes of the fixed size elements */
  145. #define WPS_ID_AP_CHANNEL_S 2
  146. #define WPS_ID_ASSOC_STATE_S 2
  147. #define WPS_ID_AUTH_TYPE_S 2
  148. #define WPS_ID_AUTH_TYPE_FLAGS_S 2
  149. #define WPS_ID_AUTHENTICATOR_S 8
  150. #define WPS_ID_CONFIG_METHODS_S 2
  151. #define WPS_ID_CONFIG_ERROR_S 2
  152. #define WPS_ID_CONN_TYPE_S 1
  153. #define WPS_ID_CONN_TYPE_FLAGS_S 1
  154. #define WPS_ID_DEVICE_PWD_ID_S 2
  155. #define WPS_ID_ENCR_TYPE_S 2
  156. #define WPS_ID_ENCR_TYPE_FLAGS_S 2
  157. #define WPS_ID_FEATURE_ID_S 4
  158. #define WPS_ID_MAC_ADDR_S 6
  159. #define WPS_ID_MSG_TYPE_S 1
  160. #define WPS_ID_SC_STATE_S 1
  161. #define WPS_ID_RF_BAND_S 1
  162. #define WPS_ID_OS_VERSION_S 4
  163. #define WPS_ID_VERSION_S 1
  164. #define WPS_ID_SEL_REGISTRAR_S 1
  165. #define WPS_ID_SEL_REG_CFG_METHODS_S 2
  166. #define WPS_ID_REQ_TYPE_S 1
  167. #define WPS_ID_RESP_TYPE_S 1
  168. #define WPS_ID_AP_SETUP_LOCKED_S 1
  169. /* WSC 2.0, WFA Vendor Extension Subelements */
  170. #define WPS_WFA_SUBID_VERSION2_S 1
  171. #define WPS_WFA_SUBID_NW_KEY_SHAREABLE_S 1
  172. #define WPS_WFA_SUBID_REQ_TO_ENROLL_S 1
  173. #define WPS_WFA_SUBID_SETTINGS_DELAY_TIME_S 1
  174. #define WPS_WFA_SUBID_REG_CFG_METHODS_S 2
  175. /* Association states */
  176. #define WPS_ASSOC_NOT_ASSOCIATED 0
  177. #define WPS_ASSOC_CONN_SUCCESS 1
  178. #define WPS_ASSOC_CONFIG_FAIL 2
  179. #define WPS_ASSOC_ASSOC_FAIL 3
  180. #define WPS_ASSOC_IP_FAIL 4
  181. /* Authentication types */
  182. #define WPS_AUTHTYPE_OPEN 0x0001
  183. #define WPS_AUTHTYPE_WPAPSK 0x0002 /* Deprecated in WSC 2.0 */
  184. #define WPS_AUTHTYPE_SHARED 0x0004 /* Deprecated in WSC 2.0 */
  185. #define WPS_AUTHTYPE_WPA 0x0008 /* Deprecated in WSC 2.0 */
  186. #define WPS_AUTHTYPE_WPA2 0x0010
  187. #define WPS_AUTHTYPE_WPA2PSK 0x0020
  188. /* Config methods */
  189. #define WPS_CONFMET_USBA 0x0001 /* Deprecated in WSC 2.0 */
  190. #define WPS_CONFMET_ETHERNET 0x0002 /* Deprecated in WSC 2.0 */
  191. #define WPS_CONFMET_LABEL 0x0004
  192. #define WPS_CONFMET_DISPLAY 0x0008
  193. #define WPS_CONFMET_EXT_NFC_TOK 0x0010
  194. #define WPS_CONFMET_INT_NFC_TOK 0x0020
  195. #define WPS_CONFMET_NFC_INTF 0x0040
  196. #define WPS_CONFMET_PBC 0x0080
  197. #define WPS_CONFMET_KEYPAD 0x0100
  198. /* WSC 2.0 */
  199. #define WPS_CONFMET_VIRT_PBC 0x0280
  200. #define WPS_CONFMET_PHY_PBC 0x0480
  201. #define WPS_CONFMET_VIRT_DISPLAY 0x2008
  202. #define WPS_CONFMET_PHY_DISPLAY 0x4008
  203. /* WPS error messages */
  204. #define WPS_ERROR_NO_ERROR 0
  205. #define WPS_ERROR_OOB_INT_READ_ERR 1
  206. #define WPS_ERROR_DECRYPT_CRC_FAIL 2
  207. #define WPS_ERROR_CHAN24_NOT_SUPP 3
  208. #define WPS_ERROR_CHAN50_NOT_SUPP 4
  209. #define WPS_ERROR_SIGNAL_WEAK 5 /* Deprecated in WSC 2.0 */
  210. #define WPS_ERROR_NW_AUTH_FAIL 6 /* Deprecated in WSC 2.0 */
  211. #define WPS_ERROR_NW_ASSOC_FAIL 7 /* Deprecated in WSC 2.0 */
  212. #define WPS_ERROR_NO_DHCP_RESP 8 /* Deprecated in WSC 2.0 */
  213. #define WPS_ERROR_FAILED_DHCP_CONF 9 /* Deprecated in WSC 2.0 */
  214. #define WPS_ERROR_IP_ADDR_CONFLICT 10 /* Deprecated in WSC 2.0 */
  215. #define WPS_ERROR_FAIL_CONN_REGISTRAR 11
  216. #define WPS_ERROR_MULTI_PBC_DETECTED 12
  217. #define WPS_ERROR_ROGUE_SUSPECTED 13
  218. #define WPS_ERROR_DEVICE_BUSY 14
  219. #define WPS_ERROR_SETUP_LOCKED 15
  220. #define WPS_ERROR_MSG_TIMEOUT 16 /* Deprecated in WSC 2.0 */
  221. #define WPS_ERROR_REG_SESSION_TIMEOUT 17 /* Deprecated in WSC 2.0 */
  222. #define WPS_ERROR_DEV_PWD_AUTH_FAIL 18
  223. #define WPS_ERROR_60GHZ_NOT_SUPPORT 19
  224. #define WPS_ERROR_PKH_MISMATCH 20 /* Public Key Hash Mismatch */
  225. /* Connection types */
  226. #define WPS_CONNTYPE_ESS 0x01
  227. #define WPS_CONNTYPE_IBSS 0x02
  228. /* Device password ID */
  229. #define WPS_DEVICEPWDID_DEFAULT 0x0000
  230. #define WPS_DEVICEPWDID_USER_SPEC 0x0001
  231. #define WPS_DEVICEPWDID_MACHINE_SPEC 0x0002
  232. #define WPS_DEVICEPWDID_REKEY 0x0003
  233. #define WPS_DEVICEPWDID_PUSH_BTN 0x0004
  234. #define WPS_DEVICEPWDID_REG_SPEC 0x0005
  235. #define WPS_DEVICEPWDID_IBSS 0x0006
  236. #define WPS_DEVICEPWDID_NFC_CHO 0x0007 /* NFC-Connection-Handover */
  237. #define WPS_DEVICEPWDID_WFDS 0x0008 /* Wi-Fi Direct Services Specification */
  238. /* Encryption type */
  239. #define WPS_ENCRTYPE_NONE 0x0001
  240. #define WPS_ENCRTYPE_WEP 0x0002 /* Deprecated in WSC 2.0 */
  241. #define WPS_ENCRTYPE_TKIP 0x0004 /* Deprecated in version 2.0. TKIP can only
  242. * be advertised on the AP when Mixed Mode
  243. * is enabled (Encryption Type is 0x000c).
  244. */
  245. #define WPS_ENCRTYPE_AES 0x0008
  246. /* WPS Message Types */
  247. #define WPS_ID_BEACON 0x01
  248. #define WPS_ID_PROBE_REQ 0x02
  249. #define WPS_ID_PROBE_RESP 0x03
  250. #define WPS_ID_MESSAGE_M1 0x04
  251. #define WPS_ID_MESSAGE_M2 0x05
  252. #define WPS_ID_MESSAGE_M2D 0x06
  253. #define WPS_ID_MESSAGE_M3 0x07
  254. #define WPS_ID_MESSAGE_M4 0x08
  255. #define WPS_ID_MESSAGE_M5 0x09
  256. #define WPS_ID_MESSAGE_M6 0x0A
  257. #define WPS_ID_MESSAGE_M7 0x0B
  258. #define WPS_ID_MESSAGE_M8 0x0C
  259. #define WPS_ID_MESSAGE_ACK 0x0D
  260. #define WPS_ID_MESSAGE_NACK 0x0E
  261. #define WPS_ID_MESSAGE_DONE 0x0F
  262. /* WSP private ID for local use */
  263. #define WPS_PRIVATE_ID_IDENTITY (WPS_ID_MESSAGE_DONE + 1)
  264. #define WPS_PRIVATE_ID_WPS_START (WPS_ID_MESSAGE_DONE + 2)
  265. #define WPS_PRIVATE_ID_FAILURE (WPS_ID_MESSAGE_DONE + 3)
  266. #define WPS_PRIVATE_ID_FRAG (WPS_ID_MESSAGE_DONE + 4)
  267. #define WPS_PRIVATE_ID_FRAG_ACK (WPS_ID_MESSAGE_DONE + 5)
  268. #define WPS_PRIVATE_ID_EAPOL_START (WPS_ID_MESSAGE_DONE + 6)
  269. /* Device Type categories for primary and secondary device types */
  270. #define WPS_DEVICE_TYPE_CAT_COMPUTER 1
  271. #define WPS_DEVICE_TYPE_CAT_INPUT_DEVICE 2
  272. #define WPS_DEVICE_TYPE_CAT_PRINTER 3
  273. #define WPS_DEVICE_TYPE_CAT_CAMERA 4
  274. #define WPS_DEVICE_TYPE_CAT_STORAGE 5
  275. #define WPS_DEVICE_TYPE_CAT_NW_INFRA 6
  276. #define WPS_DEVICE_TYPE_CAT_DISPLAYS 7
  277. #define WPS_DEVICE_TYPE_CAT_MM_DEVICES 8
  278. #define WPS_DEVICE_TYPE_CAT_GAME_DEVICES 9
  279. #define WPS_DEVICE_TYPE_CAT_TELEPHONE 10
  280. #define WPS_DEVICE_TYPE_CAT_AUDIO_DEVICES 11 /* WSC 2.0 */
  281. /* Device Type sub categories for primary and secondary device types */
  282. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_PC 1
  283. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_SERVER 2
  284. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_MEDIA_CTR 3
  285. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_UM_PC 4 /* WSC 2.0 */
  286. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_NOTEBOOK 5 /* WSC 2.0 */
  287. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_DESKTOP 6 /* WSC 2.0 */
  288. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_MID 7 /* WSC 2.0 */
  289. #define WPS_DEVICE_TYPE_SUB_CAT_COMP_NETBOOK 8 /* WSC 2.0 */
  290. #define WPS_DEVICE_TYPE_SUB_CAT_INP_Keyboard 1 /* WSC 2.0 */
  291. #define WPS_DEVICE_TYPE_SUB_CAT_INP_MOUSE 2 /* WSC 2.0 */
  292. #define WPS_DEVICE_TYPE_SUB_CAT_INP_JOYSTICK 3 /* WSC 2.0 */
  293. #define WPS_DEVICE_TYPE_SUB_CAT_INP_TRACKBALL 4 /* WSC 2.0 */
  294. #define WPS_DEVICE_TYPE_SUB_CAT_INP_GAM_CTRL 5 /* WSC 2.0 */
  295. #define WPS_DEVICE_TYPE_SUB_CAT_INP_REMOTE 6 /* WSC 2.0 */
  296. #define WPS_DEVICE_TYPE_SUB_CAT_INP_TOUCHSCREEN 7 /* WSC 2.0 */
  297. #define WPS_DEVICE_TYPE_SUB_CAT_INP_BIO_READER 8 /* WSC 2.0 */
  298. #define WPS_DEVICE_TYPE_SUB_CAT_INP_BAR_READER 9 /* WSC 2.0 */
  299. #define WPS_DEVICE_TYPE_SUB_CAT_PRTR_PRINTER 1
  300. #define WPS_DEVICE_TYPE_SUB_CAT_PRTR_SCANNER 2
  301. #define WPS_DEVICE_TYPE_SUB_CAT_PRTR_FAX 3 /* WSC 2.0 */
  302. #define WPS_DEVICE_TYPE_SUB_CAT_PRTR_COPIER 4 /* WSC 2.0 */
  303. #define WPS_DEVICE_TYPE_SUB_CAT_PRTR_ALLINONE 5 /* WSC 2.0 */
  304. #define WPS_DEVICE_TYPE_SUB_CAT_CAM_DGTL_STILL 1
  305. #define WPS_DEVICE_TYPE_SUB_CAT_CAM_VIDEO_CAM 2 /* WSC 2.0 */
  306. #define WPS_DEVICE_TYPE_SUB_CAT_CAM_WEB_CAM 3 /* WSC 2.0 */
  307. #define WPS_DEVICE_TYPE_SUB_CAT_CAM_SECU_CAM 4 /* WSC 2.0 */
  308. #define WPS_DEVICE_TYPE_SUB_CAT_STOR_NAS 1
  309. #define WPS_DEVICE_TYPE_SUB_CAT_NW_AP 1
  310. #define WPS_DEVICE_TYPE_SUB_CAT_NW_ROUTER 2
  311. #define WPS_DEVICE_TYPE_SUB_CAT_NW_SWITCH 3
  312. #define WPS_DEVICE_TYPE_SUB_CAT_NW_GATEWAY 4 /* WSC 2.0 */
  313. #define WPS_DEVICE_TYPE_SUB_CAT_NW_BRIDGE 5 /* WSC 2.0 */
  314. #define WPS_DEVICE_TYPE_SUB_CAT_DISP_TV 1
  315. #define WPS_DEVICE_TYPE_SUB_CAT_DISP_PIC_FRAME 2
  316. #define WPS_DEVICE_TYPE_SUB_CAT_DISP_PROJECTOR 3
  317. #define WPS_DEVICE_TYPE_SUB_CAT_DISP_MONITOR 4 /* WSC 2.0 */
  318. #define WPS_DEVICE_TYPE_SUB_CAT_MM_DAR 1
  319. #define WPS_DEVICE_TYPE_SUB_CAT_MM_PVR 2
  320. #define WPS_DEVICE_TYPE_SUB_CAT_MM_MCX 3
  321. #define WPS_DEVICE_TYPE_SUB_CAT_MM_STB 4 /* WSC 2.0 */
  322. #define WPS_DEVICE_TYPE_SUB_CAT_MM_MS_ME 5 /* WSC 2.0 */
  323. #define WPS_DEVICE_TYPE_SUB_CAT_MM_PVP 6 /* WSC 2.0 */
  324. #define WPS_DEVICE_TYPE_SUB_CAT_GAM_XBOX 1
  325. #define WPS_DEVICE_TYPE_SUB_CAT_GAM_XBOX_360 2
  326. #define WPS_DEVICE_TYPE_SUB_CAT_GAM_PS 3
  327. #define WPS_DEVICE_TYPE_SUB_CAT_GAM_GC 4 /* WSC 2.0 */
  328. #define WPS_DEVICE_TYPE_SUB_CAT_GAM_PGD 5 /* WSC 2.0 */
  329. #define WPS_DEVICE_TYPE_SUB_CAT_PHONE_WM 1
  330. #define WPS_DEVICE_TYPE_SUB_CAT_PHONE_PSM 2 /* WSC 2.0 */
  331. #define WPS_DEVICE_TYPE_SUB_CAT_PHONE_PDM 3 /* WSC 2.0 */
  332. #define WPS_DEVICE_TYPE_SUB_CAT_PHONE_SSM 4 /* WSC 2.0 */
  333. #define WPS_DEVICE_TYPE_SUB_CAT_PHONE_SDM 5 /* WSC 2.0 */
  334. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_TUNER 1 /* WSC 2.0 */
  335. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_SPEAKERS 2 /* WSC 2.0 */
  336. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_PMP 3 /* WSC 2.0 */
  337. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_HEADSET 4 /* WSC 2.0 */
  338. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_HPHONE 5 /* WSC 2.0 */
  339. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_MPHONE 6 /* WSC 2.0 */
  340. #define WPS_DEVICE_TYPE_SUB_CAT_AUDIO_HTS 7 /* WSC 2.0 */
  341. /* Device request/response type */
  342. #define WPS_MSGTYPE_ENROLLEE_INFO_ONLY 0x00
  343. #define WPS_MSGTYPE_ENROLLEE_OPEN_8021X 0x01
  344. #define WPS_MSGTYPE_REGISTRAR 0x02
  345. #define WPS_MSGTYPE_AP_WLAN_MGR 0x03
  346. /* RF Band */
  347. #define WPS_RFBAND_24GHZ 0x01
  348. #define WPS_RFBAND_50GHZ 0x02
  349. /* Simple Config state */
  350. #define WPS_SCSTATE_UNCONFIGURED 0x01
  351. #define WPS_SCSTATE_CONFIGURED 0x02
  352. #define WPS_SCSTATE_OFF 11
  353. /* WPS Vendor extension key */
  354. #define WPS_OUI_HEADER_LEN 2
  355. #define WPS_OUI_HEADER_SIZE 4
  356. #define WPS_OUI_FIXED_HEADER_OFF 16
  357. #define WPS_WFA_SUBID_V2_OFF 3
  358. #define WPS_WFA_V2_OFF 5
  359. #ifdef __cplusplus
  360. }
  361. #endif // endif
  362. #endif /* _WPS_ */