diff options
-rw-r--r-- | ext/standard/config.m4 | 1 | ||||
-rw-r--r-- | ext/standard/php_dns.h | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/ext/standard/config.m4 b/ext/standard/config.m4 index c73dace754..af85604bea 100644 --- a/ext/standard/config.m4 +++ b/ext/standard/config.m4 @@ -340,6 +340,7 @@ dnl Detect library functions needed by php dns_xxx functions dnl ext/standard/php_dns.h will collect these in a single define: HAVE_FULL_DNS_FUNCS dnl PHP_CHECK_FUNC(res_nsearch, resolv, bind, socket) +PHP_CHECK_FUNC(res_ndestroy, resolv, bind, socket) PHP_CHECK_FUNC(dns_search, resolv, bind, socket) PHP_CHECK_FUNC(dn_expand, resolv, bind, socket) PHP_CHECK_FUNC(dn_skipname, resolv, bind, socket) diff --git a/ext/standard/php_dns.h b/ext/standard/php_dns.h index 8e6931d45a..6f80d5d69f 100644 --- a/ext/standard/php_dns.h +++ b/ext/standard/php_dns.h @@ -32,9 +32,15 @@ #elif defined(HAVE_RES_NSEARCH) #define php_dns_search(res, dname, class, type, answer, anslen) \ res_nsearch(res, dname, class, type, answer, anslen); +#if HAVE_RES_NDESTROY +#define php_dns_free_handle(res) \ + res_ndestroy(res); \ + php_dns_free_res(res) +#else #define php_dns_free_handle(res) \ res_nclose(res); \ php_dns_free_res(res) +#endif #elif defined(HAVE_RES_SEARCH) #define php_dns_search(res, dname, class, type, answer, anslen) \ |