From 90377029c6805b339dfa3307263118986295796a Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Mon, 21 Mar 2016 21:09:03 +0200 Subject: [PATCH] wpa_supplicant: Fix CONFIG_IBSS_RSN=y build without CONFIG_AP=y Commit 1889af2e0f89f9a98171761683eb1c244584daf8 ('VLAN: Separate station grouping and uplink configuration') added an ap_sta_set_vlan() function that gets called from pmksa_cache_auth.c. This broke CONFIG_IBSS_RSN=y build if src/ap/sta_info.c did not get included in the build, i.e., if CONFIG_AP=y was not set. Fix this by making the ap_sta_set_vlan() call conditional on CONFIG_NO_VLAN being undefined and define this for CONFIG_IBSS_RSN=y builds. This is fine for wpa_supplicant since CONFIG_AP=y case was already defining this. For hostapd, this function call is not needed for CONFIG_NO_VLAN case either. Signed-off-by: Jouni Malinen --- src/ap/pmksa_cache_auth.c | 7 +++---- wpa_supplicant/Android.mk | 1 + wpa_supplicant/Makefile | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ap/pmksa_cache_auth.c b/src/ap/pmksa_cache_auth.c index b4193489c..d610e7e5b 100644 --- a/src/ap/pmksa_cache_auth.c +++ b/src/ap/pmksa_cache_auth.c @@ -181,8 +181,6 @@ void pmksa_cache_to_eapol_data(struct hostapd_data *hapd, struct rsn_pmksa_cache_entry *entry, struct eapol_state_machine *eapol) { - struct sta_info *sta; - if (entry == NULL || eapol == NULL) return; @@ -213,8 +211,9 @@ void pmksa_cache_to_eapol_data(struct hostapd_data *hapd, } eapol->eap_type_authsrv = entry->eap_type_authsrv; - sta = (struct sta_info *) eapol->sta; - ap_sta_set_vlan(hapd, sta, entry->vlan_desc); +#ifndef CONFIG_NO_VLAN + ap_sta_set_vlan(hapd, eapol->sta, entry->vlan_desc); +#endif /* CONFIG_NO_VLAN */ eapol->acct_multi_session_id = entry->acct_multi_session_id; } diff --git a/wpa_supplicant/Android.mk b/wpa_supplicant/Android.mk index 4f0319ef8..cd64e4a1c 100644 --- a/wpa_supplicant/Android.mk +++ b/wpa_supplicant/Android.mk @@ -269,6 +269,7 @@ endif ifdef CONFIG_IBSS_RSN NEED_RSN_AUTHENTICATOR=y L_CFLAGS += -DCONFIG_IBSS_RSN +L_CFLAGS += -DCONFIG_NO_VLAN OBJS += ibss_rsn.c endif diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile index 93083f758..5f5a30a65 100644 --- a/wpa_supplicant/Makefile +++ b/wpa_supplicant/Makefile @@ -312,6 +312,7 @@ endif ifdef CONFIG_IBSS_RSN NEED_RSN_AUTHENTICATOR=y CFLAGS += -DCONFIG_IBSS_RSN +CFLAGS += -DCONFIG_NO_VLAN OBJS += ibss_rsn.o endif