[PATCH] hostap: clean beacon_data before usage
Jouni Malinen
j
Fri Nov 22 13:19:04 PST 2013
On Fri, Nov 22, 2013 at 09:21:25PM +0100, Janusz Dziedzic wrote:
> struct beacon_data contains a lot of pointers.
> We should clean them before usage. In other case
> we could have garbage there and next segfaults.
>
> Eg.
> nl80211_switch_channel() ../src/drivers/driver_nl80211.c:11323
> or os_free() issues.
> Found during DFS and CSA testing.
Are you saying this causes segfaults on some path?
> diff --git a/src/ap/hostapd.c b/src/ap/hostapd.c
> @@ -2049,6 +2049,7 @@ static int hostapd_build_beacon_data(struct hostapd_iface *iface,
> + os_memset(beacon, 0, sizeof(*beacon));
> ret = ieee802_11_build_ap_params(hapd, ¶ms);
That looks like a fine change, but I would like to understand on which
code path this is needed. I think I reviewed this when applying the
patch and hostapd_parse_csa_settings() included a memset for the full
csa_settings structure which should include the beacon data as well. Did
I miss some code paths where that memset does not get executed?
--
Jouni Malinen PGP id EFC895FA
More information about the Hostap
mailing list