]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolved: properly determine size of DnsAnswer object
authorLennart Poettering <lennart@poettering.net>
Fri, 18 Dec 2015 18:31:21 +0000 (19:31 +0100)
committerLennart Poettering <lennart@poettering.net>
Fri, 18 Dec 2015 18:31:21 +0000 (19:31 +0100)
After all we want to allow NULL DnsAnswer objects as equivalent to empty
ones, hence we should use the right checks everywhere.

src/resolve/resolved-dns-cache.c

index 451875ece01ac14525524f55e2a54705af24b6a8..84ae8b59f9f5d8bbce2e27750ae7b94b4f6fffa8 100644 (file)
@@ -477,7 +477,7 @@ int dns_cache_put(
                 dns_cache_remove(c, key);
         }
 
-        if (!answer) {
+        if (dns_answer_size(answer) <= 0) {
                 if (log_get_max_level() >= LOG_DEBUG) {
                         _cleanup_free_ char *key_str = NULL;
 
@@ -506,7 +506,7 @@ int dns_cache_put(
         if (!IN_SET(rcode, DNS_RCODE_SUCCESS, DNS_RCODE_NXDOMAIN))
                 return 0;
 
-        cache_keys = answer->n_rrs;
+        cache_keys = dns_answer_size(answer);
         if (key)
                 cache_keys ++;