TDLS: Use wpa_tdls_disable_peer_link() in TPK M1 processing

This function is used only with external setup, so this can cleaned up
to use simpler design.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Sunil Dutt 2013-09-30 17:36:26 +03:00 committed by Jouni Malinen
parent 1a0a2ce39c
commit 33d85b63b5

View file

@ -1479,19 +1479,7 @@ static int wpa_tdls_process_tpk_m1(struct wpa_sm *sm, const u8 *src_addr,
wpa_printf(MSG_DEBUG, "TDLS: TDLS Setup Request while " wpa_printf(MSG_DEBUG, "TDLS: TDLS Setup Request while "
"direct link is enabled - tear down the " "direct link is enabled - tear down the "
"old link first"); "old link first");
#if 0 wpa_tdls_disable_peer_link(sm, peer);
/* TODO: Disabling the link would be more proper
* operation here, but it seems to trigger a race with
* some drivers handling the new request frame. */
wpa_sm_tdls_oper(sm, TDLS_DISABLE_LINK, src_addr);
#else
if (sm->tdls_external_setup)
wpa_sm_tdls_oper(sm, TDLS_DISABLE_LINK,
src_addr);
else
wpa_tdls_del_key(sm, peer);
#endif
wpa_tdls_peer_free(sm, peer);
} }
/* /*
@ -1512,12 +1500,7 @@ 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));
if (sm->tdls_external_setup) wpa_tdls_disable_peer_link(sm, peer);
wpa_sm_tdls_oper(sm, TDLS_DISABLE_LINK,
src_addr);
else
wpa_tdls_del_key(sm, peer);
wpa_tdls_peer_free(sm, peer);
} }
} }
} }