path: root/wpa_supplicant/p2p_supplicant.h
diff options
authorJouni Malinen <j@w1.fi>2014-10-20 09:40:29 (GMT)
committerJouni Malinen <j@w1.fi>2014-10-21 14:35:15 (GMT)
commit26fc96e89b9f0ecd16e1ecbdc41a375b2cc752a7 (patch)
treec7847726dcafcc9f50f5850da5f36cdfbce28d2f /wpa_supplicant/p2p_supplicant.h
parenteb92d389a8c3c5d84b4af2513f6e5908ecdec1e5 (diff)
P2P: Remove all child interfaces when removing the parent
This is needed to allow dynamic removal of an interface that adds the P2P Device interface without leaving behind the management interface with invalid wpa_s->parent pointer. Signed-off-by: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'wpa_supplicant/p2p_supplicant.h')
1 files changed, 7 insertions, 1 deletions
diff --git a/wpa_supplicant/p2p_supplicant.h b/wpa_supplicant/p2p_supplicant.h
index b61d57f..4bc90fb 100644
--- a/wpa_supplicant/p2p_supplicant.h
+++ b/wpa_supplicant/p2p_supplicant.h
@@ -29,7 +29,6 @@ int wpas_p2p_connect(struct wpa_supplicant *wpa_s, const u8 *peer_addr,
int pd, int ht40, int vht);
int wpas_p2p_handle_frequency_conflicts(struct wpa_supplicant *wpa_s,
int freq, struct wpa_ssid *ssid);
-int wpas_p2p_group_remove(struct wpa_supplicant *wpa_s, const char *ifname);
int wpas_p2p_group_add(struct wpa_supplicant *wpa_s, int persistent_group,
int freq, int ht40, int vht);
int wpas_p2p_group_add_persistent(struct wpa_supplicant *wpa_s,
@@ -170,6 +169,7 @@ int wpas_p2p_in_progress(struct wpa_supplicant *wpa_s);
int wpas_p2p_wps_eapol_cb(struct wpa_supplicant *wpa_s);
void wpas_p2p_wps_failed(struct wpa_supplicant *wpa_s,
struct wps_event_fail *fail);
+int wpas_p2p_group_remove(struct wpa_supplicant *wpa_s, const char *ifname);
#else /* CONFIG_P2P */
@@ -293,6 +293,12 @@ static inline void wpas_p2p_wps_failed(struct wpa_supplicant *wpa_s,
+static inline int wpas_p2p_group_remove(struct wpa_supplicant *wpa_s,
+ const char *ifname)
+ return 0;
#endif /* CONFIG_P2P */
#endif /* P2P_SUPPLICANT_H */