diff options
authorDedy Lansky <qca_dlansky@qca.qualcomm.com>2016-03-07 13:22:54 (GMT)
committerJouni Malinen <j@w1.fi>2016-03-07 16:04:47 (GMT)
commitcc1af6faed963a33809c6bcd4b590c44a64b0d96 (patch)
parentdfe0745c9a8246400316879be0115cc119c4882f (diff)
FST: Fix session setup failure with peer without MB IE
Upon receiving FST setup request on old band, the peer is searched on new band. The assumption is that MB IE from this peer on new band previously received either in assoc event or in FST setup request. There are cases in which above assumption doesn't work, peer is not found and session setup fails. For example: - STA connects over 11ac. Due to driver limitation, MB IE is not included in assoc event - STA connects over 11ad. MB IE included in assoc event. - FST session established on 11ac band, with AP as initiator. i.e. FST setup request sent in AP=>STA direction. STA searches for peer's (AP) MB IE on 11ad band which exists. - FST switch occur - FST session established on 11ad band, with STA as initiator. i.e. FST setup request sent in STA=>AP direction. AP searches for peer's (STA) MB IE on 11ac band which are absent. For fixing the above, consider also peers without MB IE as candidates in the search algorithm. Signed-off-by: Dedy Lansky <qca_dlansky@qca.qualcomm.com>
1 files changed, 1 insertions, 1 deletions
diff --git a/src/fst/fst_group.c b/src/fst/fst_group.c
index e0c055f..d6157b1 100644
--- a/src/fst/fst_group.c
+++ b/src/fst/fst_group.c
@@ -220,7 +220,7 @@ fst_group_get_new_iface_by_mbie_and_band_id(struct fst_group *g,
if (peer_addr &&
fst_iface_is_connected(iface, peer_addr,
- TRUE) &&
+ FALSE) &&
band_id == fst_iface_get_band_id(iface)) {
os_memcpy(iface_peer_addr, peer_addr,