From: Nick Mathewson Date: Thu, 11 Apr 2019 22:18:14 +0000 (-0400) Subject: Fix a memory leak on failure to create keys directory. X-Git-Tag: tor-0.4.1.1-alpha~45^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=85ff6f9114eb2d492d88ed55d01a69f7bafb10be;p=thirdparty%2Ftor.git Fix a memory leak on failure to create keys directory. Fixes bug 30148, which is also CID 1437429 and CID 1437454. Bugfix on 0.3.3.1-alpha, when separate key directories became a thing. --- diff --git a/changes/bug30148 b/changes/bug30148 new file mode 100644 index 0000000000..7d0257e3fe --- /dev/null +++ b/changes/bug30148 @@ -0,0 +1,4 @@ + o Minor bugfixes (memory leak): + - Avoid a minor memory leak that could occur on relays when + creating a keys directory failed. Fixes bug 30148; bugfix on + 0.3.3.1-alpha. diff --git a/src/or/routerkeys.c b/src/or/routerkeys.c index 43460da8cc..dd19d28d05 100644 --- a/src/or/routerkeys.c +++ b/src/or/routerkeys.c @@ -816,7 +816,7 @@ load_ed_keys(const or_options_t *options, time_t now) /* Check/Create the key directory */ if (create_keys_directory(options) < 0) - return -1; + goto err; char *fname; if (options->master_key_fname) { @@ -1403,4 +1403,3 @@ routerkeys_free_all(void) rsa_ed_crosscert = NULL; // redundant rsa_ed_crosscert_len = 0; } -