From 5da8b1281b4a9bb9c1748cd72a73af3b97a1f9fb Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Sat, 17 Sep 2005 08:55:30 +0000 Subject: [PATCH] * net.cc (cygwin_inet_ntop): Change len argument to socklen_t to follow SUSv3. * include/arpa/inet.h (inet_ntop): Ditto. * include/cygwin/in.h: Include cygwin/socket.h to get socklen_t. --- winsup/cygwin/ChangeLog | 7 +++++++ winsup/cygwin/include/arpa/inet.h | 2 +- winsup/cygwin/include/cygwin/in.h | 1 + winsup/cygwin/net.cc | 4 ++-- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 36f1a196c..5055960c6 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2005-09-17 Corinna Vinschen + + * net.cc (cygwin_inet_ntop): Change len argument to socklen_t to + follow SUSv3. + * include/arpa/inet.h (inet_ntop): Ditto. + * include/cygwin/in.h: Include cygwin/socket.h to get socklen_t. + 2005-09-16 Christopher Faylor * environ.cc (build_env): Use "kilo"bytes not "mega"bytes. Return diff --git a/winsup/cygwin/include/arpa/inet.h b/winsup/cygwin/include/arpa/inet.h index f7db90021..d6b19fce7 100644 --- a/winsup/cygwin/include/arpa/inet.h +++ b/winsup/cygwin/include/arpa/inet.h @@ -27,7 +27,7 @@ in_addr_t inet_netof (struct in_addr); in_addr_t inet_network (const char *); char *inet_ntoa (struct in_addr); int inet_pton (int, const char *, void *); -const char *inet_ntop (int, const void *, char *, size_t); +const char *inet_ntop (int, const void *, char *, socklen_t); #endif #ifdef __cplusplus diff --git a/winsup/cygwin/include/cygwin/in.h b/winsup/cygwin/include/cygwin/in.h index 4227025f9..e2482c820 100644 --- a/winsup/cygwin/include/cygwin/in.h +++ b/winsup/cygwin/include/cygwin/in.h @@ -19,6 +19,7 @@ #define _CYGWIN_IN_H #include +#include /* Standard well-defined IP protocols. If you ever add one here, don't forget to define it below. */ diff --git a/winsup/cygwin/net.cc b/winsup/cygwin/net.cc index 3a9684932..7b2c2264f 100644 --- a/winsup/cygwin/net.cc +++ b/winsup/cygwin/net.cc @@ -2290,7 +2290,7 @@ cygwin_inet_pton (int family, const char *strptr, void *addrptr) /* See "UNIX Network Programming, Networing APIs: Sockets and XTI", W. Richard Stevens, Prentice Hall PTR, 1998. */ extern "C" const char * -cygwin_inet_ntop (int family, const void *addrptr, char *strptr, size_t len) +cygwin_inet_ntop (int family, const void *addrptr, char *strptr, socklen_t len) { const u_char *p = (const u_char *) addrptr; @@ -2302,7 +2302,7 @@ cygwin_inet_ntop (int family, const void *addrptr, char *strptr, size_t len) char temp[64]; /* Big enough for 4 ints ... */ __small_sprintf (temp, "%u.%u.%u.%u", p[0], p[1], p[2], p[3]); - if (strlen (temp) >= len) + if (strlen (temp) >= (size_t) len) { set_errno (ENOSPC); return NULL;