From 59414ec20c91e11eec2d9f1704651ee7aa7bb138 Mon Sep 17 00:00:00 2001 From: Richard Aas Date: Mon, 23 Dec 2013 09:16:27 +0000 Subject: [PATCH] dns: get dns server on android --- src/dns/ns.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/dns/ns.c b/src/dns/ns.c index 03683b5..4f921bc 100644 --- a/src/dns/ns.c +++ b/src/dns/ns.c @@ -11,6 +11,9 @@ #include #include #include "dns.h" +#ifdef __ANDROID__ +#include +#endif #define DEBUG_MODULE "ns" @@ -81,6 +84,25 @@ static int parse_resolv_conf(char *domain, size_t dsize, } +#ifdef __ANDROID__ +static int get_android_dns(struct sa *nsv, uint32_t *n) +{ + char value[PROP_VALUE_MAX] = {0}; + + if (__system_property_get("net.dns1", value)) { + int err = sa_set_str(&nsv[0], value, DNS_PORT); + if (err) + return err; + + *n = 1; + return 0; + } + + return ENOENT; +} +#endif + + /** * Get the DNS domain and nameservers * @@ -121,5 +143,9 @@ int dns_srv_get(char *domain, size_t dsize, struct sa *srvv, uint32_t *n) err = get_symbiandns(srvv, n); #endif +#ifdef __ANDROID__ + err = get_android_dns(srvv, n); +#endif + return err; }