Commit | Line | Data |
---|---|---|
b5cb2a60 FF |
1 | diff -u -r ../libevent-2.0.22-stable/evdns.c ./evdns.c |
2 | --- ../libevent-2.0.22-stable/evdns.c 2014-03-26 11:09:18.000000000 -0400 | |
3 | +++ ./evdns.c 2016-08-26 17:17:43.939853284 -0400 | |
4 | @@ -49,6 +49,9 @@ | |
5 | */ | |
6 | ||
7 | #include <sys/types.h> | |
8 | +#ifdef __ANDROID__ | |
9 | +# include <sys/system_properties.h> | |
10 | +#endif | |
11 | #include "event2/event-config.h" | |
12 | ||
13 | #ifndef _FORTIFY_SOURCE | |
14 | @@ -3892,6 +3895,21 @@ | |
15 | int r; | |
16 | #ifdef WIN32 | |
17 | r = evdns_base_config_windows_nameservers(base); | |
18 | +#elif defined(__ANDROID__) | |
19 | + /** From: http://www.programering.com/a/MjMwcjMwATA.html */ | |
20 | + int add_servers = 0; | |
21 | + char buf[PROP_VALUE_MAX]; | |
22 | + r = __system_property_get("net.dns1", buf); | |
23 | + if (r >= 7) { | |
24 | + add_servers++; | |
25 | + evdns_base_nameserver_ip_add(base, buf); | |
26 | + } | |
27 | + r = __system_property_get("net.dns2", buf); | |
28 | + if (r >= 7) { | |
29 | + add_servers++; | |
30 | + evdns_base_nameserver_ip_add(base, buf); | |
31 | + } | |
32 | + if (add_servers == 0) evdns_base_nameserver_ip_add(base, "8.8.8.8"); | |
33 | #else | |
34 | r = evdns_base_resolv_conf_parse(base, DNS_OPTIONS_ALL, "/etc/resolv.conf"); | |
35 | #endif |