From ab5264b20f75a4dcc8baf2e672394d3a84c60870 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 27 Jan 2015 17:09:48 +0100 Subject: Fix WSAEADDRINUSE EADDRINUSE mismatch. * src/w32-sock-nonce.inc.h (EADDRINUSE): Avoid redefining. * src/assuan-socket.c (_assuan_sock_bind): Set error to EADDRINUSE. -- With the latest mingw-w64 EADDRINUSE is defined but to a different value than WSAEADDRINUSE. We need to use EADDRINUSE becuase that is what applications expect. Signed-off-by: Werner Koch --- src/assuan-socket.c | 2 +- src/w32-sock-nonce.inc.h | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/assuan-socket.c b/src/assuan-socket.c index c392e93..ed6a488 100644 --- a/src/assuan-socket.c +++ b/src/assuan-socket.c @@ -493,7 +493,7 @@ _assuan_sock_bind (assuan_context_t ctx, assuan_fd_t sockfd, if (filehd == INVALID_HANDLE_VALUE) { if (GetLastError () == ERROR_FILE_EXISTS) - gpg_err_set_errno (WSAEADDRINUSE); + gpg_err_set_errno (EADDRINUSE); return -1; } diff --git a/src/w32-sock-nonce.inc.h b/src/w32-sock-nonce.inc.h index 260c872..4b099ff 100644 --- a/src/w32-sock-nonce.inc.h +++ b/src/w32-sock-nonce.inc.h @@ -37,13 +37,15 @@ typedef struct assuan_sock_nonce_s assuan_sock_nonce_t; # ifndef AF_LOCAL # define AF_LOCAL AF_UNIX # endif -# define EADDRINUSE WSAEADDRINUSE +# ifndef EADDRINUSE +# define EADDRINUSE WSAEADDRINUSE +# endif struct sockaddr_un { short sun_family; unsigned short sun_port; struct in_addr sun_addr; - char sun_path[108-2-4]; + char sun_path[108-2-4]; }; #endif -- cgit v1.2.3