diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/inet_ntop.c | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/lib/inet_ntop.c b/lib/inet_ntop.c index 9381963f5..f41a3f268 100644 --- a/lib/inet_ntop.c +++ b/lib/inet_ntop.c @@ -57,9 +57,6 @@  #ifdef USE_WINSOCK  #define EAFNOSUPPORT    WSAEAFNOSUPPORT -#define SET_ERRNO(e)    WSASetLastError(errno = (e)) -#else -#define SET_ERRNO(e)    errno = e  #endif  /* @@ -204,8 +201,14 @@ static char *inet_ntop6 (const unsigned char *src, char *dst, size_t size)  /*   * Convert a network format address to presentation format.   * - * Returns pointer to presentation format address (`buf'), - * Returns NULL on error (see errno). + * Returns pointer to presentation format address (`buf'). + * Returns NULL on error and errno set with the specific + * error, EAFNOSUPPORT or ENOSPC. + * + * On Windows we store the error in the thread errno, not + * in the winsock error code. This is to avoid loosing the + * actual last winsock error. So use macro ERRNO to fetch the + * errno this funtion sets when returning NULL, not SOCKERRNO.   */  char *Curl_inet_ntop(int af, const void *src, char *buf, size_t size)  { | 
