Revert "nl80211: Remove duplicated check in nl80211_setup_ap()"
This reverts commit 647862eb60
.
The second check of device_ap_sme looks like duplicated, but it isn't
actually. The trick is nl80211_create_monitor_interface may change that
variable value and the second evaluation may give a different result.
This definitely isn't a very clear code, but that change caused a
regression for drivers that:
1) Don't report NL80211_ATTR_DEVICE_AP_SME
2) Don't support monitor mode
3) Don't support subscribing for PROBE_REQ and/or ACTION frames
like brcmfmac. With such drivers hostapd doesn't start anymore.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
parent
205d2d1ff5
commit
ea19b39f60
1 changed files with 2 additions and 1 deletions
|
@ -4434,7 +4434,8 @@ static int nl80211_setup_ap(struct i802_bss *bss)
|
||||||
"nl80211: Failed to subscribe for mgmt frames from SME driver - trying to run without it");
|
"nl80211: Failed to subscribe for mgmt frames from SME driver - trying to run without it");
|
||||||
|
|
||||||
if (!drv->device_ap_sme && drv->use_monitor &&
|
if (!drv->device_ap_sme && drv->use_monitor &&
|
||||||
nl80211_create_monitor_interface(drv))
|
nl80211_create_monitor_interface(drv) &&
|
||||||
|
!drv->device_ap_sme)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (drv->device_ap_sme &&
|
if (drv->device_ap_sme &&
|
||||||
|
|
Loading…
Reference in a new issue