Commit 85fda9c2 authored by Mark Andrews's avatar Mark Andrews

EDNS only (-E) wasn't working properly.

For servers where the zone isn't loaded, the test should be seen OPT
and "all servfail" or "all refused" for version=0, not "all servfail"
and "all refused".
parent 0521a510
......@@ -630,9 +630,10 @@ struct summary {
int seenopt; /* see a EDNS response */
int seenedns; /* see a EDNS response */
int seenfailure; /* see a lookup failure */
int allok; /* all answers are current ok */
int allrefused; /* all answers are current ok */
int allservfail; /* all answers are current ok */
int allok; /* all answers are ok */
int allrefused; /* all answers are refused */
int allservfail; /* all answers are servfail */
int alltimeout; /* all answers are timeout */
int targetok; /* target is valid */
int soaok; /* soaname is valid */
struct summary *xlink; /* cross link of recursive A/AAAA */
......@@ -1119,7 +1120,7 @@ printandfree(struct summary *summary) {
return;
}
if (summary->seenopt && (summary->allrefused && summary->allservfail))
if (summary->seenopt && (summary->allrefused || summary->allservfail))
summary->seenedns = 1;
if (summary->type != 0 || (summary->allok && bad) ||
......@@ -1924,6 +1925,7 @@ check(char *zone, char *ns, char *address, struct summary *parent, int port) {
summary->allok = 1;
summary->allrefused = 1;
summary->allservfail = 1;
summary->alltimeout = 1;
ns_makecanon(zone, summary->zone, sizeof(summary->zone));
i = strlen(summary->zone);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment