Enable sockets.c to compile with GCC 4.4 headers
The GCC 4.4 version of netdb.h moves EAI_NODATA behind a __USE_GNU
define, because that feature is not part of the POSIX standard for
that header.
In order to compile sockets.c without error under GCC 4.4 we
explicitly define __USE_GNU and explicitly include netdb.h.
diff --git a/sockets.c b/sockets.c
index e9be66f..839b94f 100644
--- a/sockets.c
+++ b/sockets.c
@@ -31,7 +31,14 @@
# include <sys/socket.h>
# include <netinet/in.h>
# include <netinet/tcp.h>
-# include <netdb.h>
+# ifdef __linux__ /* Recent versions of glibc only define EAI_NODATA, which is an
+ extension to the POSIX standard, if __USE_GNU is defined. */
+# define __USE_GNU
+# include <netdb.h>
+# undef __USE_GNU
+# else /* !__linux__ */
+# include <netdb.h>
+# endif /* !__linux__ */
# if HAVE_UNIX_SOCKETS
# include <sys/un.h>
# ifndef UNIX_PATH_MAX