Commit 1d3ffc0e authored by Nick Mathewson's avatar Nick Mathewson 🥔
Browse files

Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4

parents 9e44df2c 65575b07
Loading
Loading
Loading
Loading

changes/md_leak_bug

0 → 100644
+5 −0
Original line number Diff line number Diff line
  o Major bugfixes (security, OOM)
    - Fix a memory leak that could occur if a microdescriptor parse
      fails during the tokenizing step. This could enable a memory
      exhaustion attack by directory servers. Fixes bug #11649; bugfix
      on 0.2.2.6-alpha.
+2 −0
Original line number Diff line number Diff line
@@ -4374,11 +4374,13 @@ microdescs_parse_from_string(const char *s, const char *eos,
    microdesc_free(md);
    md = NULL;

    SMARTLIST_FOREACH(tokens, directory_token_t *, t, token_clear(t));
    memarea_clear(area);
    smartlist_clear(tokens);
    s = start_of_next_microdesc;
  }

  SMARTLIST_FOREACH(tokens, directory_token_t *, t, token_clear(t));
  memarea_drop_all(area);
  smartlist_free(tokens);