mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 05:03:43 +01:00
r19089@catbus: nickm | 2008-03-27 11:05:23 -0400
Free some static hashtables and the log mutex on exit. Backport candidate. svn:r14212
This commit is contained in:
parent
03078f7f7a
commit
02acee891c
@ -17,6 +17,8 @@ Changes in version 0.2.1.1-alpha - 2008-??-??
|
||||
2. Bugfix on 0.2.0.16-alpha.
|
||||
- Free authority certificates on exit, so they don't look like memory
|
||||
leaks. Bugfix on 0.2.0.19-alpha.
|
||||
- Free static hashtables for policy maps and for TLS connections on
|
||||
shutdown, so they don't look like memory leaks. Bugfix on 0.2.0.x.
|
||||
|
||||
o Minor features:
|
||||
- Allow separate log levels to be configured for different logging
|
||||
|
@ -431,6 +431,8 @@ logs_free_all(void)
|
||||
log_free(victim);
|
||||
}
|
||||
tor_free(appname);
|
||||
tor_mutex_free(log_mutex);
|
||||
log_mutex = NULL;
|
||||
}
|
||||
|
||||
/** Remove and free the log entry <b>victim</b> from the linked-list
|
||||
|
@ -314,6 +314,10 @@ tor_tls_free_all(void)
|
||||
tor_tls_context_decref(global_tls_context);
|
||||
global_tls_context = NULL;
|
||||
}
|
||||
if (!HT_EMPTY(&tlsmap_root)) {
|
||||
log_warn(LD_MM, "Still have entries in the tlsmap at shutdown.");
|
||||
}
|
||||
HT_CLEAR(tlsmap, &tlsmap_root);
|
||||
}
|
||||
|
||||
/** We need to give OpenSSL a callback to verify certificates. This is
|
||||
|
@ -1849,13 +1849,15 @@ tor_free_all(int postfork)
|
||||
entry_guards_free_all();
|
||||
connection_free_all();
|
||||
buf_shrink_freelists(1);
|
||||
policies_free_all();
|
||||
if (!postfork) {
|
||||
config_free_all();
|
||||
router_free_all();
|
||||
policies_free_all();
|
||||
}
|
||||
free_cell_pool();
|
||||
tor_tls_free_all();
|
||||
if (!postfork) {
|
||||
tor_tls_free_all();
|
||||
}
|
||||
/* stuff in main.c */
|
||||
smartlist_free(connection_array);
|
||||
smartlist_free(closeable_connection_lst);
|
||||
|
@ -446,7 +446,7 @@ typedef struct policy_map_ent_t {
|
||||
addr_policy_t *policy;
|
||||
} policy_map_ent_t;
|
||||
|
||||
static HT_HEAD(policy_map, policy_map_ent_t) policy_root;
|
||||
static HT_HEAD(policy_map, policy_map_ent_t) policy_root = HT_INITIALIZER();
|
||||
|
||||
/** Return true iff a and b are equal. */
|
||||
static INLINE int
|
||||
@ -923,5 +923,9 @@ policies_free_all(void)
|
||||
authdir_reject_policy = NULL;
|
||||
addr_policy_list_free(authdir_invalid_policy);
|
||||
authdir_invalid_policy = NULL;
|
||||
|
||||
if (!HT_EMPTY(&policy_root))
|
||||
log_warn(LD_MM, "Still had some address policies cached at shutdown.");
|
||||
HT_CLEAR(policy_map, &policy_root);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user