summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--src/or/routerparse.c3
2 files changed, 5 insertions, 1 deletions
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;