diff options
author | sam <sam@FreeBSD.org> | 2008-03-24 19:46:53 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2008-03-24 19:46:53 +0000 |
commit | 153f9c1cd9a5b749f57e28682fadb39c781e1e5d (patch) | |
tree | f77bae77287d18eaa89acc25e38b5acccca132fe /contrib/wpa_supplicant/config.c | |
parent | 35aef052ff21baa52c4cec68b512986c21f70a48 (diff) | |
download | FreeBSD-src-153f9c1cd9a5b749f57e28682fadb39c781e1e5d.zip FreeBSD-src-153f9c1cd9a5b749f57e28682fadb39c781e1e5d.tar.gz |
Import of WPA supplicant 0.5.10
Diffstat (limited to 'contrib/wpa_supplicant/config.c')
-rw-r--r-- | contrib/wpa_supplicant/config.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/contrib/wpa_supplicant/config.c b/contrib/wpa_supplicant/config.c index 171970d..6ea66de 100644 --- a/contrib/wpa_supplicant/config.c +++ b/contrib/wpa_supplicant/config.c @@ -66,17 +66,19 @@ static char * wpa_config_parse_string(const char *value, size_t *len) return os_strdup(value); } else { u8 *str; - size_t hlen = os_strlen(value); + size_t tlen, hlen = os_strlen(value); if (hlen & 1) return NULL; - *len = hlen / 2; - str = os_malloc(*len); + tlen = hlen / 2; + str = os_malloc(tlen + 1); if (str == NULL) return NULL; - if (hexstr2bin(value, str, *len)) { + if (hexstr2bin(value, str, tlen)) { os_free(str); return NULL; } + str[tlen] = '\0'; + *len = tlen; return (char *) str; } } @@ -1157,7 +1159,8 @@ static const struct parse_data ssid_fields[] = { { INT_RANGE(ieee80211w, 0, 2) }, #endif /* CONFIG_IEEE80211W */ { INT_RANGE(peerkey, 0, 1) }, - { INT_RANGE(mixed_cell, 0, 1) } + { INT_RANGE(mixed_cell, 0, 1) }, + { INT_RANGE(frequency, 0, 10000) } }; #undef OFFSET |