]> git.lizzy.rs Git - plan9front.git/commitdiff
snoopy: ... and fix the memory leak for new dns rr types
authorcinap_lenrek <cinap_lenrek@felloff.net>
Wed, 18 Aug 2021 19:37:44 +0000 (19:37 +0000)
committercinap_lenrek <cinap_lenrek@felloff.net>
Wed, 18 Aug 2021 19:37:44 +0000 (19:37 +0000)
sys/src/cmd/ip/snoopy/dns.c

index 8b357b00377547d515bdc21adefcae7d674e3d58..00b45e5a91d628c3a2d6234bf6ac8262b3367a02 100644 (file)
@@ -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 */