TDLS: Support both external and internal setup in disabling link

Enhance TDLS Setup Request processing to support both external and
internal TDLS setup for the case where concurrent TDLS initialization
results in the TDLS Setup Request from the peer getting accepted.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Sunil Dutt 2013-03-28 15:05:10 +02:00 committed by Jouni Malinen
parent 864fe3a47c
commit 9f890c982a

View file

@ -1505,7 +1505,12 @@ static int wpa_tdls_process_tpk_m1(struct wpa_sm *sm, const u8 *src_addr,
MACSTR " (terminate previously " MACSTR " (terminate previously "
"initiated negotiation", "initiated negotiation",
MAC2STR(src_addr)); MAC2STR(src_addr));
wpa_tdls_disable_link(sm, peer->addr); if (sm->tdls_external_setup)
wpa_sm_tdls_oper(sm, TDLS_DISABLE_LINK,
src_addr);
else
wpa_tdls_del_key(sm, peer);
wpa_tdls_peer_free(sm, peer);
} }
} }
} }