]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolve: use JSON_BUILD_PAIR_TRISTATE_NON_NULL for default_route
authorYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 6 Nov 2025 16:21:56 +0000 (01:21 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Mon, 10 Nov 2025 02:01:38 +0000 (11:01 +0900)
src/resolve/resolved-manager.c

index 29c5f4488e27372d1c8e873b93586d4ae6cf6db4..65439b21f42f1f0131b21e9fdea0fcade62497c0 100644 (file)
@@ -2156,9 +2156,7 @@ static int dns_configuration_json_append(
                         JSON_BUILD_PAIR_STRING_NON_EMPTY("ifname", ifname),
                         SD_JSON_BUILD_PAIR_CONDITION(ifindex > 0, "ifindex", SD_JSON_BUILD_UNSIGNED(ifindex)),
                         JSON_BUILD_PAIR_STRING_NON_EMPTY("delegate", delegate),
-                        JSON_BUILD_PAIR_CONDITION_BOOLEAN(ifindex > 0 || !!delegate,
-                                                          "defaultRoute",
-                                                          default_route > 0),
+                        JSON_BUILD_PAIR_TRISTATE_NON_NULL("defaultRoute", default_route),
                         JSON_BUILD_PAIR_VARIANT_NON_NULL("currentServer", current_dns_server_json),
                         JSON_BUILD_PAIR_VARIANT_NON_NULL("servers", dns_servers_json),
                         JSON_BUILD_PAIR_VARIANT_NON_NULL("fallbackServers", fallback_dns_servers_json),
@@ -2189,7 +2187,7 @@ static int global_dns_configuration_json_append(Manager *m, sd_json_variant **co
                         /* ifname = */ NULL,
                         /* ifindex = */ 0,
                         /* delegate = */ NULL,
-                        /* default_route = */ 0,
+                        /* default_route = */ -1,
                         manager_get_dns_server(m),
                         m->dns_servers,
                         m->fallback_dns_servers,
@@ -2275,7 +2273,7 @@ static int delegate_dns_configuration_json_append(DnsDelegate *d, sd_json_varian
                         /* ifname = */ NULL,
                         /* ifindex = */ 0,
                         d->id,
-                        d->default_route,
+                        d->default_route > 0, /* Defaults to false. See dns_scope_is_default_route(). */
                         dns_delegate_get_dns_server(d),
                         d->dns_servers,
                         /* fallback_dns_servers = */ NULL,