From: Mark Andrews Date: Fri, 23 Jan 2026 02:32:41 +0000 (+1100) Subject: dsync_from struct produced an invalid record X-Git-Tag: v9.21.18~13^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3180e5045978ce9fef524e98a66c0fdc7d7b783c;p=thirdparty%2Fbind9.git dsync_from struct produced an invalid record uint16_tobuffer was used instead of uint8_tobuffer when adding the scheme to the buffer. This produced a record that was one octet too long. This has been fixed. --- diff --git a/lib/dns/rdata/generic/dsync_66.c b/lib/dns/rdata/generic/dsync_66.c index 0242da3ed03..ca121fb78dd 100644 --- a/lib/dns/rdata/generic/dsync_66.c +++ b/lib/dns/rdata/generic/dsync_66.c @@ -238,7 +238,7 @@ fromstruct_dsync(ARGS_FROMSTRUCT) { UNUSED(rdclass); RETERR(uint16_tobuffer(dsync->type, target)); - RETERR(uint16_tobuffer(dsync->scheme, target)); + RETERR(uint8_tobuffer(dsync->scheme, target)); RETERR(uint16_tobuffer(dsync->port, target)); dns_name_toregion(&dsync->target, ®ion); return isc_buffer_copyregion(target, ®ion);