P2P: Direct P2P_CONNECT command to proper interface

It is possible for the P2P_CONNECT control interface command to be
issued on an incorrect interface. While the upper layer component should
really use global control interface for this, make this work by
redirecting the command to the correct context if needed.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2015-03-01 11:54:39 +02:00
parent 5de945fcc0
commit bdf0518bb9

View File

@ -4741,6 +4741,14 @@ static int p2p_ctrl_connect(struct wpa_supplicant *wpa_s, char *cmd,
int pd; int pd;
int ht40, vht; int ht40, vht;
if (!wpa_s->global->p2p_init_wpa_s)
return -1;
if (wpa_s->global->p2p_init_wpa_s != wpa_s) {
wpa_dbg(wpa_s, MSG_DEBUG, "Direct P2P_CONNECT command to %s",
wpa_s->global->p2p_init_wpa_s->ifname);
wpa_s = wpa_s->global->p2p_init_wpa_s;
}
/* <addr> <"pbc" | "pin" | PIN> [label|display|keypad|p2ps] /* <addr> <"pbc" | "pin" | PIN> [label|display|keypad|p2ps]
* [persistent|persistent=<network id>] * [persistent|persistent=<network id>]
* [join] [auth] [go_intent=<0..15>] [freq=<in MHz>] [provdisc] * [join] [auth] [go_intent=<0..15>] [freq=<in MHz>] [provdisc]