Fix hostapd operation without hw_mode driver data

Commit 7f0303d5b0 ('hostapd: Verify VHT
160/80+80 MHz driver support') added couple of hapd->iface->current_mode
dereferences of which the one in hostapd_set_freq() can be hit with some
configuration files when using driver wrappers that do not have hw_mode
data, i.e., when current_mode is NULL. This could result in segmentation
fault when trying to use driver=wired. Fix this by checking that
current_mode is not NULL before dereferencing it to get vht_capab.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2014-11-17 01:08:04 +02:00
parent 01b24c52df
commit e9b783d58c

View file

@ -573,7 +573,8 @@ int hostapd_set_freq(struct hostapd_data *hapd, int mode, int freq,
vht_enabled, sec_channel_offset, vht_enabled, sec_channel_offset,
vht_oper_chwidth, vht_oper_chwidth,
center_segment0, center_segment1, center_segment0, center_segment1,
hapd->iface->current_mode->vht_capab)) hapd->iface->current_mode ?
hapd->iface->current_mode->vht_capab : 0))
return -1; return -1;
if (hapd->driver == NULL) if (hapd->driver == NULL)