diff --git a/configure b/configure index 99a95ab..76c75f7 100755 --- a/configure +++ b/configure @@ -437,7 +437,7 @@ fi if [ $feat_ntp = "1" ]; then add_def FEAT_NTP - EXTRA_OBJECTS="$EXTRA_OBJECTS broadcast.o nameserv_async.o ntp_core.o ntp_io.o ntp_sources.o" + EXTRA_OBJECTS="$EXTRA_OBJECTS broadcast.o ntp_core.o ntp_io.o ntp_sources.o" else feat_asyncdns=0 fi @@ -541,6 +541,7 @@ if [ $feat_asyncdns = "1" ] && \ then add_def FEAT_ASYNCDNS add_def USE_PTHREAD_ASYNCDNS + EXTRA_OBJECTS="$EXTRA_OBJECTS nameserv_async.o" MYCFLAGS="$MYCFLAGS -pthread" fi diff --git a/nameserv_async.c b/nameserv_async.c index 3ea187f..82b2f7b 100644 --- a/nameserv_async.c +++ b/nameserv_async.c @@ -34,8 +34,6 @@ #include "sched.h" #include "util.h" -#ifdef FEAT_ASYNCDNS - #ifdef USE_PTHREAD_ASYNCDNS #include @@ -124,21 +122,3 @@ DNS_Name2IPAddressAsync(const char *name, DNS_NameResolveHandler handler, void * #else #error #endif - -#else - -/* This is a blocking implementation used when nothing else is available */ - -void -DNS_Name2IPAddressAsync(const char *name, DNS_NameResolveHandler handler, void *anything) -{ - IPAddr addr; - DNS_Status status; - - status = DNS_Name2IPAddress(name, &addr); - (handler)(status, &addr, anything); -} - -/* ================================================== */ - -#endif diff --git a/stubs.c b/stubs.c index e1ae485..a7f9604 100644 --- a/stubs.c +++ b/stubs.c @@ -34,11 +34,28 @@ #include "logging.h" #include "manual.h" #include "nameserv.h" +#include "nameserv_async.h" #include "ntp_core.h" #include "ntp_io.h" #include "ntp_sources.h" #include "refclock.h" +#ifndef FEAT_ASYNCDNS + +/* This is a blocking implementation used when asynchronous resolving is not available */ + +void +DNS_Name2IPAddressAsync(const char *name, DNS_NameResolveHandler handler, void *anything) +{ + IPAddr addr; + DNS_Status status; + + status = DNS_Name2IPAddress(name, &addr); + (handler)(status, &addr, anything); +} + +#endif /* !FEAT_ASYNCDNS */ + #ifndef FEAT_CMDMON void