From: Yu Watanabe Date: Sun, 21 Mar 2021 02:37:04 +0000 (+0900) Subject: resolve: dns_answer_contains() does not return negative errno X-Git-Tag: v249-rc1~499^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9fffe0a912d566f433483f1505caf7f8f59767a5;p=thirdparty%2Fsystemd.git resolve: dns_answer_contains() does not return negative errno --- diff --git a/src/resolve/resolved-dns-answer.c b/src/resolve/resolved-dns-answer.c index a032ac157e0..978d14818ab 100644 --- a/src/resolve/resolved-dns-answer.c +++ b/src/resolve/resolved-dns-answer.c @@ -277,7 +277,7 @@ int dns_answer_match_key(DnsAnswer *a, const DnsResourceKey *key, DnsAnswerFlags return found; } -int dns_answer_contains_nsec_or_nsec3(DnsAnswer *a) { +bool dns_answer_contains_nsec_or_nsec3(DnsAnswer *a) { DnsResourceRecord *i; DNS_ANSWER_FOREACH(i, a) @@ -314,7 +314,7 @@ int dns_answer_contains_zone_nsec3(DnsAnswer *answer, const char *zone) { return false; } -int dns_answer_contains(DnsAnswer *answer, DnsResourceRecord *rr) { +bool dns_answer_contains(DnsAnswer *answer, DnsResourceRecord *rr) { DnsResourceRecord *i; DNS_ANSWER_FOREACH(i, answer) diff --git a/src/resolve/resolved-dns-answer.h b/src/resolve/resolved-dns-answer.h index 7ecd8606bd6..3eb573b2c14 100644 --- a/src/resolve/resolved-dns-answer.h +++ b/src/resolve/resolved-dns-answer.h @@ -51,9 +51,9 @@ int dns_answer_add_extend(DnsAnswer **a, DnsResourceRecord *rr, int ifindex, Dns int dns_answer_add_soa(DnsAnswer *a, const char *name, uint32_t ttl, int ifindex); int dns_answer_match_key(DnsAnswer *a, const DnsResourceKey *key, DnsAnswerFlags *ret_flags); -int dns_answer_contains_nsec_or_nsec3(DnsAnswer *a); +bool dns_answer_contains_nsec_or_nsec3(DnsAnswer *a); int dns_answer_contains_zone_nsec3(DnsAnswer *answer, const char *zone); -int dns_answer_contains(DnsAnswer *answer, DnsResourceRecord *rr); +bool dns_answer_contains(DnsAnswer *answer, DnsResourceRecord *rr); int dns_answer_find_soa(DnsAnswer *a, const DnsResourceKey *key, DnsResourceRecord **ret, DnsAnswerFlags *ret_flags); int dns_answer_find_cname_or_dname(DnsAnswer *a, const DnsResourceKey *key, DnsResourceRecord **ret, DnsAnswerFlags *ret_flags); diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c index 6eac7e9c579..c97b0846a89 100644 --- a/src/resolve/resolved-dns-transaction.c +++ b/src/resolve/resolved-dns-transaction.c @@ -2222,13 +2222,7 @@ static int dns_transaction_has_unsigned_negative_answer(DnsTransaction *t) { * question. If so, let's see if there are any NSEC/NSEC3 RRs * included. If not, the answer is unsigned. */ - r = dns_answer_contains_nsec_or_nsec3(t->answer); - if (r < 0) - return r; - if (r > 0) - return false; - - return true; + return !dns_answer_contains_nsec_or_nsec3(t->answer); } static int dns_transaction_is_primary_response(DnsTransaction *t, DnsResourceRecord *rr) {