From: Jouni Malinen Date: Mon, 20 Oct 2014 09:42:27 +0000 (+0300) Subject: P2P: Support dynamic addition of P2P Device triggering interface X-Git-Tag: hostap_2_4~1286 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3c4b3ed3b714a74d77c59d37784b44871110b05;p=thirdparty%2Fhostap.git P2P: Support dynamic addition of P2P Device triggering interface This moves the addition of P2P Device interface into wpa_supplicant_add_iface() so that this operation can be done dynamically when adding an interface to an already running wpa_supplicant process. Signed-off-by: Jouni Malinen --- diff --git a/wpa_supplicant/main.c b/wpa_supplicant/main.c index e59646845..13e976949 100644 --- a/wpa_supplicant/main.c +++ b/wpa_supplicant/main.c @@ -327,14 +327,6 @@ int main(int argc, char *argv[]) exitcode = -1; break; } -#ifdef CONFIG_P2P - if (wpa_s->global->p2p == NULL && - (wpa_s->drv_flags & - WPA_DRIVER_FLAGS_DEDICATED_P2P_DEVICE) && - wpas_p2p_add_p2pdev_interface(wpa_s, iface->conf_p2p_dev) < - 0) - exitcode = -1; -#endif /* CONFIG_P2P */ } if (exitcode == 0) diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index 4ada8ce6a..27afa8320 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -4028,6 +4028,16 @@ struct wpa_supplicant * wpa_supplicant_add_iface(struct wpa_global *global, wpa_dbg(wpa_s, MSG_DEBUG, "Added interface %s", wpa_s->ifname); wpa_supplicant_set_state(wpa_s, WPA_DISCONNECTED); +#ifdef CONFIG_P2P + if (wpa_s->global->p2p == NULL && + (wpa_s->drv_flags & WPA_DRIVER_FLAGS_DEDICATED_P2P_DEVICE) && + wpas_p2p_add_p2pdev_interface(wpa_s, iface->conf_p2p_dev) < 0) { + wpa_printf(MSG_INFO, + "P2P: Failed to enable P2P Device interface"); + /* Try to continue without. P2P will be disabled. */ + } +#endif /* CONFIG_P2P */ + return wpa_s; }