ACS: Be more consistent with iface->current_mode checks
Offloading of ACS to the driver changed the design a bit in a way that iface->current_mode could actually be NULL when the offloaded ACS mechanism supports band selection in addition to channel selection. This resulted in a combination that is too complex for static analyzers to notice. While acs_init() can be called with iface->current_mode == NULL that is only in the case where WPA_DRIVER_FLAGS_ACS_OFFLOAD is in use. In other words, the actual ACS functions like acs_cleanup() that would dereference iface->current_mode are not used in such a case. Get rid of static analyzer warnings by explicitly checking iface->current_mode in acs_init() for the case where ACS offloading is not used. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
6014e59c08
commit
a95cc47a92
1 changed files with 3 additions and 0 deletions
|
@ -933,6 +933,9 @@ enum hostapd_chan_status acs_init(struct hostapd_iface *iface)
|
|||
return HOSTAPD_CHAN_ACS;
|
||||
}
|
||||
|
||||
if (!iface->current_mode)
|
||||
return HOSTAPD_CHAN_INVALID;
|
||||
|
||||
acs_cleanup(iface);
|
||||
|
||||
err = acs_request_scan(iface);
|
||||
|
|
Loading…
Reference in a new issue