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