aboutsummaryrefslogtreecommitdiff
path: root/lib/connect.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2011-04-28 09:39:33 +0200
committerDaniel Stenberg <daniel@haxx.se>2011-04-28 10:06:49 +0200
commit4a42e5cdaa344755c6bf5317908849619f61798b (patch)
treee7e1e5a713be3510a778a3c7217cd63552044158 /lib/connect.c
parent53ef3493bfd4ddaf71adea051ea530b87abfd5a9 (diff)
multi-socks: fix connect to proxy
When connecting to a socks or similar proxy we do the proxy handshake at once when we know the TCP connect is completed and we only consider the "connection" complete after the proxy handshake. This fixes test 564 which is now no longer considered disabled. Reported by: Dmitri Shubin Bug: http://curl.haxx.se/mail/lib-2011-04/0127.html
Diffstat (limited to 'lib/connect.c')
-rw-r--r--lib/connect.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/connect.c b/lib/connect.c
index 2cd8cd39c..732fc6721 100644
--- a/lib/connect.c
+++ b/lib/connect.c
@@ -698,7 +698,13 @@ CURLcode Curl_is_connected(struct connectdata *conn,
if(WAITCONN_CONNECTED == rc) {
if(verifyconnect(sockfd, &error)) {
- /* we are connected, awesome! */
+ /* we are connected with TCP, awesome! */
+
+ /* see if we need to do any proxy magic first once we connected */
+ code = Curl_connected_proxy(conn);
+ if(code)
+ return code;
+
conn->bits.tcpconnect = TRUE;
*connected = TRUE;
Curl_pgrsTime(data, TIMER_CONNECT); /* connect done */