WMM AC: Fix memory leak on deinit without disassoc event

It was possible for wmm_ac_deinit() not getting called when an interface
was removed in a sequence where disassociation was not reported and
wmm_ac_notify_disassoc() did not get called. This resulted in leaking
whatever memory was allocated for WMM AC parameters. Fix that by calling
wmm_ac_notify_disassoc() from wpa_supplicant_cleanup().

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Jouni Malinen 2014-11-27 19:00:02 +02:00 committed by Jouni Malinen
parent 7ee6ec7aec
commit 3882a70841

View File

@ -523,6 +523,8 @@ static void wpa_supplicant_cleanup(struct wpa_supplicant *wpa_s)
wpabuf_free(wpa_s->vendor_elem[i]); wpabuf_free(wpa_s->vendor_elem[i]);
wpa_s->vendor_elem[i] = NULL; wpa_s->vendor_elem[i] = NULL;
} }
wmm_ac_notify_disassoc(wpa_s);
} }