From 977175d4fd42090a9f462f991d8b3dabacbbb752 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 14 Feb 2003 08:02:55 +0000 Subject: Martin C. Martin's fix for multi-interface connects to non-listening ports. --- lib/connect.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/connect.c b/lib/connect.c index da0a5b951..b34d5776a 100644 --- a/lib/connect.c +++ b/lib/connect.c @@ -81,6 +81,10 @@ #include "memdebug.h" #endif +/* The AIX 3.2.5 system headers define a function called geterrno() which + we won't need but that interferes with our function */ +#undef geterrno + static int geterrno(void) { @@ -409,6 +413,8 @@ CURLcode Curl_is_connected(struct connectdata *conn, if(err) return CURLE_COULDNT_CONNECT; } + else if(2 == rc) + return CURLE_COULDNT_CONNECT; /* * If the connection phase is "done" here, we should attempt to connect @@ -558,6 +564,9 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */ failf(data, "socket error: %d", err); /* we are _not_ connected, it was a false alert, continue please */ } + else if(2 == rc) + /* waitconnect() returned error */ + ; else if(data->state.used_interface == Curl_if_multi) { /* When running the multi interface, we bail out here */ rc = 0; -- cgit v1.2.3