summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-03-25 12:00:30 +0100
committerMarcel Holtmann <marcel@holtmann.org>2009-03-25 12:00:30 +0100
commitb5a6e00c32bf531e9b35b826b2474654d923a27f (patch)
treebb60c4850f8de98ff8a1e0dcc9f9ccef40641c2b
parent7781553db8551db775b28f20c78a624203e2812b (diff)
downloadconnman-b5a6e00c32bf531e9b35b826b2474654d923a27f.tar.gz
connman-b5a6e00c32bf531e9b35b826b2474654d923a27f.tar.bz2
connman-b5a6e00c32bf531e9b35b826b2474654d923a27f.zip
Make sure entry for 127.0.0.1 is written to /etc/resolv.conf
-rw-r--r--plugins/dnsproxy.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/plugins/dnsproxy.c b/plugins/dnsproxy.c
index 84ad596b..fb4411d2 100644
--- a/plugins/dnsproxy.c
+++ b/plugins/dnsproxy.c
@@ -209,6 +209,9 @@ static int dnsproxy_append(const char *interface, const char *domain,
DBG("interface %s server %s", interface, server);
+ if (g_str_equal(server, "127.0.0.1") == TRUE)
+ return -ENODEV;
+
data = create_server(interface, server);
if (data == NULL)
return -EIO;
@@ -225,6 +228,9 @@ static int dnsproxy_remove(const char *interface, const char *domain,
DBG("interface %s server %s", interface, server);
+ if (g_str_equal(server, "127.0.0.1") == TRUE)
+ return -ENODEV;
+
data = find_server(interface, server);
if (data == NULL)
return 0;
@@ -428,6 +434,8 @@ static int create_listener(void)
listener_watch = g_io_add_watch(listener_channel, G_IO_IN,
listener_event, NULL);
+ connman_resolver_append("lo", NULL, "127.0.0.1");
+
return 0;
}
@@ -437,6 +445,8 @@ static void destroy_listener(void)
DBG("");
+ connman_resolver_remove_all("lo");
+
if (listener_watch > 0)
g_source_remove(listener_watch);