From: Jouni Malinen Date: Tue, 27 Dec 2016 10:00:26 +0000 (+0200) Subject: hostapd: Do not update rejected wep_key_len_broadcast X-Git-Tag: hostap_2_7~1930 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f78402acea7836540b916cf9053ae0e02d290301;p=thirdparty%2Fhostap.git 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 --- diff --git a/hostapd/config_file.c b/hostapd/config_file.c index 34409aef5..dc062ffc7 100644 --- a/hostapd/config_file.c +++ b/hostapd/config_file.c @@ -2294,15 +2294,15 @@ static int hostapd_config_fill(struct hostapd_config *conf, os_free(bss->erp_domain); bss->erp_domain = os_strdup(pos); } else if (os_strcmp(buf, "wep_key_len_broadcast") == 0) { - bss->default_wep_key_len = atoi(pos); - if (bss->default_wep_key_len > 13) { - wpa_printf(MSG_ERROR, "Line %d: invalid WEP key len %lu (= %lu bits)", - line, - (unsigned long) bss->default_wep_key_len, - (unsigned long) - bss->default_wep_key_len * 8); + int val = atoi(pos); + + if (val < 0 || val > 13) { + wpa_printf(MSG_ERROR, + "Line %d: invalid WEP key len %d (= %d bits)", + line, val, val * 8); return 1; } + bss->default_wep_key_len = val; } else if (os_strcmp(buf, "wep_key_len_unicast") == 0) { bss->individual_wep_key_len = atoi(pos); if (bss->individual_wep_key_len < 0 ||