]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Add wpa_supplicant_ctrl_req_from_string()
authorDan Williams <dcbw@redhat.com>
Mon, 24 Oct 2011 16:04:40 +0000 (11:04 -0500)
committerJouni Malinen <j@w1.fi>
Sun, 30 Oct 2011 10:04:24 +0000 (12:04 +0200)
Converts from a string to a control request enum when input
from a control interface is received. Will be used by a
subsequent patch.

Signed-off-by: Dan Williams <dcbw@redhat.com>
src/common/defs.h
wpa_supplicant/wpas_glue.c
wpa_supplicant/wpas_glue.h

index 7a10282af67673dd64c01046f7cc541967adce37..bfbb4b7a0af5f7a47783c555b7063c66c13305cc 100644 (file)
@@ -271,6 +271,7 @@ enum hostapd_hw_mode {
  * enum wpa_ctrl_req_type - Control interface request types
  */
 enum wpa_ctrl_req_type {
+       WPA_CTRL_REQ_UNKNOWN,
        WPA_CTRL_REQ_EAP_IDENTITY,
        WPA_CTRL_REQ_EAP_PASSWORD,
        WPA_CTRL_REQ_EAP_NEW_PASSWORD,
index 4cd20330461b058a4bd1a2807475862621c18c7d..69b0cf8407b864bc48b9ecda2158e271d7720dc1 100644 (file)
@@ -587,6 +587,24 @@ static int wpa_supplicant_tdls_peer_addset(
 #endif /* CONFIG_TDLS */
 
 
+enum wpa_ctrl_req_type wpa_supplicant_ctrl_req_from_string(const char *field)
+{
+       if (os_strcmp(field, "IDENTITY") == 0)
+               return WPA_CTRL_REQ_EAP_IDENTITY;
+       else if (os_strcmp(field, "PASSWORD") == 0)
+               return WPA_CTRL_REQ_EAP_PASSWORD;
+       else if (os_strcmp(field, "NEW_PASSWORD") == 0)
+               return WPA_CTRL_REQ_EAP_NEW_PASSWORD;
+       else if (os_strcmp(field, "PIN") == 0)
+               return WPA_CTRL_REQ_EAP_PIN;
+       else if (os_strcmp(field, "OTP") == 0)
+               return WPA_CTRL_REQ_EAP_OTP;
+       else if (os_strcmp(field, "PASSPHRASE") == 0)
+               return WPA_CTRL_REQ_EAP_PASSPHRASE;
+       return WPA_CTRL_REQ_UNKNOWN;
+}
+
+
 const char * wpa_supplicant_ctrl_req_to_string(enum wpa_ctrl_req_type field,
                                               const char *default_txt,
                                               const char **txt)
index 563eb7bea92871982d3e58389a0cb161f154f371..78c1b3ddc60c178c6bbe5d788316cb5b03681647 100644 (file)
@@ -15,6 +15,8 @@
 #ifndef WPAS_GLUE_H
 #define WPAS_GLUE_H
 
+enum wpa_ctrl_req_type;
+
 int wpa_supplicant_init_eapol(struct wpa_supplicant *wpa_s);
 int wpa_supplicant_init_wpa(struct wpa_supplicant *wpa_s);
 void wpa_supplicant_rsn_supp_set_config(struct wpa_supplicant *wpa_s,
@@ -24,4 +26,6 @@ const char * wpa_supplicant_ctrl_req_to_string(enum wpa_ctrl_req_type field,
                                               const char *default_txt,
                                               const char **txt);
 
+enum wpa_ctrl_req_type wpa_supplicant_ctrl_req_from_string(const char *field);
+
 #endif /* WPAS_GLUE_H */