Commit 5db94ada authored by Nick Mathewson's avatar Nick Mathewson 🦀
Browse files

Fix a pair of memory leaks in tor_cleanup()

Spotted by coverity scan as 1426749 and 1426750

Bug not in any released Tor.
parent bac0bcbb
Loading
Loading
Loading
Loading
+10 −3
Original line number Original line Diff line number Diff line
@@ -3504,10 +3504,17 @@ tor_cleanup(void)
    /* Remove control port file */
    /* Remove control port file */
    tor_remove_file(options->ControlPortWriteToFile);
    tor_remove_file(options->ControlPortWriteToFile);
    /* Remove cookie authentication file */
    /* Remove cookie authentication file */
    tor_remove_file(get_controller_cookie_file_name());
    {
      char *cookie_fname = get_controller_cookie_file_name();
      tor_remove_file(cookie_fname);
      tor_free(cookie_fname);
    }
    /* Remove Extended ORPort cookie authentication file */
    /* Remove Extended ORPort cookie authentication file */
    tor_remove_file(get_ext_or_auth_cookie_file_name());
    {

      char *cookie_fname = get_ext_or_auth_cookie_file_name();
      tor_remove_file(cookie_fname);
      tor_free(cookie_fname);
    }
    if (accounting_is_enabled(options))
    if (accounting_is_enabled(options))
      accounting_record_bandwidth_usage(now, get_or_state());
      accounting_record_bandwidth_usage(now, get_or_state());
    or_state_mark_dirty(get_or_state(), 0); /* force an immediate save. */
    or_state_mark_dirty(get_or_state(), 0); /* force an immediate save. */