BUG/MINOR: jwt: Missing pkey free during cleanup
authorRemi Tricot-Le Breton <rlebreton@haproxy.com>
Fri, 4 Feb 2022 13:21:02 +0000 (14:21 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 16 Feb 2022 13:40:53 +0000 (14:40 +0100)
When emptying the jwt_cert_tree during deinit, the entries are freed but
not the EVP_PKEY reference they kept, leading in a memory leak.

Should be backported in 2.5.

(cherry picked from commit 2b5a6559460b41dd6db2740cc961b461cef12edc)
Signed-off-by: Willy Tarreau <w@1wt.eu>

src/jwt.c

index 1c13209..848de99 100644 (file)
--- a/src/jwt.c
+++ b/src/jwt.c
@@ -364,6 +364,7 @@ static void jwt_deinit(void)
        while (node) {
                entry = ebmb_entry(node, struct jwt_cert_tree_entry, node);
                ebmb_delete(node);
+               EVP_PKEY_free(entry->pkey);
                ha_free(&entry);
                node = ebmb_first(&jwt_cert_tree);
        }