resolved: properly propagate query candidate error

We already properly propagate errors from transactions to queries. Make sure that errors that happened during handling
of query candidates are propagated to the query, too.
This commit is contained in:
Lennart Poettering
2016-01-25 17:19:20 +01:00
parent 7cc6ed7ba6
commit a7bf2ada62
+9
View File
@@ -760,6 +760,15 @@ static void dns_query_accept(DnsQuery *q, DnsQueryCandidate *c) {
return;
}
if (c->error_code != 0) {
/* If the candidate had an error condition of its own, start with that. */
state = DNS_TRANSACTION_ERRNO;
q->answer = dns_answer_unref(q->answer);
q->answer_rcode = 0;
q->answer_dnssec_result = _DNSSEC_RESULT_INVALID;
q->answer_errno = c->error_code;
}
SET_FOREACH(t, c->transactions, i) {
switch (t->state) {