Commit 0514bcd3 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

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

parents c0a73c8b 1d3ffc0e
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
@@ -4129,11 +4129,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);