+AC_CHECK_LIB(resolv, inet_ntop)
+
+dnl AC_MSG_NOTICE([Looking in libraries: $LIBS])
+
+AC_CHECK_FUNCS(inet_ntop, , AC_LIBOBJ(lib/inet_ntop))
+AC_CHECK_FUNCS(inet_pton, , AC_LIBOBJ(lib/inet_pton))
+
+AC_CHECK_FUNCS(getaddrinfo, , AC_LIBOBJ(lib/getaddrinfo))
+AC_CHECK_FUNCS(getnameinfo, , AC_LIBOBJ(lib/getnameinfo))
+
+AC_CHECK_MEMBER([struct sockaddr.sa_len],
+ [ AC_DEFINE(HAVE_SOCKADDR_LEN) ],
+ [],
+ [
+#include <sys/types.h>
+#include <sys/socket.h>
+])
+
+AC_MSG_CHECKING(struct sockaddr_storage)
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/socket.h>],
+[struct sockaddr_storage x;],
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_SOCKADDR_STORAGE, 1,
+ [Define if you have strct sockaddr_storage.] ),
+ AC_MSG_RESULT(no))
+