Merge branch 'maint-0.2.6' into release-0.2.6

This commit is contained in:
Nick Mathewson 2017-06-05 12:00:34 -04:00
commit 0978889563
2 changed files with 4 additions and 1 deletions

3
changes/bug22490 Normal file
View File

@ -0,0 +1,3 @@
o Minor bugfixes (correctness):
- Avoid undefined behavior when parsing IPv6 entries from the geoip6
file. Fixes bug 22490; bugfix on 0.2.4.6-alpha.

View File

@ -145,6 +145,7 @@ geoip_parse_entry(const char *line, sa_family_t family)
if (*line == '#')
return 0;
char buf[512];
if (family == AF_INET) {
unsigned int low, high;
if (tor_sscanf(line,"%u,%u,%2s", &low, &high, c) == 3 ||
@ -155,7 +156,6 @@ geoip_parse_entry(const char *line, sa_family_t family)
goto fail;
country = c;
} else { /* AF_INET6 */
char buf[512];
char *low_str, *high_str;
struct in6_addr low, high;
char *strtok_state;