#include "af-list.h"
#include "alloc-util.h"
-#include "bus-util.h"
+#include "bus-polkit.h"
#include "dirent-util.h"
#include "dns-domain.h"
#include "fd-util.h"
}
(void) manager_write_resolv_conf(m);
+ (void) manager_send_changed(m, "DNS");
return 0;
}
static int on_hostname_change(sd_event_source *es, int fd, uint32_t revents, void *userdata) {
_cleanup_free_ char *full_hostname = NULL, *llmnr_hostname = NULL, *mdns_hostname = NULL;
Manager *m = userdata;
+ bool llmnr_hostname_changed;
int r;
assert(m);
if (r < 0)
return 0; /* ignore invalid hostnames */
+ llmnr_hostname_changed = !streq(llmnr_hostname, m->llmnr_hostname);
if (streq(full_hostname, m->full_hostname) &&
- streq(llmnr_hostname, m->llmnr_hostname) &&
+ !llmnr_hostname_changed &&
streq(mdns_hostname, m->mdns_hostname))
return 0;
free_and_replace(m->mdns_hostname, mdns_hostname);
manager_refresh_rrs(m);
+ (void) manager_send_changed(m, "LLMNRHostname");
return 0;
}
.dns_stub_tcp_fd = -1,
.hostname_fd = -1,
- .llmnr_support = RESOLVE_SUPPORT_YES,
- .mdns_support = RESOLVE_SUPPORT_YES,
+ .llmnr_support = DEFAULT_LLMNR_MODE,
+ .mdns_support = DEFAULT_MDNS_MODE,
.dnssec_mode = DEFAULT_DNSSEC_MODE,
.dns_over_tls_mode = DEFAULT_DNS_OVER_TLS_MODE,
.enable_cache = DNS_CACHE_MODE_YES,
.need_builtin_fallbacks = true,
.etc_hosts_last = USEC_INFINITY,
.etc_hosts_mtime = USEC_INFINITY,
+ .etc_hosts_ino = 0,
+ .etc_hosts_dev = 0,
.read_etc_hosts = true,
};
free_and_replace(m->mdns_hostname, k);
manager_refresh_rrs(m);
+ (void) manager_send_changed(m, "LLMNRHostname");
return 0;
}
void manager_cleanup_saved_user(Manager *m) {
_cleanup_closedir_ DIR *d = NULL;
struct dirent *de;
- int r;
assert(m);
if (dot_or_dot_dot(de->d_name))
continue;
- r = parse_ifindex(de->d_name, &ifindex);
- if (r < 0) /* Probably some temporary file from a previous run. Delete it */
+ ifindex = parse_ifindex(de->d_name);
+ if (ifindex < 0) /* Probably some temporary file from a previous run. Delete it */
goto rm;
l = hashmap_get(m->links, INT_TO_PTR(ifindex));