summaryrefslogtreecommitdiffstats
path: root/net/http
diff options
context:
space:
mode:
authorrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-26 21:40:14 +0000
committerrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-26 21:40:14 +0000
commit779ebd5e8e052544e1c2950cdc339640d295875d (patch)
tree67497e762c697c49737a57e9a3169cb61df583cf /net/http
parent3e21c5f17af3e104a40356321843f1cf8aa1428d (diff)
downloadchromium_src-779ebd5e8e052544e1c2950cdc339640d295875d.zip
chromium_src-779ebd5e8e052544e1c2950cdc339640d295875d.tar.gz
chromium_src-779ebd5e8e052544e1c2950cdc339640d295875d.tar.bz2
Ignore certificate errors when connecting to an HTTPS Proxy
if LOAD_IGNORE_ALL_CERT_ERRORS is set. This happens when the --ignore_certificate_errors command line flag is present. BUG=none TEST=none Review URL: http://codereview.chromium.org/3124044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57585 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http')
-rw-r--r--net/http/http_proxy_client_socket_pool.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/http/http_proxy_client_socket_pool.cc b/net/http/http_proxy_client_socket_pool.cc
index 23654d3..34bc0bb 100644
--- a/net/http/http_proxy_client_socket_pool.cc
+++ b/net/http/http_proxy_client_socket_pool.cc
@@ -8,6 +8,7 @@
#include "base/time.h"
#include "googleurl/src/gurl.h"
+#include "net/base/load_flags.h"
#include "net/base/net_errors.h"
#include "net/http/http_network_session.h"
#include "net/http/http_proxy_client_socket.h"
@@ -172,6 +173,9 @@ int HttpProxyConnectJob::DoSSLConnect() {
}
int HttpProxyConnectJob::DoSSLConnectComplete(int result) {
+ if (IsCertificateError(result) &&
+ params_->ssl_params()->load_flags() & LOAD_IGNORE_ALL_CERT_ERRORS)
+ result = OK;
if (result < 0) {
if (transport_socket_handle_->socket())
transport_socket_handle_->socket()->Disconnect();