wpa_supplicant / hostapd 2.0

wpa_ctrl.h

Go to the documentation of this file.
00001 
00010 #ifndef WPA_CTRL_H
00011 #define WPA_CTRL_H
00012 
00013 #ifdef  __cplusplus
00014 extern "C" {
00015 #endif
00016 
00017 /* wpa_supplicant control interface - fixed message prefixes */
00018 
00020 #define WPA_CTRL_REQ "CTRL-REQ-"
00021 
00023 #define WPA_CTRL_RSP "CTRL-RSP-"
00024 
00025 /* Event messages with fixed prefix */
00027 #define WPA_EVENT_CONNECTED "CTRL-EVENT-CONNECTED "
00028 
00029 #define WPA_EVENT_DISCONNECTED "CTRL-EVENT-DISCONNECTED "
00030 
00031 #define WPA_EVENT_ASSOC_REJECT "CTRL-EVENT-ASSOC-REJECT "
00032 
00033 #define WPA_EVENT_TERMINATING "CTRL-EVENT-TERMINATING "
00034 
00035 #define WPA_EVENT_PASSWORD_CHANGED "CTRL-EVENT-PASSWORD-CHANGED "
00036 
00037 #define WPA_EVENT_EAP_NOTIFICATION "CTRL-EVENT-EAP-NOTIFICATION "
00038 
00039 #define WPA_EVENT_EAP_STARTED "CTRL-EVENT-EAP-STARTED "
00040 
00041 #define WPA_EVENT_EAP_PROPOSED_METHOD "CTRL-EVENT-EAP-PROPOSED-METHOD "
00042 
00043 #define WPA_EVENT_EAP_METHOD "CTRL-EVENT-EAP-METHOD "
00044 
00045 #define WPA_EVENT_EAP_PEER_CERT "CTRL-EVENT-EAP-PEER-CERT "
00046 
00047 #define WPA_EVENT_EAP_TLS_CERT_ERROR "CTRL-EVENT-EAP-TLS-CERT-ERROR "
00048 
00049 #define WPA_EVENT_EAP_SUCCESS "CTRL-EVENT-EAP-SUCCESS "
00050 
00051 #define WPA_EVENT_EAP_FAILURE "CTRL-EVENT-EAP-FAILURE "
00052 
00053 #define WPA_EVENT_SCAN_RESULTS "CTRL-EVENT-SCAN-RESULTS "
00054 
00055 #define WPA_EVENT_STATE_CHANGE "CTRL-EVENT-STATE-CHANGE "
00056 
00057 #define WPA_EVENT_BSS_ADDED "CTRL-EVENT-BSS-ADDED "
00058 
00059 #define WPA_EVENT_BSS_REMOVED "CTRL-EVENT-BSS-REMOVED "
00060 
00062 #define WPS_EVENT_OVERLAP "WPS-OVERLAP-DETECTED "
00063 
00064 #define WPS_EVENT_AP_AVAILABLE_PBC "WPS-AP-AVAILABLE-PBC "
00065 
00066 #define WPS_EVENT_AP_AVAILABLE_AUTH "WPS-AP-AVAILABLE-AUTH "
00067 
00069 #define WPS_EVENT_AP_AVAILABLE_PIN "WPS-AP-AVAILABLE-PIN "
00070 
00071 #define WPS_EVENT_AP_AVAILABLE "WPS-AP-AVAILABLE "
00072 
00073 #define WPS_EVENT_CRED_RECEIVED "WPS-CRED-RECEIVED "
00074 
00075 #define WPS_EVENT_M2D "WPS-M2D "
00076 
00077 #define WPS_EVENT_FAIL "WPS-FAIL "
00078 
00079 #define WPS_EVENT_SUCCESS "WPS-SUCCESS "
00080 
00081 #define WPS_EVENT_TIMEOUT "WPS-TIMEOUT "
00082 
00083 #define WPS_EVENT_ENROLLEE_SEEN "WPS-ENROLLEE-SEEN "
00084 
00085 #define WPS_EVENT_OPEN_NETWORK "WPS-OPEN-NETWORK "
00086 
00087 /* WPS ER events */
00088 #define WPS_EVENT_ER_AP_ADD "WPS-ER-AP-ADD "
00089 #define WPS_EVENT_ER_AP_REMOVE "WPS-ER-AP-REMOVE "
00090 #define WPS_EVENT_ER_ENROLLEE_ADD "WPS-ER-ENROLLEE-ADD "
00091 #define WPS_EVENT_ER_ENROLLEE_REMOVE "WPS-ER-ENROLLEE-REMOVE "
00092 #define WPS_EVENT_ER_AP_SETTINGS "WPS-ER-AP-SETTINGS "
00093 #define WPS_EVENT_ER_SET_SEL_REG "WPS-ER-AP-SET-SEL-REG "
00094 
00096 #define P2P_EVENT_DEVICE_FOUND "P2P-DEVICE-FOUND "
00097 
00099 #define P2P_EVENT_DEVICE_LOST "P2P-DEVICE-LOST "
00100 
00103 #define P2P_EVENT_GO_NEG_REQUEST "P2P-GO-NEG-REQUEST "
00104 #define P2P_EVENT_GO_NEG_SUCCESS "P2P-GO-NEG-SUCCESS "
00105 #define P2P_EVENT_GO_NEG_FAILURE "P2P-GO-NEG-FAILURE "
00106 #define P2P_EVENT_GROUP_FORMATION_SUCCESS "P2P-GROUP-FORMATION-SUCCESS "
00107 #define P2P_EVENT_GROUP_FORMATION_FAILURE "P2P-GROUP-FORMATION-FAILURE "
00108 #define P2P_EVENT_GROUP_STARTED "P2P-GROUP-STARTED "
00109 #define P2P_EVENT_GROUP_REMOVED "P2P-GROUP-REMOVED "
00110 #define P2P_EVENT_CROSS_CONNECT_ENABLE "P2P-CROSS-CONNECT-ENABLE "
00111 #define P2P_EVENT_CROSS_CONNECT_DISABLE "P2P-CROSS-CONNECT-DISABLE "
00112 /* parameters: <peer address> <PIN> */
00113 #define P2P_EVENT_PROV_DISC_SHOW_PIN "P2P-PROV-DISC-SHOW-PIN "
00114 /* parameters: <peer address> */
00115 #define P2P_EVENT_PROV_DISC_ENTER_PIN "P2P-PROV-DISC-ENTER-PIN "
00116 /* parameters: <peer address> */
00117 #define P2P_EVENT_PROV_DISC_PBC_REQ "P2P-PROV-DISC-PBC-REQ "
00118 /* parameters: <peer address> */
00119 #define P2P_EVENT_PROV_DISC_PBC_RESP "P2P-PROV-DISC-PBC-RESP "
00120 /* parameters: <peer address> <status> */
00121 #define P2P_EVENT_PROV_DISC_FAILURE "P2P-PROV-DISC-FAILURE"
00122 /* parameters: <freq> <src addr> <dialog token> <update indicator> <TLVs> */
00123 #define P2P_EVENT_SERV_DISC_REQ "P2P-SERV-DISC-REQ "
00124 /* parameters: <src addr> <update indicator> <TLVs> */
00125 #define P2P_EVENT_SERV_DISC_RESP "P2P-SERV-DISC-RESP "
00126 #define P2P_EVENT_INVITATION_RECEIVED "P2P-INVITATION-RECEIVED "
00127 #define P2P_EVENT_INVITATION_RESULT "P2P-INVITATION-RESULT "
00128 #define P2P_EVENT_FIND_STOPPED "P2P-FIND-STOPPED "
00129 
00130 #define INTERWORKING_AP "INTERWORKING-AP "
00131 #define INTERWORKING_NO_MATCH "INTERWORKING-NO-MATCH "
00132 
00133 /* hostapd control interface - fixed message prefixes */
00134 #define WPS_EVENT_PIN_NEEDED "WPS-PIN-NEEDED "
00135 #define WPS_EVENT_NEW_AP_SETTINGS "WPS-NEW-AP-SETTINGS "
00136 #define WPS_EVENT_REG_SUCCESS "WPS-REG-SUCCESS "
00137 #define WPS_EVENT_AP_SETUP_LOCKED "WPS-AP-SETUP-LOCKED "
00138 #define WPS_EVENT_AP_SETUP_UNLOCKED "WPS-AP-SETUP-UNLOCKED "
00139 #define WPS_EVENT_AP_PIN_ENABLED "WPS-AP-PIN-ENABLED "
00140 #define WPS_EVENT_AP_PIN_DISABLED "WPS-AP-PIN-DISABLED "
00141 #define AP_STA_CONNECTED "AP-STA-CONNECTED "
00142 #define AP_STA_DISCONNECTED "AP-STA-DISCONNECTED "
00143 
00144 
00145 /* BSS command information masks */
00146 
00147 #define WPA_BSS_MASK_ALL                0xFFFFFFFF
00148 #define WPA_BSS_MASK_ID                 BIT(0)
00149 #define WPA_BSS_MASK_BSSID              BIT(1)
00150 #define WPA_BSS_MASK_FREQ               BIT(2)
00151 #define WPA_BSS_MASK_BEACON_INT         BIT(3)
00152 #define WPA_BSS_MASK_CAPABILITIES       BIT(4)
00153 #define WPA_BSS_MASK_QUAL               BIT(5)
00154 #define WPA_BSS_MASK_NOISE              BIT(6)
00155 #define WPA_BSS_MASK_LEVEL              BIT(7)
00156 #define WPA_BSS_MASK_TSF                BIT(8)
00157 #define WPA_BSS_MASK_AGE                BIT(9)
00158 #define WPA_BSS_MASK_IE                 BIT(10)
00159 #define WPA_BSS_MASK_FLAGS              BIT(11)
00160 #define WPA_BSS_MASK_SSID               BIT(12)
00161 #define WPA_BSS_MASK_WPS_SCAN           BIT(13)
00162 #define WPA_BSS_MASK_P2P_SCAN           BIT(14)
00163 #define WPA_BSS_MASK_INTERNETW          BIT(15)
00164 
00165 
00166 /* wpa_supplicant/hostapd control interface access */
00167 
00179 struct wpa_ctrl * wpa_ctrl_open(const char *ctrl_path);
00180 
00181 
00189 void wpa_ctrl_close(struct wpa_ctrl *ctrl);
00190 
00191 
00219 int wpa_ctrl_request(struct wpa_ctrl *ctrl, const char *cmd, size_t cmd_len,
00220                      char *reply, size_t *reply_len,
00221                      void (*msg_cb)(char *msg, size_t len));
00222 
00223 
00235 int wpa_ctrl_attach(struct wpa_ctrl *ctrl);
00236 
00237 
00248 int wpa_ctrl_detach(struct wpa_ctrl *ctrl);
00249 
00250 
00265 int wpa_ctrl_recv(struct wpa_ctrl *ctrl, char *reply, size_t *reply_len);
00266 
00267 
00279 int wpa_ctrl_pending(struct wpa_ctrl *ctrl);
00280 
00281 
00296 int wpa_ctrl_get_fd(struct wpa_ctrl *ctrl);
00297 
00298 #ifdef ANDROID
00299 
00307 void wpa_ctrl_cleanup(void);
00308 #endif /* ANDROID */
00309 
00310 #ifdef CONFIG_CTRL_IFACE_UDP
00311 #define WPA_CTRL_IFACE_PORT 9877
00312 #define WPA_GLOBAL_CTRL_IFACE_PORT 9878
00313 #endif /* CONFIG_CTRL_IFACE_UDP */
00314 
00315 
00316 #ifdef  __cplusplus
00317 }
00318 #endif
00319 
00320 #endif /* WPA_CTRL_H */
00321 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines