diff options
author | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-14 03:37:18 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-14 03:37:18 +0000 |
commit | e60e47ad57e7ff423c39cff9c88725a7aed85118 (patch) | |
tree | f8b53b60daa05f2e2c5df92ca333ad1283e389cc /net/base | |
parent | 548adcb9cb9343fe542f82cc35ffaa8f8279dfb6 (diff) | |
download | chromium_src-e60e47ad57e7ff423c39cff9c88725a7aed85118.zip chromium_src-e60e47ad57e7ff423c39cff9c88725a7aed85118.tar.gz chromium_src-e60e47ad57e7ff423c39cff9c88725a7aed85118.tar.bz2 |
Implement SSLClientSocketPool.
To support SSLClientSocketPool, ClientSocketPoolBase and ClientSocketHandle require a notion of additional error state reported from the pool. Overtime the error handling may get become more integrated, alleviating the need for some of the additional error state.
To support getting Http Proxy credentials from the user, the SSLClientSocketPool will release unauthenticated HttpProxyClientSocket's into the pool as idle. However, it checks their authentication status when receiving one, completing the authentication once the user has provided the credentials.
BUG=30357
TEST=existing unit tests, ClientSocketPoolBaseTest.AdditionalErrorState*, SSLClientSocketPoolTest.*
Review URL: http://codereview.chromium.org/2870030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52275 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base')
-rw-r--r-- | net/base/load_flags_list.h | 2 | ||||
-rw-r--r-- | net/base/net_error_list.h | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h index f7be1ff..2bcb23e 100644 --- a/net/base/load_flags_list.h +++ b/net/base/load_flags_list.h @@ -77,3 +77,5 @@ LOAD_FLAG(DO_NOT_SEND_COOKIES, 1 << 17) // to the server (as opposed to the proxy). LOAD_FLAG(DO_NOT_SEND_AUTH_DATA, 1 << 18) +// This should only be used for testing (set by HttpNetworkTransaction). +LOAD_FLAG(IGNORE_ALL_CERT_ERRORS, 1 << 19) diff --git a/net/base/net_error_list.h b/net/base/net_error_list.h index d834fa5..06dca41 100644 --- a/net/base/net_error_list.h +++ b/net/base/net_error_list.h @@ -139,7 +139,8 @@ NET_ERROR(SOCKS_CONNECTION_FAILED, -120) // because that host is unreachable. NET_ERROR(SOCKS_CONNECTION_HOST_UNREACHABLE, -121) -// Error number -122 is available for use. +// The request to negotiate an alternate protocol failed. +NET_ERROR(NPN_NEGOTIATION_FAILED, -122) // The peer sent an SSL no_renegotiation alert message. NET_ERROR(SSL_NO_RENEGOTIATION, -123) @@ -163,7 +164,9 @@ NET_ERROR(PROXY_AUTH_REQUESTED, -127) // A known TLS strict server didn't offer the renegotiation extension. NET_ERROR(SSL_UNSAFE_NEGOTIATION, -128) -// The socket needs a fresh connection in order to proceed. +// The socket is reporting that we tried to provide new credentials after a +// a failed attempt on a connection without keep alive. We need to +// reestablish the transport socket in order to retry the authentication. NET_ERROR(RETRY_CONNECTION, -129) // Certificate error codes |