summaryrefslogtreecommitdiff
path: root/chromium/net/cert/cert_verify_proc_ios.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/cert/cert_verify_proc_ios.cc')
-rw-r--r--chromium/net/cert/cert_verify_proc_ios.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/chromium/net/cert/cert_verify_proc_ios.cc b/chromium/net/cert/cert_verify_proc_ios.cc
index a388b8ed3d1..ecb3e232584 100644
--- a/chromium/net/cert/cert_verify_proc_ios.cc
+++ b/chromium/net/cert/cert_verify_proc_ios.cc
@@ -205,6 +205,12 @@ CertStatus CertVerifyProcIOS::GetCertFailureStatusFromTrust(SecTrustRef trust) {
CFBundleCopyLocalizedString(bundle, hostname_mismatch_string,
hostname_mismatch_string,
CFSTR("SecCertificate")));
+ CFStringRef policy_requirements_not_met_string =
+ CFSTR("Policy requirements not met.");
+ ScopedCFTypeRef<CFStringRef> policy_requirements_not_met_error(
+ CFBundleCopyLocalizedString(bundle, policy_requirements_not_met_string,
+ policy_requirements_not_met_string,
+ CFSTR("SecCertificate")));
for (CFIndex i = 0; i < properties_length; ++i) {
CFDictionaryRef dict = reinterpret_cast<CFDictionaryRef>(
@@ -220,6 +226,8 @@ CertStatus CertVerifyProcIOS::GetCertFailureStatusFromTrust(SecTrustRef trust) {
reason |= CERT_STATUS_WEAK_KEY;
} else if (CFEqual(error, hostname_mismatch_error)) {
reason |= CERT_STATUS_COMMON_NAME_INVALID;
+ } else if (CFEqual(error, policy_requirements_not_met_error)) {
+ reason |= CERT_STATUS_INVALID | CERT_STATUS_AUTHORITY_INVALID;
} else {
reason |= CERT_STATUS_INVALID;
}