mirror of
https://github.com/moparisthebest/curl
synced 2024-11-11 12:05:06 -05:00
parent
e38fe7abbf
commit
a4b2f7aafd
@ -3710,6 +3710,11 @@ if test "x$USE_NGHTTP2" = "x1"; then
|
||||
SUPPORT_FEATURES="$SUPPORT_FEATURES HTTP2"
|
||||
fi
|
||||
|
||||
if test "x$OPENSSL_ENABLED" = "x1" -o "x$GNUTLS_ENABLED" = "x1" \
|
||||
-o "x$NSS_ENABLED" = "x1"; then
|
||||
SUPPORT_FEATURES="$SUPPORT_FEATURES HTTPS-proxy"
|
||||
fi
|
||||
|
||||
AC_SUBST(SUPPORT_FEATURES)
|
||||
|
||||
dnl For supported protocols in pkg-config file
|
||||
|
@ -153,6 +153,9 @@ libcurl was built with support for Unix domain sockets.
|
||||
libcurl was built with support for Mozilla's Public Suffix List. This makes
|
||||
libcurl ignore cookies with a domain that's on the list.
|
||||
(Added in 7.47.0)
|
||||
.IP CURL_VERSION_HTTPS_PROXY
|
||||
libcurl was built with support for HTTPS-proxy.
|
||||
(Added in 7.52.0)
|
||||
.RE
|
||||
\fIssl_version\fP is an ASCII string for the OpenSSL version used. If libcurl
|
||||
has no SSL support, this is NULL.
|
||||
|
@ -810,6 +810,7 @@ CURL_VERSION_DEBUG 7.10.6
|
||||
CURL_VERSION_GSSAPI 7.38.0
|
||||
CURL_VERSION_GSSNEGOTIATE 7.10.6 7.38.0
|
||||
CURL_VERSION_HTTP2 7.33.0
|
||||
CURL_VERSION_HTTPS_PROXY 7.52.0
|
||||
CURL_VERSION_IDN 7.12.0
|
||||
CURL_VERSION_IPV6 7.10
|
||||
CURL_VERSION_KERBEROS4 7.10 7.33.0
|
||||
|
@ -640,7 +640,7 @@ typedef enum {
|
||||
CONNECT HTTP/1.1 */
|
||||
CURLPROXY_HTTP_1_0 = 1, /* added in 7.19.4, force to use CONNECT
|
||||
HTTP/1.0 */
|
||||
CURLPROXY_HTTPS = 2, /* added in TBD */
|
||||
CURLPROXY_HTTPS = 2, /* added in 7.52.0 */
|
||||
CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already
|
||||
in 7.10 */
|
||||
CURLPROXY_SOCKS5 = 5, /* added in 7.10 */
|
||||
@ -2446,6 +2446,7 @@ typedef struct {
|
||||
#define CURL_VERSION_UNIX_SOCKETS (1<<19) /* Unix domain sockets support */
|
||||
#define CURL_VERSION_PSL (1<<20) /* Mozilla's Public Suffix List, used
|
||||
for cookie domain verification */
|
||||
#define CURL_VERSION_HTTPS_PROXY (1<<21) /* HTTPS-proxy support built-in */
|
||||
|
||||
/*
|
||||
* NAME curl_version_info()
|
||||
|
@ -4924,6 +4924,14 @@ static CURLcode parse_proxy(struct Curl_easy *data,
|
||||
else
|
||||
proxyptr = proxy; /* No xxx:// head: It's a HTTP proxy */
|
||||
|
||||
#ifndef HTTPS_PROXY_SUPPORT
|
||||
if(proxytype == CURLPROXY_HTTPS) {
|
||||
failf(data, "Unsupported proxy \'%s\'"
|
||||
", libcurl is built without the HTTPS-proxy support.", proxy);
|
||||
return CURLE_NOT_BUILT_IN;
|
||||
}
|
||||
#endif
|
||||
|
||||
sockstype = proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
|
||||
proxytype == CURLPROXY_SOCKS5 ||
|
||||
proxytype == CURLPROXY_SOCKS4A ||
|
||||
|
@ -323,6 +323,9 @@ static curl_version_info_data version_info = {
|
||||
#endif
|
||||
#if defined(USE_LIBPSL)
|
||||
| CURL_VERSION_PSL
|
||||
#endif
|
||||
#if defined(HTTPS_PROXY_SUPPORT)
|
||||
| CURL_VERSION_HTTPS_PROXY
|
||||
#endif
|
||||
,
|
||||
NULL, /* ssl_version */
|
||||
|
@ -41,6 +41,9 @@ int Curl_gskit_shutdown(struct connectdata *conn, int sockindex);
|
||||
size_t Curl_gskit_version(char *buffer, size_t size);
|
||||
int Curl_gskit_check_cxn(struct connectdata *cxn);
|
||||
|
||||
/* Support HTTPS-proxy */
|
||||
/* TODO: add '#define HTTPS_PROXY_SUPPORT 1' and fix test #1014 (if need) */
|
||||
|
||||
/* Set the API backend definition to GSKit */
|
||||
#define CURL_SSL_BACKEND CURLSSLBACKEND_GSKIT
|
||||
|
||||
|
@ -57,6 +57,9 @@ void Curl_gtls_sha256sum(const unsigned char *tmp, /* input */
|
||||
|
||||
bool Curl_gtls_cert_status_request(void);
|
||||
|
||||
/* Support HTTPS-proxy */
|
||||
#define HTTPS_PROXY_SUPPORT 1
|
||||
|
||||
/* Set the API backend definition to GnuTLS */
|
||||
#define CURL_SSL_BACKEND CURLSSLBACKEND_GNUTLS
|
||||
|
||||
|
@ -65,6 +65,9 @@ bool Curl_nss_cert_status_request(void);
|
||||
|
||||
bool Curl_nss_false_start(void);
|
||||
|
||||
/* Support HTTPS-proxy */
|
||||
#define HTTPS_PROXY_SUPPORT 1
|
||||
|
||||
/* Set the API backend definition to NSS */
|
||||
#define CURL_SSL_BACKEND CURLSSLBACKEND_NSS
|
||||
|
||||
|
@ -79,6 +79,9 @@ void Curl_ossl_sha256sum(const unsigned char *tmp, /* input */
|
||||
|
||||
bool Curl_ossl_cert_status_request(void);
|
||||
|
||||
/* Support HTTPS-proxy */
|
||||
#define HTTPS_PROXY_SUPPORT 1
|
||||
|
||||
/* Set the API backend definition to OpenSSL */
|
||||
#define CURL_SSL_BACKEND CURLSSLBACKEND_OPENSSL
|
||||
|
||||
|
@ -187,8 +187,7 @@ ssl_connect_init_proxy(struct connectdata *conn, int sockindex)
|
||||
DEBUGASSERT(conn->bits.proxy_ssl_connected[sockindex]);
|
||||
if(ssl_connection_complete == conn->ssl[sockindex].state &&
|
||||
!conn->proxy_ssl[sockindex].use) {
|
||||
#if defined(USE_OPENSSL) || defined(USE_GNUTLS) || defined(USE_NSS) || \
|
||||
defined(USE_GSKIT)
|
||||
#if defined(HTTPS_PROXY_SUPPORT)
|
||||
conn->proxy_ssl[sockindex] = conn->ssl[sockindex];
|
||||
memset(&conn->ssl[sockindex], 0, sizeof(conn->ssl[sockindex]));
|
||||
#else
|
||||
|
@ -317,6 +317,7 @@ static const struct feat feats[] = {
|
||||
{"TLS-SRP", CURL_VERSION_TLSAUTH_SRP},
|
||||
{"HTTP2", CURL_VERSION_HTTP2},
|
||||
{"UnixSockets", CURL_VERSION_UNIX_SOCKETS},
|
||||
{"HTTPS-proxy", CURL_VERSION_HTTPS_PROXY}
|
||||
};
|
||||
|
||||
void tool_help(void)
|
||||
|
Loading…
Reference in New Issue
Block a user