diff --git a/CHANGES b/CHANGES index 806a118684..7a91b5a2af 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,7 @@ +4295. [bug] An unchecked result in dns_message_pseudosectiontotext() + could allow incorrect text formatting of EDNS EXPIRE + options. [RT #41437] + 4294. [bug] Fixed a regression in which "rndc stop -p" failed to print the PID. [RT #41513] diff --git a/lib/dns/message.c b/lib/dns/message.c index 95a33d8206..e2d15e931b 100644 --- a/lib/dns/message.c +++ b/lib/dns/message.c @@ -3388,7 +3388,11 @@ dns_message_pseudosectiontotext(dns_message_t *msg, snprintf(buf, sizeof(buf), "%u", secs); ADD_STRING(target, buf); ADD_STRING(target, " ("); - dns_ttl_totext(secs, ISC_TRUE, target); + result = dns_ttl_totext(secs, + ISC_TRUE, + target); + if (result != ISC_R_SUCCESS) + return (result); ADD_STRING(target, ")\n"); continue; }