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),
/* ifname = */ NULL,
/* ifindex = */ 0,
/* delegate = */ NULL,
- /* default_route = */ 0,
+ /* default_route = */ -1,
manager_get_dns_server(m),
m->dns_servers,
m->fallback_dns_servers,
/* 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,