b88f980a74
** WORK-AROUND ** The introduced non-blocking general behaviour for Curl_proxyCONNECT() didn't work for the data connection establishment unless it was very fast. The newly introduced function argument makes it operate in a more blocking manner, more like it used to work in the past. This blocking approach is only used when the FTP data connecting through HTTP proxy. Blocking like this is bad. A better fix would make it work more asynchronously. Bug: https://github.com/bagder/curl/issues/278
43 lines
1.6 KiB
C
43 lines
1.6 KiB
C
#ifndef HEADER_CURL_HTTP_PROXY_H
|
|
#define HEADER_CURL_HTTP_PROXY_H
|
|
/***************************************************************************
|
|
* _ _ ____ _
|
|
* Project ___| | | | _ \| |
|
|
* / __| | | | |_) | |
|
|
* | (__| |_| | _ <| |___
|
|
* \___|\___/|_| \_\_____|
|
|
*
|
|
* Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
*
|
|
* This software is licensed as described in the file COPYING, which
|
|
* you should have received as part of this distribution. The terms
|
|
* are also available at http://curl.haxx.se/docs/copyright.html.
|
|
*
|
|
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
* copies of the Software, and permit persons to whom the Software is
|
|
* furnished to do so, under the terms of the COPYING file.
|
|
*
|
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
* KIND, either express or implied.
|
|
*
|
|
***************************************************************************/
|
|
|
|
#if !defined(CURL_DISABLE_PROXY) && !defined(CURL_DISABLE_HTTP)
|
|
/* ftp can use this as well */
|
|
CURLcode Curl_proxyCONNECT(struct connectdata *conn,
|
|
int tunnelsocket,
|
|
const char *hostname, int remote_port,
|
|
bool blocking);
|
|
|
|
/* Default proxy timeout in milliseconds */
|
|
#define PROXY_TIMEOUT (3600*1000)
|
|
|
|
CURLcode Curl_proxy_connect(struct connectdata *conn);
|
|
|
|
#else
|
|
#define Curl_proxyCONNECT(x,y,z,w) CURLE_NOT_BUILT_IN
|
|
#define Curl_proxy_connect(x) CURLE_OK
|
|
#endif
|
|
|
|
#endif /* HEADER_CURL_HTTP_PROXY_H */
|