| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/http/http_network_transaction.h" | 5 #include "net/http/http_network_transaction.h" |
| 6 | 6 |
| 7 #include <set> | 7 #include <set> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
| (...skipping 1078 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1089 (error == ERR_SSL_PROTOCOL_ERROR || IsClientCertificateError(error))) { | 1089 (error == ERR_SSL_PROTOCOL_ERROR || IsClientCertificateError(error))) { |
| 1090 session_->ssl_client_auth_cache()->Remove( | 1090 session_->ssl_client_auth_cache()->Remove( |
| 1091 GetHostAndPort(request_->url)); | 1091 GetHostAndPort(request_->url)); |
| 1092 } | 1092 } |
| 1093 | 1093 |
| 1094 switch (error) { | 1094 switch (error) { |
| 1095 case ERR_SSL_PROTOCOL_ERROR: | 1095 case ERR_SSL_PROTOCOL_ERROR: |
| 1096 case ERR_SSL_VERSION_OR_CIPHER_MISMATCH: | 1096 case ERR_SSL_VERSION_OR_CIPHER_MISMATCH: |
| 1097 case ERR_SSL_DECOMPRESSION_FAILURE_ALERT: | 1097 case ERR_SSL_DECOMPRESSION_FAILURE_ALERT: |
| 1098 case ERR_SSL_BAD_RECORD_MAC_ALERT: | 1098 case ERR_SSL_BAD_RECORD_MAC_ALERT: |
| 1099 if (ssl_config_.tls1_enabled && | 1099 if (ssl_config_.tls1_enabled) { |
| 1100 !SSLConfigService::IsKnownStrictTLSServer(request_->url.host())) { | |
| 1101 // This could be a TLS-intolerant server, an SSL 3.0 server that | 1100 // This could be a TLS-intolerant server, an SSL 3.0 server that |
| 1102 // chose a TLS-only cipher suite or a server with buggy DEFLATE | 1101 // chose a TLS-only cipher suite or a server with buggy DEFLATE |
| 1103 // support. Turn off TLS 1.0, DEFLATE support and retry. | 1102 // support. Turn off TLS 1.0, DEFLATE support and retry. |
| 1104 session_->http_stream_factory()->AddTLSIntolerantServer( | 1103 session_->http_stream_factory()->AddTLSIntolerantServer( |
| 1105 HostPortPair::FromURL(request_->url)); | 1104 HostPortPair::FromURL(request_->url)); |
| 1106 ResetConnectionAndRequestForResend(); | 1105 ResetConnectionAndRequestForResend(); |
| 1107 error = OK; | 1106 error = OK; |
| 1108 } | 1107 } |
| 1109 break; | 1108 break; |
| 1110 case ERR_SSL_SNAP_START_NPN_MISPREDICTION: | 1109 case ERR_SSL_SNAP_START_NPN_MISPREDICTION: |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1285 description = base::StringPrintf("Unknown state 0x%08X (%u)", state, | 1284 description = base::StringPrintf("Unknown state 0x%08X (%u)", state, |
| 1286 state); | 1285 state); |
| 1287 break; | 1286 break; |
| 1288 } | 1287 } |
| 1289 return description; | 1288 return description; |
| 1290 } | 1289 } |
| 1291 | 1290 |
| 1292 #undef STATE_CASE | 1291 #undef STATE_CASE |
| 1293 | 1292 |
| 1294 } // namespace net | 1293 } // namespace net |
| OLD | NEW |