3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-12-22 13:02:44 +01:00

netdev: move prepare_ft call which broke FT

The prepare_ft patch was an intermediate to a full patch
set and was not fully tested stand alone. Its placement
actually broke FT due to handshake->aa getting overwritten
prior to netdev->prev_bssid being copied out. This caused
FT to fail with "transport endpoint not connected (-107)"
This commit is contained in:
James Prestwood 2021-04-22 10:37:46 -07:00 committed by Denis Kenzior
parent f98ddf2201
commit d42549e46d

View File

@ -3789,6 +3789,8 @@ static int fast_transition(struct netdev *netdev, struct scan_bss *target_bss,
l_get_le16(target_bss->mde))
return -EINVAL;
prepare_ft(netdev, target_bss);
/*
* We reuse the handshake_state object and reset what's needed.
* Could also create a new object and copy most of the state but
@ -3805,8 +3807,6 @@ static int fast_transition(struct netdev *netdev, struct scan_bss *target_bss,
target_bss->rsne);
memcpy(netdev->handshake->mde + 2, target_bss->mde, 3);
prepare_ft(netdev, target_bss);
netdev->connect_cb = cb;
if (over_air)