aboutsummaryrefslogtreecommitdiffstats
path: root/hostapd
diff options
context:
space:
mode:
authorDan Harkins <dharkins@lounge.org>2010-09-15 07:51:40 (GMT)
committerJouni Malinen <j@w1.fi>2010-09-15 07:51:40 (GMT)
commitdf684d82ff2cf644dfd543a0399368cfb8dc0311 (patch)
treea62d1c85122af5838e0a334262759e0c104c0318 /hostapd
parentea184114ca04ac42f219bb655da5e11dc0a8f73b (diff)
downloadhostap-df684d82ff2cf644dfd543a0399368cfb8dc0311.zip
hostap-df684d82ff2cf644dfd543a0399368cfb8dc0311.tar.gz
hostap-df684d82ff2cf644dfd543a0399368cfb8dc0311.tar.bz2
EAP-pwd: Add support for EAP-pwd server and peer functionality
This adds an initial EAP-pwd (RFC 5931) implementation. For now, this requires OpenSSL.
Diffstat (limited to 'hostapd')
-rw-r--r--hostapd/Makefile6
-rw-r--r--hostapd/config_file.c4
-rw-r--r--hostapd/eap_register.c5
3 files changed, 15 insertions, 0 deletions
diff --git a/hostapd/Makefile b/hostapd/Makefile
index 6102c10..f43f4a5 100644
--- a/hostapd/Makefile
+++ b/hostapd/Makefile
@@ -274,6 +274,12 @@ NEED_SHA256=y
NEED_AES_OMAC1=y
endif
+ifdef CONFIG_EAP_PWD
+CFLAGS += -DEAP_SERVER_PWD
+OBJS += ../src/eap_server/eap_server_pwd.o ../src/eap_common/eap_pwd_common.o
+NEED_SHA256=y
+endif
+
ifdef CONFIG_EAP_VENDOR_TEST
CFLAGS += -DEAP_SERVER_VENDOR_TEST
OBJS += ../src/eap_server/eap_server_vendor_test.o
diff --git a/hostapd/config_file.c b/hostapd/config_file.c
index 0032504..5ff6add 100644
--- a/hostapd/config_file.c
+++ b/hostapd/config_file.c
@@ -1369,6 +1369,10 @@ struct hostapd_config * hostapd_config_read(const char *fname)
} else if (os_strcmp(buf, "tnc") == 0) {
bss->tnc = atoi(pos);
#endif /* EAP_SERVER_TNC */
+#ifdef EAP_SERVER_PWD
+ } else if (os_strcmp(buf, "pwd_group") == 0) {
+ bss->pwd_group = atoi(pos);
+#endif /* EAP_SERVER_PWD */
#endif /* EAP_SERVER */
} else if (os_strcmp(buf, "eap_message") == 0) {
char *term;
diff --git a/hostapd/eap_register.c b/hostapd/eap_register.c
index ae9bf9d..bab2871 100644
--- a/hostapd/eap_register.c
+++ b/hostapd/eap_register.c
@@ -130,5 +130,10 @@ int eap_server_register_methods(void)
ret = eap_server_tnc_register();
#endif /* EAP_SERVER_TNC */
+#ifdef EAP_SERVER_PWD
+ if (ret == 0)
+ ret = eap_server_pwd_register();
+#endif /* EAP_SERVER_PWD */
+
return ret;
}