]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolve: add {global,link}_dns_configuration_json_append() helpers
authorNick Rosbrook <enr0n@ubuntu.com>
Fri, 10 Oct 2025 19:56:33 +0000 (15:56 -0400)
committerNick Rosbrook <enr0n@ubuntu.com>
Thu, 6 Nov 2025 10:17:58 +0000 (05:17 -0500)
No functional change, just add these helpers to improve readability in
dns_configuration_json_append(). This is preparation for later commits.

src/resolve/resolved-manager.c

index 7e6c074c11adf99acb8025ead7de3e41e3a829dc..ba9402e926348b987c8970727eddb3ae985898a8 100644 (file)
@@ -2112,6 +2112,34 @@ static int dns_configuration_json_append(
                         JSON_BUILD_PAIR_VARIANT_NON_NULL("searchDomains", search_domains_json));
 }
 
+static int global_dns_configuration_json_append(Manager *m, sd_json_variant **configuration) {
+        assert(m);
+        assert(configuration);
+
+        return dns_configuration_json_append(
+                        /* ifname = */ NULL,
+                        /* ifindex = */ 0,
+                        /* default_route = */ 0,
+                        manager_get_dns_server(m),
+                        m->dns_servers,
+                        m->search_domains,
+                        configuration);
+}
+
+static int link_dns_configuration_json_append(Link *l, sd_json_variant **configuration) {
+        assert(l);
+        assert(configuration);
+
+        return dns_configuration_json_append(
+                        l->ifname,
+                        l->ifindex,
+                        link_get_default_route(l),
+                        link_get_dns_server(l),
+                        l->dns_servers,
+                        l->search_domains,
+                        configuration);
+}
+
 int manager_dump_dns_configuration_json(Manager *m, sd_json_variant **ret) {
         _cleanup_(sd_json_variant_unrefp) sd_json_variant *configuration = NULL;
         Link *l;
@@ -2121,27 +2149,13 @@ int manager_dump_dns_configuration_json(Manager *m, sd_json_variant **ret) {
         assert(ret);
 
         /* Global DNS configuration */
-        r = dns_configuration_json_append(
-                        /* ifname = */ NULL,
-                        /* ifindex = */ 0,
-                        /* default_route = */ 0,
-                        manager_get_dns_server(m),
-                        m->dns_servers,
-                        m->search_domains,
-                        &configuration);
+        r = global_dns_configuration_json_append(m, &configuration);
         if (r < 0)
                 return r;
 
         /* Append configuration for each link */
         HASHMAP_FOREACH(l, m->links) {
-                r = dns_configuration_json_append(
-                                l->ifname,
-                                l->ifindex,
-                                link_get_default_route(l),
-                                link_get_dns_server(l),
-                                l->dns_servers,
-                                l->search_domains,
-                                &configuration);
+                r = link_dns_configuration_json_append(l, &configuration);
                 if (r < 0)
                         return r;
         }