[openwrt/openwrt] hostapd: fix use after free bugs

LEDE Commits lede-commits at lists.infradead.org
Fri Nov 19 12:59:14 PST 2021


blocktrron pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/7ae04d3799d44b4a9fd3a2c82763d202be97fb77

commit 7ae04d3799d44b4a9fd3a2c82763d202be97fb77
Author: David Bauer <mail at david-bauer.net>
AuthorDate: Wed Nov 17 21:46:11 2021 +0100

    hostapd: fix use after free bugs
    
    Using a pointer one lifter after it freed is not the best idea.
    Let's not do that.
    
    Signed-off-by: David Bauer <mail at david-bauer.net>
---
 .../network/services/hostapd/patches/600-ubus_support.patch  | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/package/network/services/hostapd/patches/600-ubus_support.patch b/package/network/services/hostapd/patches/600-ubus_support.patch
index ccf66be6b8..b7f156bceb 100644
--- a/package/network/services/hostapd/patches/600-ubus_support.patch
+++ b/package/network/services/hostapd/patches/600-ubus_support.patch
@@ -234,22 +234,22 @@
  		wpabuf_free(sta->p2p_ie);
 --- a/src/ap/sta_info.c
 +++ b/src/ap/sta_info.c
-@@ -459,6 +459,7 @@ void ap_handle_timer(void *eloop_ctx, vo
+@@ -458,6 +458,7 @@ void ap_handle_timer(void *eloop_ctx, vo
+ 		hostapd_logger(hapd, sta->addr, HOSTAPD_MODULE_IEEE80211,
  			       HOSTAPD_LEVEL_INFO, "deauthenticated due to "
  			       "local deauth request");
- 		ap_free_sta(hapd, sta);
 +		hostapd_ubus_notify(hapd, "local-deauth", sta->addr);
+ 		ap_free_sta(hapd, sta);
  		return;
  	}
- 
-@@ -614,6 +615,7 @@ skip_poll:
+@@ -613,6 +614,7 @@ skip_poll:
+ 		mlme_deauthenticate_indication(
  			hapd, sta,
  			WLAN_REASON_PREV_AUTH_NOT_VALID);
- 		ap_free_sta(hapd, sta);
 +		hostapd_ubus_notify(hapd, "inactive-deauth", sta->addr);
+ 		ap_free_sta(hapd, sta);
  		break;
  	}
- }
 @@ -1329,6 +1331,7 @@ void ap_sta_set_authorized(struct hostap
  					  buf, ip_addr, keyid_buf);
  	} else {



More information about the lede-commits mailing list