/* SPDX-License-Identifier: LGPL-2.1+ */
-/***
- This file is part of systemd.
-
- Copyright 2014 Lennart Poettering
-***/
#include <net/if.h>
#include <stdio_ext.h>
#include "resolved-mdns.h"
#include "string-util.h"
#include "strv.h"
+#include "tmpfile-util.h"
int link_new(Manager *m, Link **ret, int ifindex) {
_cleanup_(link_freep) Link *l = NULL;
l->llmnr_support = RESOLVE_SUPPORT_YES;
l->mdns_support = RESOLVE_SUPPORT_NO;
l->dnssec_mode = _DNSSEC_MODE_INVALID;
- l->private_dns_mode = _PRIVATE_DNS_MODE_INVALID;
+ l->dns_over_tls_mode = _DNS_OVER_TLS_MODE_INVALID;
l->operstate = IF_OPER_UNKNOWN;
if (asprintf(&l->state_file, "/run/systemd/resolve/netif/%i", ifindex) < 0)
l->llmnr_support = RESOLVE_SUPPORT_YES;
l->mdns_support = RESOLVE_SUPPORT_NO;
l->dnssec_mode = _DNSSEC_MODE_INVALID;
- l->private_dns_mode = _PRIVATE_DNS_MODE_INVALID;
+ l->dns_over_tls_mode = _DNS_OVER_TLS_MODE_INVALID;
dns_server_unlink_all(l->dns_servers);
dns_search_domain_unlink_all(l->search_domains);
return r;
}
-void link_set_private_dns_mode(Link *l, PrivateDnsMode mode) {
+void link_set_dns_over_tls_mode(Link *l, DnsOverTlsMode mode) {
assert(l);
-#if ! HAVE_GNUTLS
- if (mode != PRIVATE_DNS_NO)
- log_warning("Private DNS option for the link cannot be set to opportunistic when systemd-resolved is built without gnutls support. Turning off Private DNS support.");
+#if ! ENABLE_DNS_OVER_TLS
+ if (mode != DNS_OVER_TLS_NO)
+ log_warning("DNS-over-TLS option for the link cannot be set to opportunistic when systemd-resolved is built without DNS-over-TLS support. Turning off DNS-over-TLS support.");
return;
#endif
- l->private_dns_mode = mode;
+ l->dns_over_tls_mode = mode;
}
-static int link_update_private_dns_mode(Link *l) {
+static int link_update_dns_over_tls_mode(Link *l) {
_cleanup_free_ char *b = NULL;
int r;
assert(l);
- r = sd_network_link_get_private_dns(l->ifindex, &b);
+ r = sd_network_link_get_dns_over_tls(l->ifindex, &b);
if (r == -ENODATA) {
r = 0;
goto clear;
if (r < 0)
goto clear;
- l->private_dns_mode = private_dns_mode_from_string(b);
- if (l->private_dns_mode < 0) {
+ l->dns_over_tls_mode = dns_over_tls_mode_from_string(b);
+ if (l->dns_over_tls_mode < 0) {
r = -EINVAL;
goto clear;
}
return 0;
clear:
- l->private_dns_mode = _PRIVATE_DNS_MODE_INVALID;
+ l->dns_over_tls_mode = _DNS_OVER_TLS_MODE_INVALID;
return r;
}
if (r < 0)
log_warning_errno(r, "Failed to read mDNS support for interface %s, ignoring: %m", l->name);
- r = link_update_private_dns_mode(l);
+ r = link_update_dns_over_tls_mode(l);
if (r < 0)
- log_warning_errno(r, "Failed to read Private DNS mode for interface %s, ignoring: %m", l->name);
+ log_warning_errno(r, "Failed to read DNS-over-TLS mode for interface %s, ignoring: %m", l->name);
r = link_update_dnssec_mode(l);
if (r < 0)
link_set_dns_server(l, l->dns_servers);
}
-PrivateDnsMode link_get_private_dns_mode(Link *l) {
+DnsOverTlsMode link_get_dns_over_tls_mode(Link *l) {
assert(l);
- if (l->private_dns_mode != _PRIVATE_DNS_MODE_INVALID)
- return l->private_dns_mode;
+ if (l->dns_over_tls_mode != _DNS_OVER_TLS_MODE_INVALID)
+ return l->dns_over_tls_mode;
- return manager_get_private_dns_mode(l->manager);
+ return manager_get_dns_over_tls_mode(l->manager);
}
DnssecMode link_get_dnssec_mode(Link *l) {
if (l->is_managed)
return 0; /* if the device is managed, then networkd is our configuration source, not the bus API */
- r = parse_env_file(NULL, l->state_file, NEWLINE,
+ r = parse_env_file(NULL, l->state_file,
"LLMNR", &llmnr,
"MDNS", &mdns,
"DNSSEC", &dnssec,
"SERVERS", &servers,
"DOMAINS", &domains,
- "NTAS", &ntas,
- NULL);
+ "NTAS", &ntas);
if (r == -ENOENT)
return 0;
if (r < 0)