bind9/lib
Ondřej Surý 815587fbe6 Consume the preference before reading the locator in NID/L64/L32 tostruct
tostruct_nid() and tostruct_l64() read the 16-bit preference with the
non-consuming uint16_fromregion() and then memmove()'d the whole
remaining region -- still ten octets, still anchored at the preference
-- into the eight-octet nid[]/l64[] arrays. That folded the preference
into the first two locator octets and stored two octets past the end of
the array. tostruct_l32() shares the root cause: it read the 32-bit
locator from the same unconsumed offset, so the value was built from the
preference plus the first two locator octets.

Consume the two preference octets first, matching the sibling
tostruct_lp(), and assert the expected framing on the fixed-size types.

(cherry picked from commit 5aa279bbea)
2026-07-02 10:55:30 +00:00
..
dns Consume the preference before reading the locator in NID/L64/L32 tostruct 2026-07-02 10:55:30 +00:00
isc Remove isc_mem_strndup() 2026-06-24 15:38:59 +02:00
isccc Remove redundant parentheses from the return statement 2024-11-19 14:26:52 +01:00
isccfg Add the tcp-reuse-timeout option 2026-06-25 11:37:51 +02:00
ns Check that an NSEC signer is at or above the name to be validated 2026-06-24 21:50:08 +00:00
.gitignore The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
Makefile.am Move irs_resconf into libdns and remove libirs 2023-02-24 09:38:59 +00:00