Fix rwlock type mismatch in delete_ds() error path

The lock is acquired for reading but the error path from
dns_rdata_fromstruct() incorrectly unlocks it as a write lock.
This commit is contained in:
Ondřej Surý 2026-03-10 10:19:42 +01:00
parent 106416eb38
commit 96a22451d7

View file

@ -240,7 +240,7 @@ delete_ds(dns_qp_t *qp, dns_keytable_t *keytable, dns_keynode_t *knode,
result = dns_rdata_fromstruct(&dsrdata, dns_rdataclass_in,
dns_rdatatype_ds, ds, &b);
if (result != ISC_R_SUCCESS) {
RWUNLOCK(&knode->rwlock, isc_rwlocktype_write);
RWUNLOCK(&knode->rwlock, isc_rwlocktype_read);
return result;
}