From 9dd2ee95f11de29e358cc01059861e724dbb5807 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Tue, 24 Nov 2009 03:20:02 +0000 Subject: [PATCH] 2784. [bug] TC was not always being set when required glue was dropped. [RT #234186] --- CHANGES | 3 +++ lib/dns/message.c | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 84ae73bd30..fd12574f4f 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2784. [bug] TC was not always being set when required glue was + dropped. [RT #234186] + 2783. [func] Return minimal responses to EDNS/UDP queries with a UDP buffer size of 512 or less. [RT #20654] diff --git a/lib/dns/message.c b/lib/dns/message.c index d74382b5b0..b28909ac8c 100644 --- a/lib/dns/message.c +++ b/lib/dns/message.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: message.c,v 1.248 2009/10/26 23:14:54 each Exp $ */ +/* $Id: message.c,v 1.249 2009/11/24 03:20:02 marka Exp $ */ /*! \file */ @@ -1918,6 +1918,8 @@ dns_message_rendersection(dns_message_t *msg, dns_section_t sectionid, msg->counts[sectionid] += total; return (result); } + if (result == ISC_R_NOSPACE) + msg->flags |= DNS_MESSAGEFLAG_TC; if (result != ISC_R_SUCCESS) { INSIST(st.used < 65536); dns_compress_rollback(msg->cctx,