From 467fc149d357ddda1dbed57617989252fb4d61d9 Mon Sep 17 00:00:00 2001 From: Purushottam Kushwaha Date: Fri, 29 Apr 2016 16:16:44 +0530 Subject: [PATCH] P2PS: Correct config_methods for different P2P cases Add P2PS config flag only when config_methods are set. This restores the pre-P2PS behavioer for the cases where Display or Keypad config method is specified for a peer (i.e., do not add the new P2PS method in that case). Signed-off-by: Jouni Malinen --- src/p2p/p2p_build.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/p2p/p2p_build.c b/src/p2p/p2p_build.c index 793d28ba7..2882c6ad0 100644 --- a/src/p2p/p2p_build.c +++ b/src/p2p/p2p_build.c @@ -202,11 +202,11 @@ void p2p_buf_add_device_info(struct wpabuf *buf, struct p2p_data *p2p, if (peer && peer->wps_method != WPS_NOT_READY) { if (peer->wps_method == WPS_PBC) methods |= WPS_CONFIG_PUSHBUTTON; - else if (peer->wps_method == WPS_PIN_DISPLAY || - peer->wps_method == WPS_PIN_KEYPAD) { - methods |= WPS_CONFIG_DISPLAY | WPS_CONFIG_KEYPAD; + else if (peer->wps_method == WPS_P2PS) methods |= WPS_CONFIG_P2PS; - } + else if (peer->wps_method == WPS_PIN_DISPLAY || + peer->wps_method == WPS_PIN_KEYPAD) + methods |= WPS_CONFIG_DISPLAY | WPS_CONFIG_KEYPAD; } else if (p2p->cfg->config_methods) { methods |= p2p->cfg->config_methods & (WPS_CONFIG_PUSHBUTTON | WPS_CONFIG_DISPLAY |