diff options
| -rw-r--r-- | ext/sockets/config.m4 | 1 | ||||
| -rw-r--r-- | ext/sockets/sockets.c | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/ext/sockets/config.m4 b/ext/sockets/config.m4 index aa3a4606b3..af99809231 100644 --- a/ext/sockets/config.m4 +++ b/ext/sockets/config.m4 @@ -6,6 +6,7 @@ PHP_ARG_ENABLE(sockets, whether to enable sockets support, if test "$PHP_SOCKETS" != "no"; then + AC_CHECK_FUNCS(hstrerror) AC_CHECK_HEADERS(netdb.h netinet/tcp.h sys/un.h errno.h) AC_DEFINE(HAVE_SOCKETS, 1, [ ]) diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index ce86c6452f..bc1f04914f 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -962,7 +962,14 @@ PHP_FUNCTION(socket_strerror) #ifndef PHP_WIN32 if (Z_LVAL_PP(arg1) < -10000) { Z_LVAL_PP(arg1) += 10000; - buf = hstrerror(-(Z_LVAL_PP(arg1))); +#ifdef HAVE_HSTRERROR + buf = hstrerror(-(Z_LVAL_PP(arg1))); +#else + { + static char buf[100]; + sprintf (buf, "Host lookup error %d", -(Z_LVAL_PP(arg1))); + } +#endif } else { buf = strerror(-(Z_LVAL_PP(arg1))); } |
