diff options
Diffstat (limited to 'net/base/x509_certificate_mac.cc')
-rw-r--r-- | net/base/x509_certificate_mac.cc | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/net/base/x509_certificate_mac.cc b/net/base/x509_certificate_mac.cc index 93bf74b..1db5a3b 100644 --- a/net/base/x509_certificate_mac.cc +++ b/net/base/x509_certificate_mac.cc @@ -50,9 +50,14 @@ int NetErrorFromOSStatus(OSStatus status) { return ERR_NOT_IMPLEMENTED; case errSecAuthFailed: return ERR_ACCESS_DENIED; - default: - LOG(ERROR) << "Unknown error " << status << " mapped to ERR_FAILED"; + default: { + base::mac::ScopedCFTypeRef<CFStringRef> error_string( + SecCopyErrorMessageString(status, NULL)); + LOG(ERROR) << "Unknown error " << status + << " (" << base::SysCFStringRefToUTF8(error_string) << ")" + << " mapped to ERR_FAILED"; return ERR_FAILED; + } } } @@ -110,13 +115,17 @@ CertStatus CertStatusFromOSStatus(OSStatus status) { case CSSMERR_APPLETP_IDP_FAIL: return CERT_STATUS_INVALID; - default: + default: { // Failure was due to something Chromium doesn't define a // specific status for (such as basic constraints violation, or // unknown critical extension) + base::mac::ScopedCFTypeRef<CFStringRef> error_string( + SecCopyErrorMessageString(status, NULL)); LOG(WARNING) << "Unknown error " << status + << " (" << base::SysCFStringRefToUTF8(error_string) << ")" << " mapped to CERT_STATUS_INVALID"; return CERT_STATUS_INVALID; + } } } |