TDLS: Tear down connection on malformed Setup Confirm
authorArik Nemtsov <arik@wizery.com>
Wed, 25 Jun 2014 14:41:55 +0000 (17:41 +0300)
committerJouni Malinen <j@w1.fi>
Sun, 29 Jun 2014 10:44:14 +0000 (13:44 +0300)
Otherwise the peer will erroneously assume we have a working direct
link.

Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com>
src/rsn_supp/tdls.c

index 2a6ecc6..362fbec 100644 (file)
@@ -2457,14 +2457,12 @@ skip_rsn:
                ret = wpa_tdls_enable_link(sm, peer);
                if (ret < 0) {
                        wpa_printf(MSG_DEBUG, "TDLS: Could not enable link");
-                       wpa_tdls_do_teardown(
-                               sm, peer,
-                               WLAN_REASON_TDLS_TEARDOWN_UNSPECIFIED);
+                       goto error;
                }
        }
        return ret;
 error:
-       wpa_tdls_disable_peer_link(sm, peer);
+       wpa_tdls_do_teardown(sm, peer, WLAN_REASON_TDLS_TEARDOWN_UNSPECIFIED);
        return -1;
 }