Sophie

Sophie

distrib > Mandriva > 2007.0 > i586 > by-pkgid > 9f02b6c9f3e77361860788510a3e932b > files > 17

bind-9.3.2-8.4mdv2007.0.src.rpm

diff -Naur bind-9.3.2b2/bin/dig/host.1 bind-9.3.2b2.oden/bin/dig/host.1
--- bind-9.3.2b2/bin/dig/host.1	2005-10-13 04:33:43.000000000 +0200
+++ bind-9.3.2b2.oden/bin/dig/host.1	2005-10-26 19:08:09.000000000 +0200
@@ -81,6 +81,9 @@
 \fB\-v\fR
 enabled verbose output.
 .PP
+The \fB-F\fR
+options is used to force to don't go on the next server when the first one return a \fBSERVFAIL\fR.
+.PP
 List mode is selected by the
 \fB\-l\fR
 option. This makes
diff -Naur bind-9.3.2b2/bin/dig/dighost.c bind-9.3.2b2.oden/bin/dig/dighost.c
--- bind-9.3.2b2/bin/dig/dighost.c	2005-10-14 03:38:40.000000000 +0200
+++ bind-9.3.2b2.oden/bin/dig/dighost.c	2005-10-26 19:06:41.000000000 +0200
@@ -685,7 +685,7 @@
 	looknew->identify = ISC_FALSE;
 	looknew->identify_previous_line = ISC_FALSE;
 	looknew->ignore = ISC_FALSE;
-	looknew->servfail_stops = ISC_TRUE;
+	looknew->servfail_stops = ISC_FALSE;
 	looknew->besteffort = ISC_TRUE;
 	looknew->dnssec = ISC_FALSE;
 #ifdef DIG_SIGCHASE
diff -Naur bind-9.3.2b2/bin/dig/host.c bind-9.3.2b2.oden/bin/dig/host.c
--- bind-9.3.2b2/bin/dig/host.c	2005-07-04 05:29:45.000000000 +0200
+++ bind-9.3.2b2.oden/bin/dig/host.c	2005-10-26 19:06:41.000000000 +0200
@@ -125,6 +125,7 @@
 "       -t specifies the query type\n"
 "       -T enables TCP/IP mode\n"
 "       -v enables verbose output\n"
+"       -F Don't get next server when the first one got a SERVFAIL\n"
 "       -w specifies to wait forever for a reply\n"
 "       -W specifies how long to wait for a reply\n"
 "       -4 use IPv4 query transport only\n"
@@ -538,7 +539,7 @@
 
 	lookup = make_empty_lookup();
 
-	while ((c = isc_commandline_parse(argc, argv, "lvwrdt:c:aTCN:R:W:Dni46"))
+	while ((c = isc_commandline_parse(argc, argv, "Flvwrdt:c:aTCN:R:W:Dni46"))
 	       != EOF) {
 		switch (c) {
 		case 'l':
@@ -547,6 +548,9 @@
 			lookup->rdtypeset = ISC_TRUE;
 			fatalexit = 3;
 			break;
+		case 'F':
+			lookup->servfail_stops = ISC_TRUE;
+			break;
 		case 'v':
 		case 'd':
 			short_form = ISC_FALSE;
diff -Naur bind-9.3.2b2/bin/dig/nslookup.c bind-9.3.2b2.oden/bin/dig/nslookup.c
--- bind-9.3.2b2/bin/dig/nslookup.c	2005-07-12 07:47:42.000000000 +0200
+++ bind-9.3.2b2.oden/bin/dig/nslookup.c	2005-10-26 19:06:41.000000000 +0200
@@ -50,7 +50,7 @@
 	comments = ISC_TRUE, section_question = ISC_TRUE,
 	section_answer = ISC_TRUE, section_authority = ISC_TRUE,
 	section_additional = ISC_TRUE, recurse = ISC_TRUE,
-	aaonly = ISC_FALSE;
+	aaonly = ISC_FALSE, fail = ISC_FALSE;
 static isc_boolean_t in_use = ISC_FALSE;
 static char defclass[MXRD] = "IN";
 static char deftype[MXRD] = "A";
@@ -629,6 +629,8 @@
 		usesearch = ISC_TRUE;
 	} else if (strncasecmp(opt, "nosearch", 5) == 0) {
 		usesearch = ISC_FALSE;
+	} else if (strncasecmp(opt, "fail",6) == 0) {
+		fail = ISC_TRUE;
 	} else if (strncasecmp(opt, "sil", 3) == 0) {
 		/* deprecation_msg = ISC_FALSE; */
 	} else {
@@ -671,6 +673,7 @@
 		lookup->rdtype = rdtype;
 		lookup->rdtypeset = ISC_TRUE;
 	}
+	lookup->servfail_stops = fail;
 	lookup->rdclass = rdclass;
 	lookup->rdclassset = ISC_TRUE;
 	lookup->trace = ISC_FALSE;