Add SME support (separate authentication and association)
[mech_eap.git] / wpa_supplicant / wpa_supplicant_i.h
index d8e7fb2..ff012b9 100644 (file)
@@ -157,6 +157,11 @@ struct wpa_params {
         * wpa_debug_file_path - Path of debug file or %NULL to use stdout
         */
        const char *wpa_debug_file_path;
+
+       /**
+        * wpa_debug_syslog - Enable log output through syslog
+        */
+       int wpa_debug_syslog;
 };
 
 /**
@@ -349,8 +354,7 @@ struct wpa_supplicant {
        int scan_runs; /* number of scan runs since WPS was started */
 
        struct wpa_client_mlme mlme;
-       int use_client_mlme;
-       int driver_4way_handshake;
+       unsigned int drv_flags;
        int max_scan_ssids;
 
        int pending_mic_error_report;
@@ -362,6 +366,21 @@ struct wpa_supplicant {
        int blacklist_cleared;
 
        struct ibss_rsn *ibss_rsn;
+
+#ifdef CONFIG_SME
+       struct {
+               u8 ssid[32];
+               size_t ssid_len;
+               int freq;
+               u8 assoc_req_ie[80];
+               size_t assoc_req_ie_len;
+               int mfp;
+               int ft_used;
+               u8 mobility_domain[2];
+               u8 *ft_ies;
+               size_t ft_ies_len;
+       } sme;
+#endif /* CONFIG_SME */
 };
 
 
@@ -486,6 +505,14 @@ static inline int wpa_drv_set_mode(struct wpa_supplicant *wpa_s, int mode)
        return 0;
 }
 
+static inline int wpa_drv_authenticate(struct wpa_supplicant *wpa_s,
+                                      struct wpa_driver_auth_params *params)
+{
+       if (wpa_s->driver->authenticate)
+               return wpa_s->driver->authenticate(wpa_s->drv_priv, params);
+       return -1;
+}
+
 static inline int wpa_drv_associate(struct wpa_supplicant *wpa_s,
                                    struct wpa_driver_associate_params *params)
 {