summaryrefslogtreecommitdiffstats
path: root/src/resolve/resolved-manager.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2017-10-05 16:53:32 +0200
committerLennart Poettering <lennart@poettering.net>2017-10-05 17:02:25 +0200
commitcf84484a56bb03043569445f2df7afd4d7aa3fb0 (patch)
treee6d16f56b3f89da99aabcd58ab9afbe030acf3d8 /src/resolve/resolved-manager.c
parentresolved: add support for explicitly forgetting everything we learnt about DN... (diff)
downloadsystemd-cf84484a56bb03043569445f2df7afd4d7aa3fb0.tar.xz
systemd-cf84484a56bb03043569445f2df7afd4d7aa3fb0.zip
resolved: include DNS server feature level info in SIGUSR1 status dump
let's make the status dump more useful for tracking down server issues.
Diffstat (limited to '')
-rw-r--r--src/resolve/resolved-manager.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/resolve/resolved-manager.c b/src/resolve/resolved-manager.c
index 50d32d37e9..23c6731954 100644
--- a/src/resolve/resolved-manager.c
+++ b/src/resolve/resolved-manager.c
@@ -519,8 +519,11 @@ static int manager_sigusr1(sd_event_source *s, const struct signalfd_siginfo *si
_cleanup_free_ char *buffer = NULL;
_cleanup_fclose_ FILE *f = NULL;
Manager *m = userdata;
+ DnsServer *server;
size_t size = 0;
DnsScope *scope;
+ Iterator i;
+ Link *l;
assert(s);
assert(si);
@@ -533,6 +536,14 @@ static int manager_sigusr1(sd_event_source *s, const struct signalfd_siginfo *si
LIST_FOREACH(scopes, scope, m->dns_scopes)
dns_scope_dump(scope, f);
+ LIST_FOREACH(servers, server, m->dns_servers)
+ dns_server_dump(server, f);
+ LIST_FOREACH(servers, server, m->fallback_dns_servers)
+ dns_server_dump(server, f);
+ HASHMAP_FOREACH(l, m->links, i)
+ LIST_FOREACH(servers, server, l->dns_servers)
+ dns_server_dump(server, f);
+
if (fflush_and_check(f) < 0)
return log_oom();