path: root/
diff options
authorCarsten Haitzler (Rasterman) <>2016-05-22 17:03:26 +0900
committerCarsten Haitzler (Rasterman) <>2016-05-24 09:20:49 +0900
commit1eba9d9de026d9ec28aa5b42457b144e437dbfe3 (patch)
treea081fc4b41fc3c79258425953fa4a5792924bc61 /
parent6e23780bb13fdc16a2034d01bf3fc06a2355fbee (diff)
ecore-con - simplify down to a single libc resolver
Summary: this removes the cares/ares based resolver and the compiled-in dns.c resolver, modified the getaddrinfo based resolver to use threads not forking (almost halving its size) and now makes that the only resolver we have. getaddrinfo handles ipv6 and ipv4 (according to docs). this simplifies code paths, drops code size of the efl tree by about 11k lines of code, makes it easier to test and more robust to future changes with ip resolving as it now just relies on libc. we won't have coverity complaints on dns.c imported code anymore to fix and don't have tokeep up with bugfixes/security from the upstream imported code. this means we use a single resolver on all platforms (windows, mac, linux) as opposed to before where cares was used for windows, and dns.c on linux/mac. oh and the forking original was broken since our move to eo too. so it couldnt even compile if enabled, letalone work. so fix bug with missing /etc/resolv.conf that dns.c couldn't cope with, fix testability, fix maintainability and reduce efl codebase size. this fixes T3668 @fix @improve Subscribers: cedric, seoz, jpeg Maniphest Tasks: T3668 Differential Revision:
Diffstat (limited to '')
1 files changed, 1 insertions, 19 deletions
diff --git a/ b/
index a3753201a7..cae4e39594 100644
--- a/
+++ b/
@@ -1732,6 +1732,7 @@ AC_CHECK_HEADERS([sys/socket.h])
1732 1732
1734arpa/inet.h \ 1734arpa/inet.h \
1735arpa/nameser.h \
1735langinfo.h \ 1736langinfo.h \
1736features.h \ 1737features.h \
1737netinet/in.h \ 1738netinet/in.h \
@@ -2878,17 +2879,12 @@ want_ecore_con_local_sockets="yes"
2878want_ecore_con_abstract_sockets="yes" 2879want_ecore_con_abstract_sockets="yes"
2879 2880
2880if test "${have_win32}" = "yes"; then 2881if test "${have_win32}" = "yes"; then
2881 want_cares="yes"
2882 want_ecore_con_abstract_sockets="no" 2882 want_ecore_con_abstract_sockets="no"
2883elif test "${have_darwin}" = "yes"; then 2883elif test "${have_darwin}" = "yes"; then
2884 want_cares="no"
2885 want_ecore_con_abstract_sockets="yes" 2884 want_ecore_con_abstract_sockets="yes"
2886elif test "${have_ps3}" = "yes"; then 2885elif test "${have_ps3}" = "yes"; then
2887 want_cares="no"
2888 want_ecore_con_local_sockets="no" 2886 want_ecore_con_local_sockets="no"
2889 want_ecore_con_abstract_sockets="no" 2887 want_ecore_con_abstract_sockets="no"
2891 want_cares="no"
2892fi 2888fi
2893 2889
@@ -2914,24 +2910,10 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [emile])
2914 2910
2915EFL_ADD_LIBS([ECORE_CON], [-lm]) 2911EFL_ADD_LIBS([ECORE_CON], [-lm])
2916 2912
2917EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_cares}],
2918 [CARES], [libcares >= 1.6.1])
2919AM_CONDITIONAL([HAVE_CARES], [test "x${have_cares}" = "xyes"])
2921if test "x$have_cares" = "xyes" ; then
2922 ecore_con_resolver="cares"
2923elif test "x$ac_cv_prog_cc_c99" != "xno" ; then
2924 ecore_con_resolver="dns.c"
2926 ecore_con_resolver="fork"
2929EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_systemd}], [SYSTEMD], [libsystemd]) 2913EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_systemd}], [SYSTEMD], [libsystemd])
2930 2914
2932EFL_ADD_FEATURE([ECORE_CON], [local-sockets], [${want_ecore_con_local_sockets}]) 2915EFL_ADD_FEATURE([ECORE_CON], [local-sockets], [${want_ecore_con_local_sockets}])
2933EFL_ADD_FEATURE([ECORE_CON], [abstract-sockets], [${want_ecore_con_abstract_sockets}]) 2916EFL_ADD_FEATURE([ECORE_CON], [abstract-sockets], [${want_ecore_con_abstract_sockets}])
2934EFL_ADD_FEATURE([ECORE_CON], [resolver], [${ecore_con_resolver}])
2935EFL_ADD_FEATURE([ECORE_CON], [systemd-daemon], [${want_systemd}]) 2917EFL_ADD_FEATURE([ECORE_CON], [systemd-daemon], [${want_systemd}])
2936 2918