summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/control.c4
-rw-r--r--src/or/microdesc.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/or/control.c b/src/or/control.c
index 053c00b069..cd2df5ac34 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -1201,6 +1201,10 @@ handle_control_authenticate(control_connection_t *conn, uint32_t len,
tor_free(password);
connection_printf_to_buf(conn, "515 Authentication failed: %s\r\n", errstr);
connection_mark_for_close(TO_CONN(conn));
+ if (sl) { /* clean up */
+ SMARTLIST_FOREACH(sl, char *, cp, tor_free(cp));
+ smartlist_free(sl);
+ }
return 0;
ok:
log_info(LD_CONTROL, "Authenticated control connection ("TOR_SOCKET_T_FORMAT
diff --git a/src/or/microdesc.c b/src/or/microdesc.c
index ed586f37c2..576fed0066 100644
--- a/src/or/microdesc.c
+++ b/src/or/microdesc.c
@@ -576,6 +576,7 @@ microdesc_cache_rebuild(microdesc_cache_t *cache, int force)
microdesc_wipe_body(md);
}
}
+ smartlist_free(wrote);
return -1;
}