nl80211: Add MLME auth work-around for -EEXIST errno
The Linux 4.9 kernel, at least, can return EEXIST when trying to auth a station that already exists. We have seen this bug in multiple places, but it is difficult to reproduce. Here is a link to someone else that appears to have hit this issue: https://github.com/greearb/ath10k-ct/issues/18 Signed-off-by: Ben Greear <greearb@candelatech.com>
This commit is contained in:
parent
4449efeb1d
commit
f875da0448
1 changed files with 4 additions and 4 deletions
|
@ -3348,11 +3348,11 @@ retry:
|
|||
msg = NULL;
|
||||
if (ret) {
|
||||
wpa_dbg(drv->ctx, MSG_DEBUG,
|
||||
"nl80211: MLME command failed (auth): ret=%d (%s)",
|
||||
ret, strerror(-ret));
|
||||
"nl80211: MLME command failed (auth): count=%d ret=%d (%s)",
|
||||
count, ret, strerror(-ret));
|
||||
count++;
|
||||
if (ret == -EALREADY && count == 1 && params->bssid &&
|
||||
!params->local_state_change) {
|
||||
if ((ret == -EALREADY || ret == -EEXIST) && count == 1 &&
|
||||
params->bssid && !params->local_state_change) {
|
||||
/*
|
||||
* mac80211 does not currently accept new
|
||||
* authentication if we are already authenticated. As a
|
||||
|
|
Loading…
Reference in a new issue