diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2010-12-21 16:57:14 +0100 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2010-12-21 16:57:14 +0100 |
commit | 512c962495fb4d0ecefec5589ff97a6464067c3b (patch) | |
tree | 972dd97f7703e7ac87ed9209dc6cf5e5e79860b5 /src/rtnl.c | |
parent | dffdeabeee46318da8d1e976add0bc7dcc8f54d7 (diff) | |
download | connman-512c962495fb4d0ecefec5589ff97a6464067c3b.tar.gz connman-512c962495fb4d0ecefec5589ff97a6464067c3b.tar.bz2 connman-512c962495fb4d0ecefec5589ff97a6464067c3b.zip |
rtnl: Register all RDNSS search domains
Diffstat (limited to 'src/rtnl.c')
-rw-r--r-- | src/rtnl.c | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -1140,13 +1140,23 @@ static void rtnl_newnduseropt(struct nlmsghdr *hdr) } if (nr_servers) { - int i; + int i, j; char buf[40]; for (i = 0; i < nr_servers; i++) { - if (inet_ntop(AF_INET6, servers + i, buf, sizeof(buf))) + if (!inet_ntop(AF_INET6, servers + i, buf, sizeof(buf))) + continue; + + if (domains == NULL || domains[0] == NULL) { + connman_resolver_append_lifetime(interface, + NULL, buf, lifetime); + continue; + } + + for (j = 0; domains[j]; j++) connman_resolver_append_lifetime(interface, - domains?domains[0]:NULL, buf, lifetime); + domains[j], + buf, lifetime); } } g_free(domains); |