From: Mark Andrews Date: Thu, 3 Jun 2010 05:23:27 +0000 (+0000) Subject: 2912. [func] Windows clients don't like UPDATE responses that clear X-Git-Tag: v9.7.1b1~78^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b7bc86a4d3d78fae33577682cea7d1449abb7b33;p=thirdparty%2Fbind9.git 2912. [func] Windows clients don't like UPDATE responses that clear the zone section. [RT #20986] --- diff --git a/CHANGES b/CHANGES index 2356f604777..db87ed2d743 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2912. [func] Windows clients don't like UPDATE responses that clear + the zone section. [RT #20986] + 2911. [bug] dnssec-signzone didn't handle out of zone records well. [RT #21367] diff --git a/lib/dns/message.c b/lib/dns/message.c index 3bb5eda9909..8eac143f520 100644 --- a/lib/dns/message.c +++ b/lib/dns/message.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: message.c,v 1.253 2010/05/13 00:40:46 marka Exp $ */ +/* $Id: message.c,v 1.254 2010/06/03 05:23:27 marka Exp $ */ /*! \file */ @@ -2527,7 +2527,9 @@ dns_message_reply(dns_message_t *msg, isc_boolean_t want_question_section) { if (msg->opcode != dns_opcode_query && msg->opcode != dns_opcode_notify) want_question_section = ISC_FALSE; - if (want_question_section) { + if (msg->opcode == dns_opcode_update) + first_section = DNS_SECTION_ADDITIONAL; + else if (want_question_section) { if (!msg->question_ok) return (DNS_R_FORMERR); first_section = DNS_SECTION_ANSWER;