summaryrefslogtreecommitdiff
path: root/src/network/networkd-manager.c
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2014-01-16 19:32:22 +0100
committerTom Gundersen <teg@jklm.no>2014-01-16 20:32:08 +0100
commit7ae4ef6d23bc884d0e0ee2ec9cf87ec99d0686bb (patch)
treee042cd409684df14801911af4ddfa239b6060cf8 /src/network/networkd-manager.c
parent1346b1f0388f4100bb3c2a2bb23bc881769c020c (diff)
sd-dhcp-client: refactor DNS support
Rather than keeping an array of pointers to addresses, just keep an array of addresses.
Diffstat (limited to 'src/network/networkd-manager.c')
-rw-r--r--src/network/networkd-manager.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c
index ca781e2bb4..3b542149c0 100644
--- a/src/network/networkd-manager.c
+++ b/src/network/networkd-manager.c
@@ -338,14 +338,15 @@ int manager_update_resolv_conf(Manager *m) {
HASHMAP_FOREACH(link, m->links, i) {
if (link->dhcp) {
- struct in_addr **nameservers;
+ struct in_addr *nameservers;
+ size_t nameservers_size;
- r = sd_dhcp_client_get_dns(link->dhcp, &nameservers);
+ r = sd_dhcp_client_get_dns(link->dhcp, &nameservers, &nameservers_size);
if (r >= 0) {
unsigned j;
- for (j = 0; nameservers[j]; j++)
- append_dns(f, nameservers[j], AF_INET, &count);
+ for (j = 0; j < nameservers_size; j++)
+ append_dns(f, &nameservers[j], AF_INET, &count);
}
}
}