From 7fd9be0f083255f04377024b0518e14c26f1f985 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Wed, 18 Aug 2021 19:37:44 +0000 Subject: [PATCH] snoopy: ... and fix the memory leak for new dns rr types --- sys/src/cmd/ip/snoopy/dns.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/src/cmd/ip/snoopy/dns.c b/sys/src/cmd/ip/snoopy/dns.c index 8b357b003..00b45e5a9 100644 --- a/sys/src/cmd/ip/snoopy/dns.c +++ b/sys/src/cmd/ip/snoopy/dns.c @@ -488,6 +488,7 @@ rrfree(RR *rp) memset(rp->srv, 0, sizeof *rp->srv); /* cause trouble */ free(rp->srv); break; + case Tdnskey: case Tkey: free(rp->key->data); memset(rp->key, 0, sizeof *rp->key); /* cause trouble */ @@ -508,9 +509,12 @@ rrfree(RR *rp) memset(rp->null, 0, sizeof *rp->null); /* cause trouble */ free(rp->null); break; + case Tcaa: + free(rp->caa->data); + memset(rp->caa, 0, sizeof *rp->caa); /* cause trouble */ + break; case Ttxt: - while(rp->txt != nil){ - t = rp->txt; + while(t = rp->txt){ rp->txt = t->next; free(t->p); memset(t, 0, sizeof *t); /* cause trouble */