Hi. I've made some mistakes on my previous message. I should have been more patient. After further investigation, I realized that ETIMEDOUT is defined in several header files:
#define ETIMEDOUT WSAETIMEDOUT - WinSock2.h #define ETIMEDOUT 138 - winsock.h #define ETIMEDOUT WSAETIMEDOUT - winerror.h WSAETIMEDOUT has the right value: #define WSAETIMEDOUT (WSABASEERR+60) - WinSock2.h #define WSAETIMEDOUT (WSABASEERR+60) - winsock.h #define WSAETIMEDOUT 10060L - winerror.h So it seems like socket.c is getting its value from winsock.h. Here's a better patch: Signed-off-by: Leonardo Basilio <leobasi...@gmail.com> --- src/openvpn/socket.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/openvpn/socket.c b/src/openvpn/socket.c index 396fa54..37fa129 100644 --- a/src/openvpn/socket.c +++ b/src/openvpn/socket.c @@ -1177,7 +1177,11 @@ openvpn_connect (socket_descriptor_t sd, { if (--connect_timeout < 0) { +#ifdef WIN32 + status = WSAETIMEDOUT; +#else status = ETIMEDOUT; +#endif break; } openvpn_sleep (1); -- 2.7.0.windows.1 2016-02-07 16:43 GMT-02:00 Leonardo <leobasi...@gmail.com>: > Hi. First of all, this is my first contribution ever to an open source > project. I hope I'm doing this right. > > After installing OpenVPN 2.3.10 on my Windows computer and trying to > connect to a VPN server, I was getting this error message: > > TCP: connect to [AF_INET]x.x.x.x:80 failed, will try again in 5 > seconds: The system tried to join a drive to a directory on a joined > drive. > > Hours of googling and no real solution later, I've decided to check > the source code and see if I could find the real cause of this error. > It was a timeout error. Indeed there's a mismapping going on, as > suggested here: > > http://sourceforge.net/p/openvpn/mailman/message/33101265/ > > I have both MinGW-w64 and Visual Studio 2015, and in both headers > WSAETIMEDOUT is defined as ETIMEDOUT which is defined as 138, despite > the online documentation saying that WSAETIMEDOUT should be 10060. > > https://msdn.microsoft.com/en-us/library/windows/desktop/ms740668%28v=vs.85%29.aspx > > I couldn't find any explanation about this, but based on other > threads, this issue seems to be around for quite some time now. After > the patch below, the right error message comes out: > > TCP: connect to [AF_INET]x.x.x.x:80 failed: Connection timed out > (WSAETIMEDOUT) > > I understand that's not the most elegant solution, but given the above > said, I don't see an alternative. There are many forum threads out > there just because of this misleading error message. > > > Signed-off-by: Leonardo Basilio <leobasi...@gmail.com> > --- > src/openvpn/socket.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/src/openvpn/socket.c b/src/openvpn/socket.c > index 396fa54..c01ef3d 100644 > --- a/src/openvpn/socket.c > +++ b/src/openvpn/socket.c > @@ -1177,7 +1177,11 @@ openvpn_connect (socket_descriptor_t sd, > { > if (--connect_timeout < 0) > { > +#ifdef WIN32 > + status = 10060; > +#else > status = ETIMEDOUT; > +#endif > break; > } > openvpn_sleep (1); > -- > 2.7.0.windows.1