From 19cf7bb2cdf85404f255ca85dce3756dc93edde5 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Fri, 23 Jan 2026 13:32:41 +1100 Subject: [PATCH] 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. (cherry picked from commit 3180e5045978ce9fef524e98a66c0fdc7d7b783c) --- lib/dns/rdata/generic/dsync_66.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/dns/rdata/generic/dsync_66.c b/lib/dns/rdata/generic/dsync_66.c index 6f57f06e18..aa0f3a44ca 100644 --- a/lib/dns/rdata/generic/dsync_66.c +++ b/lib/dns/rdata/generic/dsync_66.c @@ -237,7 +237,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);