summaryrefslogtreecommitdiffstats
path: root/net/socket
diff options
context:
space:
mode:
authorwtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-29 14:24:05 +0000
committerwtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-29 14:24:05 +0000
commit25dd6472b5a0e3036b8ee26a5a46b1f7b70dd58a (patch)
tree6e8b28af6c95965b150e13dc063a6796650c95aa /net/socket
parent8db52414c08292dbf5a9f570ab533abfecdf091e (diff)
downloadchromium_src-25dd6472b5a0e3036b8ee26a5a46b1f7b70dd58a.zip
chromium_src-25dd6472b5a0e3036b8ee26a5a46b1f7b70dd58a.tar.gz
chromium_src-25dd6472b5a0e3036b8ee26a5a46b1f7b70dd58a.tar.bz2
A speculative fix for the TLS 1.2 client authentication bug with the
CAC card on Mac OS X. Manually encode the ASN.1 DigestInfo structure and pass CSSM_ALGID_NONE as the digestAlg argument to CSSM_SignData. The theory is that the CAC card may not support a digestAlg argument of CSSM_ALGID_SHA256 passed to CSSM_SignData. Set the OS error when CDSA/CSSM functions fail and log the OS error when we get ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED. R=rsleevi@chromium.org BUG=255579 TEST=manual testing Review URL: https://chromiumcodereview.appspot.com/18055011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209318 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket')
-rw-r--r--net/socket/nss_ssl_util.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/socket/nss_ssl_util.cc b/net/socket/nss_ssl_util.cc
index ff5a8940..be33ac5 100644
--- a/net/socket/nss_ssl_util.cc
+++ b/net/socket/nss_ssl_util.cc
@@ -190,6 +190,8 @@ int MapNSSError(PRErrorCode err) {
return ERR_SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY;
case SEC_ERROR_INVALID_KEY:
case SSL_ERROR_SIGN_HASHES_FAILURE:
+ LOG(ERROR) << "ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED: NSS error " << err
+ << ", OS error " << PR_GetOSError();
return ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED;
// A handshake (initial or renegotiation) may fail because some signature
// (for example, the signature in the ServerKeyExchange message for an