hostapd: remove #ifdef MULTICALL around ap+sta support code (to support separately installed supplicant+hostapd)

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38782 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2013-11-12 22:11:14 +00:00
parent 47c8b34757
commit 23e82fd7ba
5 changed files with 11 additions and 20 deletions

View File

@ -34,24 +34,21 @@
-include .config -include .config
-include $(if $(MULTICALL),../hostapd/.config) -include $(if $(MULTICALL),../hostapd/.config)
@@ -76,6 +80,10 @@ OBJS_c = wpa_cli.o ../src/common/wpa_ctr @@ -76,6 +80,8 @@ OBJS_c = wpa_cli.o ../src/common/wpa_ctr
OBJS_c += ../src/utils/wpa_debug.o OBJS_c += ../src/utils/wpa_debug.o
OBJS_c += ../src/utils/common.o OBJS_c += ../src/utils/common.o
+ifdef MULTICALL
+OBJS += ../src/common/wpa_ctrl.o +OBJS += ../src/common/wpa_ctrl.o
+endif
+ +
ifndef CONFIG_OS ifndef CONFIG_OS
ifdef CONFIG_NATIVE_WINDOWS ifdef CONFIG_NATIVE_WINDOWS
CONFIG_OS=win32 CONFIG_OS=win32
--- a/wpa_supplicant/wpa_supplicant.c --- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c
@@ -109,6 +109,48 @@ extern int wpa_debug_show_keys; @@ -109,6 +109,46 @@ extern int wpa_debug_show_keys;
extern int wpa_debug_timestamp; extern int wpa_debug_timestamp;
extern struct wpa_driver_ops *wpa_drivers[]; extern struct wpa_driver_ops *wpa_drivers[];
+#ifdef MULTICALL
+static int hostapd_stop(struct wpa_supplicant *wpa_s) +static int hostapd_stop(struct wpa_supplicant *wpa_s)
+{ +{
+ const char *cmd = "DOWN"; + const char *cmd = "DOWN";
@ -91,33 +88,27 @@
+ } + }
+ return 0; + return 0;
+} +}
+#endif
+ +
/* Configure default/group WEP keys for static WEP */ /* Configure default/group WEP keys for static WEP */
int wpa_set_wep_keys(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid) int wpa_set_wep_keys(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid)
{ {
@@ -676,8 +718,16 @@ void wpa_supplicant_set_state(struct wpa @@ -676,8 +716,12 @@ void wpa_supplicant_set_state(struct wpa
#endif /* CONFIG_P2P */ #endif /* CONFIG_P2P */
sme_sched_obss_scan(wpa_s, 1); sme_sched_obss_scan(wpa_s, 1);
+#ifdef MULTICALL
+ if (wpa_s->hostapd) + if (wpa_s->hostapd)
+ hostapd_reload(wpa_s, wpa_s->current_bss); + hostapd_reload(wpa_s, wpa_s->current_bss);
+#endif
} else if (state == WPA_DISCONNECTED || state == WPA_ASSOCIATING || } else if (state == WPA_DISCONNECTED || state == WPA_ASSOCIATING ||
state == WPA_ASSOCIATED) { state == WPA_ASSOCIATED) {
+#ifdef MULTICALL
+ if (wpa_s->hostapd) + if (wpa_s->hostapd)
+ hostapd_stop(wpa_s); + hostapd_stop(wpa_s);
+#endif
wpa_s->new_connection = 1; wpa_s->new_connection = 1;
wpa_drv_set_operstate(wpa_s, 0); wpa_drv_set_operstate(wpa_s, 0);
#ifndef IEEE8021X_EAPOL #ifndef IEEE8021X_EAPOL
@@ -2874,6 +2924,21 @@ static int wpa_supplicant_init_iface(str @@ -2875,6 +2919,20 @@ static int wpa_supplicant_init_iface(str
os_strlcpy(wpa_s->bridge_ifname, iface->bridge_ifname,
sizeof(wpa_s->bridge_ifname)); sizeof(wpa_s->bridge_ifname));
} }
+#ifdef MULTICALL
+ if (iface->hostapd_ctrl) { + if (iface->hostapd_ctrl) {
+ char *cmd = "DOWN"; + char *cmd = "DOWN";
+ char buf[256]; + char buf[256];
@ -131,10 +122,10 @@
+ if (hostapd_stop(wpa_s) < 0) + if (hostapd_stop(wpa_s) < 0)
+ return -1; + return -1;
+ } + }
+#endif +
/* RSNA Supplicant Key Management - INITIALIZE */ /* RSNA Supplicant Key Management - INITIALIZE */
eapol_sm_notify_portEnabled(wpa_s->eapol, FALSE); eapol_sm_notify_portEnabled(wpa_s->eapol, FALSE);
eapol_sm_notify_portValid(wpa_s->eapol, FALSE);
--- a/wpa_supplicant/bss.c --- a/wpa_supplicant/bss.c
+++ b/wpa_supplicant/bss.c +++ b/wpa_supplicant/bss.c
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@

View File

@ -43,7 +43,7 @@
reply_len = -1; reply_len = -1;
--- a/wpa_supplicant/Makefile --- a/wpa_supplicant/Makefile
+++ b/wpa_supplicant/Makefile +++ b/wpa_supplicant/Makefile
@@ -770,6 +770,9 @@ ifdef CONFIG_WNM @@ -768,6 +768,9 @@ ifdef CONFIG_WNM
OBJS += ../src/ap/wnm_ap.o OBJS += ../src/ap/wnm_ap.o
endif endif
ifdef CONFIG_CTRL_IFACE ifdef CONFIG_CTRL_IFACE

View File

@ -117,7 +117,7 @@
+} +}
--- a/wpa_supplicant/Makefile --- a/wpa_supplicant/Makefile
+++ b/wpa_supplicant/Makefile +++ b/wpa_supplicant/Makefile
@@ -1238,9 +1238,8 @@ endif @@ -1236,9 +1236,8 @@ endif
ifdef CONFIG_NO_RANDOM_POOL ifdef CONFIG_NO_RANDOM_POOL
CFLAGS += -DCONFIG_NO_RANDOM_POOL CFLAGS += -DCONFIG_NO_RANDOM_POOL

View File

@ -175,7 +175,7 @@ Signed-hostap: Antonio Quartulli <ordex@autistici.org>
#endif /* CONFIG_SSID_H */ #endif /* CONFIG_SSID_H */
--- a/wpa_supplicant/wpa_supplicant.c --- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c
@@ -1600,15 +1600,24 @@ void wpa_supplicant_associate(struct wpa @@ -1594,15 +1594,24 @@ void wpa_supplicant_associate(struct wpa
params.ssid_len = ssid->ssid_len; params.ssid_len = ssid->ssid_len;
} }

View File

@ -145,7 +145,7 @@ Signed-off-by: Antonio Quartulli <ordex@autistici.org>
#endif /* CONFIG_SSID_H */ #endif /* CONFIG_SSID_H */
--- a/wpa_supplicant/wpa_supplicant.c --- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c
@@ -1616,6 +1616,8 @@ void wpa_supplicant_associate(struct wpa @@ -1610,6 +1610,8 @@ void wpa_supplicant_associate(struct wpa
i++; i++;
} }
params.mcast_rate = ssid->mcast_rate; params.mcast_rate = ssid->mcast_rate;