Mingw32 fixes for getaddrinfo.
[gnulib.git] / lib / getaddrinfo.h
index 65f52cd..7722c14 100644 (file)
@@ -1,5 +1,5 @@
 /* Get address information.
-   Copyright (C) 1996-2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1996-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
    Contributed by Simon Josefsson <simon@josefsson.org>.
 
    This program is free software; you can redistribute it and/or modify
@@ -26,7 +26,9 @@
 # include <sys/types.h>
 /* Get all getaddrinfo related declarations, if available.  */
 # include <sys/socket.h>
+#ifdef HAVE_NETDB_H
 # include <netdb.h>
+#endif
 
 # ifndef HAVE_STRUCT_ADDRINFO
 
@@ -65,10 +67,18 @@ struct addrinfo
 #  define EAI_FAMILY     -6    /* `ai_family' not supported.  */
 #  define EAI_SOCKTYPE   -7    /* `ai_socktype' not supported.  */
 #  define EAI_SERVICE    -8    /* SERVICE not supported for `ai_socktype'.  */
-#  define EAI_ADDRFAMILY  -9   /* Address family for NAME not supported.  */
 #  define EAI_MEMORY     -10   /* Memory allocation failure.  */
-#  define EAI_SYSTEM     -11   /* System error returned in `errno'.  */
 #  define EAI_OVERFLOW   -12   /* Argument buffer overflow.  */
+#endif
+# ifndef EAI_ADDRFAMILY
+/* Not defined on mingw32.  XXX May be incorrect? Perhaps it is never
+   returned? */
+#  define EAI_ADDRFAMILY  -9   /* Address family for NAME not supported.  */
+# endif
+# ifndef EAI_SYSTEM
+/* Not defined on mingw32.  XXX May be incorrect? Perhaps it is never
+   returned? */
+#  define EAI_SYSTEM     -11   /* System error returned in `errno'.  */
 # endif
 
 # ifdef __USE_GNU