aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/bug165394
-rw-r--r--src/or/routerlist.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/changes/bug16539 b/changes/bug16539
new file mode 100644
index 0000000000..8a0b6d251c
--- /dev/null
+++ b/changes/bug16539
@@ -0,0 +1,4 @@
+ o Minor bugfixes (Ed25519):
+ - Fix a memory leak when reading router descriptors with
+ expired Ed25519 certificate. Fixes bug 16539; bugfix on 0.2.7.2-alpha.
+
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index dc48862201..aebbd480d2 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -3295,6 +3295,8 @@ router_add_to_routerlist(routerinfo_t *router, const char **msg,
/* Make sure that it isn't expired. */
if (router->cert_expiration_time < approx_time()) {
+ routerinfo_free(router);
+ *msg = "Some certs on this router are expired.";
return ROUTER_CERTS_EXPIRED;
}