WPS: Close p2p_group and temporary parameters to all network blocks

If a P2P GO issues multiple credentials for some reason, clone the
p2p_group and temporary parameters to all those based on the initial
network block that gets used for the first credential.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2014-04-13 11:44:57 +03:00
parent d6a36f3956
commit ded4f944df

View File

@ -370,6 +370,17 @@ static int wpa_supplicant_wps_cred(void *ctx,
ssid = wpa_config_add_network(wpa_s->conf); ssid = wpa_config_add_network(wpa_s->conf);
if (ssid == NULL) if (ssid == NULL)
return -1; return -1;
if (wpa_s->current_ssid) {
/*
* Should the GO issue multiple credentials for some
* reason, each credential should be marked as a
* temporary P2P group similarly to the one that gets
* marked as such based on the pre-configured values
* used for the WPS network block.
*/
ssid->p2p_group = wpa_s->current_ssid->p2p_group;
ssid->temporary = wpa_s->current_ssid->temporary;
}
wpas_notify_network_added(wpa_s, ssid); wpas_notify_network_added(wpa_s, ssid);
} }