From: Nick Mathewson Date: Mon, 14 Jan 2008 19:00:33 +0000 (+0000) Subject: r17614@catbus: nickm | 2008-01-14 13:55:25 -0500 X-Git-Tag: tor-0.2.0.16-alpha~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=89dfec02d89979935568ff6028366eec1faf3380;p=thirdparty%2Ftor.git r17614@catbus: nickm | 2008-01-14 13:55:25 -0500 Add a missing "goto err" when parsing v2 ns docs svn:r13133 --- diff --git a/ChangeLog b/ChangeLog index f4408819cf..144a520ab5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -47,6 +47,9 @@ Changes in version 0.2.0.16-alpha - 2008-01-?? - Detect more kinds of possible internal error. - Avoid possible segfault if key generation fails in crypto_pk_hybrid_encrypt. Bugfix on 0.2.0. + - Avoid segfault in the case where a badly behaved v2 versioning + directory sends a signed networkstatus with missing client-versions. + Bugfix on 0.1.2. o Minor features (controller): - Get NS events working again. (Patch from tup) diff --git a/src/or/routerparse.c b/src/or/routerparse.c index 102bae7641..4b0d652199 100644 --- a/src/or/routerparse.c +++ b/src/or/routerparse.c @@ -1882,7 +1882,8 @@ networkstatus_v2_parse_from_string(const char *s) if (ns->recommends_versions) { if (!(tok = find_first_by_keyword(tokens, K_CLIENT_VERSIONS))) { - log_warn(LD_DIR, "Missing client-versions"); + log_warn(LD_DIR, "Missing client-versions on versioning directory"); + goto err; } ns->client_versions = tok->args[0]; tok->args[0] = NULL;