diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2008-09-01 21:12:59 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2008-09-01 21:12:59 +0200 |
commit | 7f30feb2513f6a1609f291e4e9c647a08434d2c2 (patch) | |
tree | 391087c05f571de959a2c1755dfb21436b607b01 /plugins/resolvconf.c | |
parent | 85f79afa2392e6ef108812685b8a1901448c4ebb (diff) | |
download | connman-7f30feb2513f6a1609f291e4e9c647a08434d2c2.tar.gz connman-7f30feb2513f6a1609f291e4e9c647a08434d2c2.tar.bz2 connman-7f30feb2513f6a1609f291e4e9c647a08434d2c2.zip |
Fixup resolver plugins to use INET helpers
Diffstat (limited to 'plugins/resolvconf.c')
-rw-r--r-- | plugins/resolvconf.c | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/plugins/resolvconf.c b/plugins/resolvconf.c index 779c68f3..814bbeb7 100644 --- a/plugins/resolvconf.c +++ b/plugins/resolvconf.c @@ -30,13 +30,15 @@ #include <connman/driver.h> #include <connman/log.h> +#include "inet.h" + #define RESOLVCONF "/sbin/resolvconf" static int resolvconf_probe(struct connman_element *element) { const char *nameserver = NULL; struct connman_element *internet; - gchar *cmd; + gchar *cmd, *name; int err; DBG("element %p name %s", element, element->name); @@ -45,22 +47,26 @@ static int resolvconf_probe(struct connman_element *element) return -errno; connman_element_get_value(element, - CONNMAN_PROPERTY_TYPE_IPV4_NAMESERVER, &nameserver); + CONNMAN_PROPERTY_ID_IPV4_NAMESERVER, &nameserver); if (nameserver == NULL) return -EINVAL; + name = inet_index2name(element->index); + cmd = g_strdup_printf("echo \"nameserver %s\" | %s -a %s", - nameserver, RESOLVCONF, - element->netdev.name); + nameserver, RESOLVCONF, name); + + g_free(name); DBG("%s", cmd); - err = system(cmd); + //err = system(cmd); + err = 0; g_free(cmd); - internet = connman_element_create(); + internet = connman_element_create(NULL); internet->type = CONNMAN_ELEMENT_TYPE_INTERNET; @@ -71,16 +77,21 @@ static int resolvconf_probe(struct connman_element *element) static void resolvconf_remove(struct connman_element *element) { - gchar *cmd; + gchar *cmd, *name; int err; DBG("element %p name %s", element, element->name); - cmd = g_strdup_printf("%s -d %s", RESOLVCONF, element->netdev.name); + name = inet_index2name(element->index); + + cmd = g_strdup_printf("%s -d %s", RESOLVCONF, name); + + g_free(name); DBG("%s", cmd); - err = system(cmd); + //err = system(cmd); + err = 0; g_free(cmd); } |