commit 4c21d4ef7ac0ba0b20ee60322ce177c5f965dc0e
parent aa5af6a238bc5f1cae548e416ada261b3a105d16
Author: Nick Mathewson <nickm@torproject.org>
Date: Wed, 28 Jun 2017 14:03:23 -0400
Merge branch 'maint-0.2.9' into maint-0.3.0
Diffstat:
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/changes/bug21507 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
@@ -4894,6 +4894,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; \