P2P: Fix interface remove to terminate all P2P groups
Previously, it was possible to remove the main interface and leave behind dynamic P2P group interfaces. This would eventually result in references freed memory, so it is not really suitable behavior. Instesd, remove all the dynamic P2P group interfaces that were created through an interface that is now removed. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
d21939a6fb
commit
e83e15ee77
1 changed files with 2 additions and 0 deletions
|
@ -3679,6 +3679,8 @@ static void wpa_supplicant_deinit_iface(struct wpa_supplicant *wpa_s,
|
|||
wpa_supplicant_cleanup(wpa_s);
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
if (wpa_s == wpa_s->parent)
|
||||
wpas_p2p_group_remove(wpa_s, "*");
|
||||
if (wpa_s == wpa_s->global->p2p_init_wpa_s && wpa_s->global->p2p) {
|
||||
wpa_dbg(wpa_s, MSG_DEBUG, "P2P: Disable P2P since removing "
|
||||
"the management interface is being removed");
|
||||
|
|
Loading…
Reference in a new issue