From e3f14558509e2ec3f486f1a1594621a8ebcf02be Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 1 Mar 2014 17:58:28 +0000 Subject: [PATCH] Don't free blockdata for negative DS cache entries. --- src/cache.c | 2 +- src/dnssec.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cache.c b/src/cache.c index 3ebb49d..f4a24b3 100644 --- a/src/cache.c +++ b/src/cache.c @@ -183,7 +183,7 @@ static void cache_blockdata_free(struct crec *crecp) else blockdata_free(crecp->addr.key.keydata); } - else if (crecp->flags & F_DS) + else if ((crecp->flags & F_DS) && !(crecp->flags & F_NEG)) blockdata_free(crecp->addr.ds.keydata); } #endif diff --git a/src/dnssec.c b/src/dnssec.c index 2d00570..5672ebe 100644 --- a/src/dnssec.c +++ b/src/dnssec.c @@ -353,7 +353,7 @@ static void from_wire(char *name) l[len] = '.'; } - if (l != name) + if ((char *)l != name) *(l-1) = 0; }