Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 04 Nov 2000 08:41:48 +1100
From:      Mark.Andrews@nominum.com
To:        Larry Rosenman <ler@lerctr.org>
Cc:        freebsd-stable@FreeBSD.ORG
Subject:   Re: named weirdness... 
Message-ID:  <200011032141.eA3Lfmc89833@drugs.dv.isc.org>
In-Reply-To: Your message of "Fri, 03 Nov 2000 10:11:53 MDT." <20001103101152.A5419@lerami.lerctr.org> 

next in thread | previous in thread | raw e-mail | index | archive | help

	The following is awaiting commit to 8.2.3

	Mark

Index: src/CHANGES
===================================================================
RCS file: /proj/cvs/isc/bind/src/CHANGES,v
retrieving revision 8.661
diff -u -r8.661 CHANGES
--- CHANGES	2000/09/30 02:24:51	8.661
+++ CHANGES	2000/11/03 21:31:17
@@ -1,3 +1,6 @@
+xxxx.	[bug]		aa was being cleared on notify "queries" prior to
+			testing.
+
 1047.	[bug]		req_iquery() wasn't doing a final update on buflenp.
 
 1046.	[port]		Win/NT port improved by its author.
Index: src/bin/named/ns_req.c
===================================================================
RCS file: /proj/cvs/isc/bind/src/bin/named/ns_req.c,v
retrieving revision 8.120
diff -u -r8.120 ns_req.c
--- ns_req.c	2000/09/30 02:24:52	8.120
+++ ns_req.c	2000/11/03 21:31:19
@@ -271,7 +271,11 @@
 	 * safely assume these are always 0 when a query
 	 * comes in.
 	 */
-	hp->aa = hp->ra = 0;
+#ifdef BIND_NOTIFY
+	if (hp->opcode != ns_o_notify)
+#endif
+		hp->aa = 0;
+	hp->ra = 0;
 	ra = (NS_OPTION_P(OPTION_NORECURSE) == 0);
 
 	if (error == NOERROR)
@@ -460,14 +464,6 @@
 	char dnbuf[MAXDNAME];
 	struct zoneinfo *zp;
 
-	/* valid notify's have one question */
-	if (ntohs(hp->qdcount) != 1) {
-		ns_debug(ns_log_notify, 1,
-			 "FORMERR Notify header counts wrong");
-		hp->rcode = ns_r_formerr;
-		return (Finish);
-	}
-
 	/* valid notify's are authoritative */
 	if (!hp->aa) {
 		ns_debug(ns_log_notify, 1,
@@ -476,6 +472,15 @@
 		hp->rcode = ns_r_formerr;
 		return (Finish);
 #endif
+	}
+	hp->aa = 0;
+
+	/* valid notify's have one question */
+	if (ntohs(hp->qdcount) != 1) {
+		ns_debug(ns_log_notify, 1,
+			 "FORMERR Notify header counts wrong");
+		hp->rcode = ns_r_formerr;
+		return (Finish);
 	}
 
 	n = dn_expand(msg, eom, *cpp, dnbuf, sizeof dnbuf);
> Looks like it just took 20+minutes, and not on the notify:
> Nov  3 09:31:52 lerami named[828]: master zone "lerctr.org" (IN)
> loaded (serial
> 2000110302)
> Nov  3 09:32:00 lerami named[828]: Sent NOTIFY for "lerctr.org IN SOA"
> (lerctr.o
> rg); 6 NS, 6 A
> Nov  3 09:32:00 lerami named[828]: Received NOTIFY answer from
> 207.158.64.11 for
>  "lerctr.org IN SOA"
> Nov  3 09:32:00 lerami named[828]: Received NOTIFY answer from
> 207.158.64.10 for
>  "lerctr.org IN SOA"
> Nov  3 09:32:00 lerami named[828]: Received NOTIFY answer from
> 206.138.224.150 f
> or "lerctr.org IN SOA"
> Nov  3 09:32:00 lerami named[828]: Received NOTIFY answer from
> 206.66.10.46 for
> "lerctr.org IN SOA"
> Nov  3 09:32:01 lerami named[828]: approved AXFR from
> [207.158.64.11].57862 for
> "lerctr.org"
> Nov  3 09:32:01 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [207.158.64.11].57862
> Nov  3 09:32:01 lerami named[828]: approved AXFR from
> [207.158.64.10].44387 for
> "lerctr.org"
> Nov  3 09:32:01 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
[207.158.64.10].44387
> Nov  3 09:32:01 lerami named[828]: approved AXFR from
> [206.66.10.46].4003 for "l
> erctr.org"
> Nov  3 09:32:01 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [206.66.10.46].4003
> Nov  3 09:32:01 lerami named[828]: approved AXFR from
> [206.138.224.150].2706 for
>  "lerctr.org"
> Nov  3 09:32:01 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [206.138.224.150].2706
> Nov  3 09:33:54 lerami named[828]: approved AXFR from
> [192.67.63.1].2182 for "le
> rctr.org"
> Nov  3 09:33:54 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [192.67.63.1].2182
> Nov  3 09:51:42 lerami named[828]: approved AXFR from
> [207.158.72.45].1038 for "
> lerctr.org"
> Nov  3 09:51:42 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [207.158.72.45].1038
> Nov  3 09:52:00 lerami named[828]: rcvd NOTIFY(lerctr.org, IN, SOA)
> from [207.15
> 8.72.45].1745
> Nov  3 09:52:00 lerami named[828]: NOTIFY(SOA) for non-secondary name
> (lerctr.or
> g), from [207.158.72.45].1745
> Nov  3 10:06:08 lerami named[828]: unapproved AXFR from
> [208.184.13.196].1077 fo
> r "lerctr.org" (acl)
> Nov  3 10:06:20 lerami named[828]: unapproved AXFR from
> [208.184.13.196].1078 fo
> r "lerctr.org" (acl)
> Nov  3 10:08:16 lerami named[828]: approved AXFR from
> [207.136.8.252].4060 for "
> lerctr.org"
> Nov  3 10:08:16 lerami named[828]: zone transfer (AXFR) of
> "lerctr.org" (IN) to
> [207.136.8.252].4060
> $
--
Mark Andrews, Nominum Inc.
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: Mark.Andrews@nominum.com


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200011032141.eA3Lfmc89833>