]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolved: introduce dns_server_is_fallback
authorRonan Pigott <ronan@rjp.ie>
Wed, 21 Aug 2024 16:36:13 +0000 (09:36 -0700)
committerRonan Pigott <ronan@rjp.ie>
Wed, 21 Aug 2024 16:51:42 +0000 (09:51 -0700)
src/resolve/resolved-dns-server.c
src/resolve/resolved-dns-server.h

index 70894977ebbb075e59d30312e2438fb394c9c621..cfdcc6d9bc70428498576a26b9567cda440ce2ad 100644 (file)
@@ -100,9 +100,7 @@ int dns_server_new(
         /* A new DNS server that isn't fallback is added and the one
          * we used so far was a fallback one? Then let's try to pick
          * the new one */
-        if (type != DNS_SERVER_FALLBACK &&
-            m->current_dns_server &&
-            m->current_dns_server->type == DNS_SERVER_FALLBACK)
+        if (type != DNS_SERVER_FALLBACK && dns_server_is_fallback(m->current_dns_server))
                 manager_set_dns_server(m, NULL);
 
         if (ret)
index 5e1d5698f67b21d2090a0d607be3fbc7ed38298e..7d7d294c8249f17740d614024157407659a9f51e 100644 (file)
@@ -182,4 +182,8 @@ void dns_server_unref_stream(DnsServer *s);
 
 DnsScope *dns_server_scope(DnsServer *s);
 
+static inline bool dns_server_is_fallback(DnsServer *s) {
+        return s && s->type == DNS_SERVER_FALLBACK;
+}
+
 int dns_server_dump_state_to_json(DnsServer *server, sd_json_variant **ret);