Commit | Line | Data |
---|---|---|
b18f952d FF |
1 | diff -u -r ../libevent-release-2.1.8-stable/evdns.c ./evdns.c |
2 | --- ../libevent-release-2.1.8-stable/evdns.c 2017-01-26 00:37:15.000000000 +0100 | |
3 | +++ ./evdns.c 2017-01-28 00:02:43.332229763 +0100 | |
4 | @@ -52,6 +52,9 @@ | |
5 | #include "evconfig-private.h" | |
b5cb2a60 FF |
6 | |
7 | #include <sys/types.h> | |
8 | +#ifdef __ANDROID__ | |
9 | +# include <sys/system_properties.h> | |
10 | +#endif | |
b5cb2a60 FF |
11 | |
12 | #ifndef _FORTIFY_SOURCE | |
b18f952d FF |
13 | #define _FORTIFY_SOURCE 3 |
14 | @@ -3959,6 +3962,21 @@ | |
b5cb2a60 | 15 | int r; |
b18f952d | 16 | #ifdef _WIN32 |
b5cb2a60 FF |
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 |