1 /* 2 * WPA Supplicant - privilege separation commands 3 * Copyright (c) 2007-2009, Jouni Malinen <j@w1.fi> 4 * 5 * This software may be distributed under the terms of the BSD license. 6 * See README for more details. 7 */ 8 9 #ifndef PRIVSEP_COMMANDS_H 10 #define PRIVSEP_COMMANDS_H 11 12 #include "common/ieee802_11_defs.h" 13 14 enum privsep_cmd { 15 PRIVSEP_CMD_REGISTER, 16 PRIVSEP_CMD_UNREGISTER, 17 PRIVSEP_CMD_SCAN, 18 PRIVSEP_CMD_GET_SCAN_RESULTS, 19 PRIVSEP_CMD_ASSOCIATE, 20 PRIVSEP_CMD_GET_BSSID, 21 PRIVSEP_CMD_GET_SSID, 22 PRIVSEP_CMD_SET_KEY, 23 PRIVSEP_CMD_GET_CAPA, 24 PRIVSEP_CMD_L2_REGISTER, 25 PRIVSEP_CMD_L2_UNREGISTER, 26 PRIVSEP_CMD_L2_NOTIFY_AUTH_START, 27 PRIVSEP_CMD_L2_SEND, 28 PRIVSEP_CMD_SET_COUNTRY, 29 }; 30 31 struct privsep_cmd_associate 32 { 33 u8 bssid[ETH_ALEN]; 34 u8 ssid[SSID_MAX_LEN]; 35 size_t ssid_len; 36 int hwmode; 37 int freq; 38 int channel; 39 int pairwise_suite; 40 int group_suite; 41 int key_mgmt_suite; 42 int auth_alg; 43 int mode; 44 size_t wpa_ie_len; 45 /* followed by wpa_ie_len bytes of wpa_ie */ 46 }; 47 48 struct privsep_cmd_set_key 49 { 50 int alg; 51 u8 addr[ETH_ALEN]; 52 int key_idx; 53 int set_tx; 54 u8 seq[8]; 55 size_t seq_len; 56 u8 key[32]; 57 size_t key_len; 58 }; 59 60 enum privsep_event { 61 PRIVSEP_EVENT_SCAN_RESULTS, 62 PRIVSEP_EVENT_ASSOC, 63 PRIVSEP_EVENT_DISASSOC, 64 PRIVSEP_EVENT_ASSOCINFO, 65 PRIVSEP_EVENT_MICHAEL_MIC_FAILURE, 66 PRIVSEP_EVENT_INTERFACE_STATUS, 67 PRIVSEP_EVENT_PMKID_CANDIDATE, 68 PRIVSEP_EVENT_STKSTART, 69 PRIVSEP_EVENT_FT_RESPONSE, 70 PRIVSEP_EVENT_RX_EAPOL, 71 }; 72 73 #endif /* PRIVSEP_COMMANDS_H */ 74