hostapd: fix build error with SAE disabled

Fixes: b2a2c28617 ("hostapd: add support for authenticating with multiple PSKs via ubus helper")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
Felix Fietkau 2024-10-22 16:56:19 +02:00
parent eeb59f87a1
commit 7e542f6a77
3 changed files with 13 additions and 9 deletions

View File

@ -725,7 +725,7 @@ as adding/removing interfaces.
for (pw = hapd->conf->sae_passwords; pw; pw = pw->next) {
if (!is_broadcast_ether_addr(pw->peer_addr) &&
(!sta ||
@@ -582,12 +587,28 @@ const char * sae_get_password(struct hos
@@ -582,12 +587,30 @@ const char * sae_get_password(struct hos
pt = hapd->conf->ssid.pt;
}
@ -741,6 +741,7 @@ as adding/removing interfaces.
+ if (!sta->use_sta_psk)
+ break;
+
+#ifdef CONFIG_SAE
+ if (sta->sae_pt) {
+ pt = sta->sae_pt;
break;
@ -753,10 +754,11 @@ as adding/removing interfaces.
+ NULL);
+ sta->sae_pt = pt;
+ break;
+#endif
}
}
@@ -3229,6 +3250,12 @@ static void handle_auth(struct hostapd_d
@@ -3229,6 +3252,12 @@ static void handle_auth(struct hostapd_d
goto fail;
}
@ -771,17 +773,19 @@ as adding/removing interfaces.
--- a/src/ap/sta_info.c
+++ b/src/ap/sta_info.c
@@ -474,6 +474,9 @@ void ap_free_sta(struct hostapd_data *ha
@@ -474,6 +474,11 @@ void ap_free_sta(struct hostapd_data *ha
forced_memzero(sta->last_tk, WPA_TK_MAX_LEN);
#endif /* CONFIG_TESTING_OPTIONS */
+#ifdef CONFIG_SAE
+ if (sta->sae_pt)
+ sae_deinit_pt(sta->sae_pt);
+#endif
+
os_free(sta);
}
@@ -1507,6 +1510,8 @@ void ap_sta_set_authorized_event(struct
@@ -1507,6 +1512,8 @@ void ap_sta_set_authorized_event(struct
#endif /* CONFIG_P2P */
const u8 *ip_ptr = NULL;

View File

@ -372,7 +372,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
#ifdef CONFIG_FILS
static struct wpabuf *
@@ -3615,8 +3618,8 @@ static u16 check_multi_ap(struct hostapd
@@ -3617,8 +3620,8 @@ static u16 check_multi_ap(struct hostapd
}
@ -383,7 +383,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
{
/* Supported rates not used in IEEE 802.11ad/DMG */
if (hapd->iface->current_mode &&
@@ -4003,7 +4006,7 @@ static int __check_assoc_ies(struct host
@@ -4005,7 +4008,7 @@ static int __check_assoc_ies(struct host
elems->ext_capab_len);
if (resp != WLAN_STATUS_SUCCESS)
return resp;
@ -392,7 +392,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
if (resp != WLAN_STATUS_SUCCESS)
return resp;
@@ -6058,6 +6061,11 @@ static void handle_beacon(struct hostapd
@@ -6060,6 +6063,11 @@ static void handle_beacon(struct hostapd
0);
ap_list_process_beacon(hapd->iface, mgmt, &elems, fi);

View File

@ -1,6 +1,6 @@
--- a/src/ap/sta_info.c
+++ b/src/ap/sta_info.c
@@ -1836,3 +1836,22 @@ void ap_sta_free_sta_profile(struct mld_
@@ -1914,3 +1914,22 @@ void ap_sta_free_sta_profile(struct mld_
}
}
#endif /* CONFIG_IEEE80211BE */
@ -25,7 +25,7 @@
+
--- a/src/ap/sta_info.h
+++ b/src/ap/sta_info.h
@@ -417,23 +417,8 @@ int ap_sta_re_add(struct hostapd_data *h
@@ -408,23 +408,8 @@ int ap_sta_re_add(struct hostapd_data *h
void ap_free_sta_pasn(struct hostapd_data *hapd, struct sta_info *sta);