mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-12-22 21:22:37 +01:00
netdev: fix association failure path
In netdev_associate_event the ignore_connect_event was getting set true, but afterwards there were still potential failure paths. Now, once in assoc_failed we explicitly set ignore_connect_event to false so the the failure can be handled properly inside netdev_connect_event
This commit is contained in:
parent
5359b54c37
commit
050db0b054
12
src/netdev.c
12
src/netdev.c
@ -2423,9 +2423,6 @@ static void netdev_associate_event(struct l_genl_msg *msg,
|
|||||||
if (status_code != 0)
|
if (status_code != 0)
|
||||||
goto assoc_failed;
|
goto assoc_failed;
|
||||||
|
|
||||||
/* Connection can be fully handled here, not in connect event */
|
|
||||||
netdev->ignore_connect_event = true;
|
|
||||||
|
|
||||||
if (netdev->sm) {
|
if (netdev->sm) {
|
||||||
/*
|
/*
|
||||||
* Start processing EAPoL frames now that the state machine
|
* Start processing EAPoL frames now that the state machine
|
||||||
@ -2433,11 +2430,11 @@ static void netdev_associate_event(struct l_genl_msg *msg,
|
|||||||
*/
|
*/
|
||||||
if (!eapol_start(netdev->sm))
|
if (!eapol_start(netdev->sm))
|
||||||
goto assoc_failed;
|
goto assoc_failed;
|
||||||
|
|
||||||
if (!netdev->in_ft)
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Connection can be fully handled here, not in connect event */
|
||||||
|
netdev->ignore_connect_event = true;
|
||||||
|
|
||||||
if (netdev->in_ft) {
|
if (netdev->in_ft) {
|
||||||
bool is_rsn = netdev->handshake->supplicant_ie != NULL;
|
bool is_rsn = netdev->handshake->supplicant_ie != NULL;
|
||||||
|
|
||||||
@ -2447,7 +2444,8 @@ static void netdev_associate_event(struct l_genl_msg *msg,
|
|||||||
handshake_state_install_ptk(netdev->handshake);
|
handshake_state_install_ptk(netdev->handshake);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
} else if (netdev->sm)
|
||||||
|
return;
|
||||||
|
|
||||||
netdev_connect_ok(netdev);
|
netdev_connect_ok(netdev);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user