From f4329aa2d08192640532b712936f5221580e9f8c Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Mon, 26 Mar 2012 22:06:48 +0300 Subject: [PATCH] P2P: Validate p2p_oper_channel in p2p_group_add If the p2p_group_add command does not specify the operating channel, make sure the operating channel set in the configuration file meets the P2P requirements in the same way as is done with the frequency specified as the command parameter. Signed-hostap: Jouni Malinen --- wpa_supplicant/p2p_supplicant.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c index 486a551c4..e7de82f69 100644 --- a/wpa_supplicant/p2p_supplicant.c +++ b/wpa_supplicant/p2p_supplicant.c @@ -3293,6 +3293,13 @@ int wpas_p2p_group_add(struct wpa_supplicant *wpa_s, int persistent_group, if (wpas_p2p_init_go_params(wpa_s, ¶ms, freq)) return -1; + if (params.freq && + !p2p_supported_freq(wpa_s->global->p2p, params.freq)) { + wpa_printf(MSG_DEBUG, "P2P: The selected channel for GO " + "(%u MHz) is not supported for P2P uses", + params.freq); + return -1; + } p2p_go_params(wpa_s->global->p2p, ¶ms); params.persistent_group = persistent_group;