]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
Fix#282 libunbound memleak on error condition by Eric Sesterhenn.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 16 Nov 2009 13:36:54 +0000 (13:36 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 16 Nov 2009 13:36:54 +0000 (13:36 +0000)
git-svn-id: file:///svn/unbound/trunk@1906 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
libunbound/libunbound.c

index 57854222eef7e57f8c067fb8b65bef2730d3e75b..9b3b9a06e5288a642e1d01174b4ea81596c32b9e 100644 (file)
@@ -1,5 +1,6 @@
 16 November 2009: Wouter
        - Fixed signer detection of CNAME responses without signatures.
+       - Fix#282 libunbound memleak on error condition by Eric Sesterhenn.
 
 13 November 2009: Wouter
        - Fixed validation failure for CNAME to optout NSEC3 nodata answer.
index e22dd557150195f47dab1ab7aa474d8777ed3026..a30177d725570cd5a8563937aa8beacd6f617c2b 100644 (file)
@@ -267,6 +267,7 @@ ub_ctx_add_ta(struct ub_ctx* ctx, char* ta)
        lock_basic_lock(&ctx->cfglock);
        if(ctx->finalized) {
                lock_basic_unlock(&ctx->cfglock);
+               free(dup);
                return UB_AFTERFINAL;
        }
        if(!cfg_strlist_insert(&ctx->env->cfg->trust_anchor_list, dup)) {
@@ -286,6 +287,7 @@ ub_ctx_add_ta_file(struct ub_ctx* ctx, char* fname)
        lock_basic_lock(&ctx->cfglock);
        if(ctx->finalized) {
                lock_basic_unlock(&ctx->cfglock);
+               free(dup);
                return UB_AFTERFINAL;
        }
        if(!cfg_strlist_insert(&ctx->env->cfg->trust_anchor_file_list, dup)) {
@@ -305,6 +307,7 @@ ub_ctx_trustedkeys(struct ub_ctx* ctx, char* fname)
        lock_basic_lock(&ctx->cfglock);
        if(ctx->finalized) {
                lock_basic_unlock(&ctx->cfglock);
+               free(dup);
                return UB_AFTERFINAL;
        }
        if(!cfg_strlist_insert(&ctx->env->cfg->trusted_keys_file_list, dup)) {