diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-08-18 19:37:44 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-08-18 19:37:44 +0000 |
commit | 7fd9be0f083255f04377024b0518e14c26f1f985 (patch) | |
tree | d813fdc008519221fa4a512e6da95d7e878314a5 | |
parent | 97c6a1dd521c893de2c26b8876cdda283fdd7dc8 (diff) | |
download | plan9front-7fd9be0f083255f04377024b0518e14c26f1f985.tar.xz |
snoopy: ... and fix the memory leak for new dns rr types
-rw-r--r-- | sys/src/cmd/ip/snoopy/dns.c | 8 |
1 files 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 */ |