Browse Source

Avoid segfault if EntryGuardPathBias precedes EntryGuard

Fix for bug 6774; bugfix on 0.2.3.17-beta.
Nick Mathewson 11 years ago
parent
commit
9d9ca264ec
2 changed files with 10 additions and 0 deletions
  1. 4 0
      changes/bug6774
  2. 6 0
      src/or/circuitbuild.c

+ 4 - 0
changes/bug6774

@@ -0,0 +1,4 @@
+  o Minor bugfixes:
+    - Avoid crashing on a malformed state file where EntryGuardPathBias
+      precedes EntryGuard. Fix for bug 6774; bugfix on 0.2.3.17-beta.
+

+ 6 - 0
src/or/circuitbuild.c

@@ -4877,6 +4877,12 @@ entry_guards_parse_state(or_state_t *state, int set, char **msg)
       const or_options_t *options = get_options();
       unsigned hop_cnt, success_cnt;
 
+      if (!node) {
+        *msg = tor_strdup("Unable to parse entry nodes: "
+               "EntryGuardPathBias without EntryGuard");
+        break;
+      }
+
       if (tor_sscanf(line->value, "%u %u", &success_cnt, &hop_cnt) != 2) {
         log_warn(LD_GENERAL, "Unable to parse guard path bias info: "
                  "Misformated EntryGuardPathBias %s", escaped(line->value));