diff options
author | Nick Mathewson <nickm@torproject.org> | 2017-06-28 14:03:20 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2017-06-28 14:03:20 -0400 |
commit | ec9c6d77234809d5bdc06357100ca4bffbbec18c (patch) | |
tree | 1eb406d547ce7084a9d45806a79a54feac5835a0 | |
parent | 40602537493409bcf3c4eaeda7fbee6c6eb3f329 (diff) | |
parent | 57154e71aa3b0ff205f2700e97f0ffe4531e1330 (diff) | |
download | tor-ec9c6d77234809d5bdc06357100ca4bffbbec18c.tar.gz tor-ec9c6d77234809d5bdc06357100ca4bffbbec18c.zip |
Merge remote-tracking branch 'teor/bug21507-029' into maint-0.2.9
-rw-r--r-- | changes/bug21507 | 5 | ||||
-rw-r--r-- | src/or/routerparse.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/changes/bug21507 b/changes/bug21507 new file mode 100644 index 0000000000..f83e291b63 --- /dev/null +++ b/changes/bug21507 @@ -0,0 +1,5 @@ + o Minor bugfixes (voting consistency): + - Reject version numbers with non-numeric prefixes (such as +, -, and + whitespace). Disallowing whitespace prevents differential version + parsing between POSIX-based and Windows platforms. + Fixes bug 21507 and part of 21508; bugfix on 0.0.8pre1. diff --git a/src/or/routerparse.c b/src/or/routerparse.c index 2ee0d2720e..521e237be2 100644 --- a/src/or/routerparse.c +++ b/src/or/routerparse.c @@ -5621,6 +5621,8 @@ tor_version_parse(const char *s, tor_version_t *out) #define NUMBER(m) \ do { \ + if (!cp || *cp < '0' || *cp > '9') \ + return -1; \ out->m = (int)tor_parse_uint64(cp, 10, 0, INT32_MAX, &ok, &eos); \ if (!ok) \ return -1; \ |