]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Fix parse_dnskey in bin/dnssec/dnssec-ksr.c was failing to reset comments
authorMark Andrews <marka@isc.org>
Fri, 17 Oct 2025 04:24:04 +0000 (15:24 +1100)
committerMark Andrews <marka@isc.org>
Sun, 19 Oct 2025 23:54:32 +0000 (10:54 +1100)
If dns_name_fromtext failed or the subsequent dns_name_compare
failed the lexer's comments state wasn't cleaned up.

bin/dnssec/dnssec-ksr.c

index 787ffe4ff30bafbb526c91ffdd6f3c7a8820758f..bea889404524dc1d812909bf481810c45801a6cd 100644 (file)
@@ -986,10 +986,11 @@ parse_dnskey(isc_lex_t *lex, char *owner, isc_buffer_t *buf, dns_ttl_t *ttl) {
        isc_buffer_add(&b, strlen(owner));
        ret = dns_name_fromtext(dname, &b, dns_rootname, 0);
        if (ret != ISC_R_SUCCESS) {
-               return ret;
+               goto cleanup;
        }
        if (dns_name_compare(dname, name) != 0) {
-               return DNS_R_BADOWNERNAME;
+               ret = DNS_R_BADOWNERNAME;
+               goto cleanup;
        }
        isc_buffer_clear(&b);