hostapd: Do not update rejected wep_key_len_broadcast

Previously, update command with invalid value got rejected, but the
actual configuration data was updated anyway.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2016-12-27 12:00:26 +02:00
parent e0ba7efe52
commit f78402acea

View file

@ -2294,15 +2294,15 @@ static int hostapd_config_fill(struct hostapd_config *conf,
os_free(bss->erp_domain); os_free(bss->erp_domain);
bss->erp_domain = os_strdup(pos); bss->erp_domain = os_strdup(pos);
} else if (os_strcmp(buf, "wep_key_len_broadcast") == 0) { } else if (os_strcmp(buf, "wep_key_len_broadcast") == 0) {
bss->default_wep_key_len = atoi(pos); int val = atoi(pos);
if (bss->default_wep_key_len > 13) {
wpa_printf(MSG_ERROR, "Line %d: invalid WEP key len %lu (= %lu bits)", if (val < 0 || val > 13) {
line, wpa_printf(MSG_ERROR,
(unsigned long) bss->default_wep_key_len, "Line %d: invalid WEP key len %d (= %d bits)",
(unsigned long) line, val, val * 8);
bss->default_wep_key_len * 8);
return 1; return 1;
} }
bss->default_wep_key_len = val;
} else if (os_strcmp(buf, "wep_key_len_unicast") == 0) { } else if (os_strcmp(buf, "wep_key_len_unicast") == 0) {
bss->individual_wep_key_len = atoi(pos); bss->individual_wep_key_len = atoi(pos);
if (bss->individual_wep_key_len < 0 || if (bss->individual_wep_key_len < 0 ||