OSDN Git Service

* net.cc (gai_errmap): Add EAI_OVERFLOW entry. Fix formatting.
authorcorinna <corinna>
Tue, 23 Jan 2007 17:05:26 +0000 (17:05 +0000)
committercorinna <corinna>
Tue, 23 Jan 2007 17:05:26 +0000 (17:05 +0000)
(cygwin_gai_strerror): Drop using EAI_MAX.
(w32_to_gai_err): Ditto.
* include/netdb.h: Define EAI_OVERFLOW. Remove EAI_MAX.

winsup/cygwin/ChangeLog
winsup/cygwin/include/netdb.h
winsup/cygwin/net.cc

index d590993..6bc74c4 100644 (file)
@@ -1,5 +1,12 @@
 2007-01-23  Corinna Vinschen  <corinna@vinschen.de>
 
+       * net.cc (gai_errmap): Add EAI_OVERFLOW entry.  Fix formatting.
+       (cygwin_gai_strerror): Drop using EAI_MAX.
+       (w32_to_gai_err): Ditto.
+       * include/netdb.h: Define EAI_OVERFLOW. Remove EAI_MAX.
+
+2007-01-23  Corinna Vinschen  <corinna@vinschen.de>
+
        * include/netdb.h: Add AI_xxx flags available since Vista.
 
 2007-01-23  Corinna Vinschen  <corinna@vinschen.de>
index c9b46d3..59c3286 100644 (file)
@@ -174,8 +174,7 @@ extern __declspec(dllimport) int h_errno;
 #define EAI_SYSTEM      11
 #define EAI_BADHINTS    12
 #define EAI_PROTOCOL    13
-
-#define EAI_MAX                14
+#define EAI_OVERFLOW    14
 
 #ifndef __INSIDE_CYGWIN_NET__
 void           endhostent (void);
index 9e5e135..338b504 100644 (file)
@@ -3751,26 +3751,27 @@ struct gai_errmap_t
 
 static gai_errmap_t gai_errmap[] =
 {
-  {0,                  "Success"},
-  {0,                  "Address family for hostname not supported"},
-  {WSATRY_AGAIN,       "Temporary failure in name resolution"},
-  {WSAEINVAL,          "Invalid value for ai_flags"},
-  {WSANO_RECOVERY,     "Non-recoverable failure in name resolution"},
-  {WSAEAFNOSUPPORT,    "ai_family not supported"},
+  {0,                    "Success"},
+  {0,                    "Address family for hostname not supported"},
+  {WSATRY_AGAIN,         "Temporary failure in name resolution"},
+  {WSAEINVAL,            "Invalid value for ai_flags"},
+  {WSANO_RECOVERY,       "Non-recoverable failure in name resolution"},
+  {WSAEAFNOSUPPORT,      "ai_family not supported"},
   {WSA_NOT_ENOUGH_MEMORY, "Memory allocation failure"},
-  {WSANO_DATA,         "No address associated with hostname"},
-  {WSAHOST_NOT_FOUND,  "hostname nor servname provided, or not known"},
-  {WSATYPE_NOT_FOUND,  "servname not supported for ai_socktype"},
-  {WSAESOCKTNOSUPPORT, "ai_socktype not supported"},
-  {0,                  "System error returned in errno"},
-  {0,                  "Invalid value for hints"},
-  {0,                  "Resolved protocol is unknown"}
+  {WSANO_DATA,           "No address associated with hostname"},
+  {WSAHOST_NOT_FOUND,    "hostname nor servname provided, or not known"},
+  {WSATYPE_NOT_FOUND,    "servname not supported for ai_socktype"},
+  {WSAESOCKTNOSUPPORT,   "ai_socktype not supported"},
+  {0,                    "System error returned in errno"},
+  {0,                    "Invalid value for hints"},
+  {0,                    "Resolved protocol is unknown"},
+  {WSAEFAULT,            "An argument buffer overflowed"}
 };
 
 extern "C" const char *
 cygwin_gai_strerror (int err)
 {
-  if (err >= 0 && err < EAI_MAX)
+  if (err >= 0 && err < (int) (sizeof gai_errmap / sizeof *gai_errmap))
     return gai_errmap[err].errtxt;
   return "Unknown error";
 }
@@ -3779,7 +3780,7 @@ static int
 w32_to_gai_err (int w32_err)
 {
   if (w32_err >= WSABASEERR)
-    for (int i = 0; i < EAI_MAX; ++i)
+    for (unsigned i = 0; i < sizeof gai_errmap / sizeof *gai_errmap; ++i)
       if (gai_errmap[i].w32_errval == w32_err)
        return i;
   return w32_err;