| // Copyright 2021 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef NET_CERT_TRIAL_COMPARISON_CERT_VERIFIER_UTIL_H_ |
| #define NET_CERT_TRIAL_COMPARISON_CERT_VERIFIER_UTIL_H_ |
| |
| #include "net/base/net_export.h" |
| #include "net/cert/cert_verify_result.h" |
| |
| namespace net { |
| |
| // These values are persisted to logs. Entries should not be renumbered and |
| // numeric values should never be reused. |
| enum class TrialComparisonResult { |
| kInvalid = 0, |
| kEqual = 1, |
| kPrimaryValidSecondaryError = 2, |
| kPrimaryErrorSecondaryValid = 3, |
| kBothValidDifferentDetails = 4, |
| kBothErrorDifferentDetails = 5, |
| // Deprecated: kIgnoredMacUndesiredRevocationChecking = 6, |
| kIgnoredMultipleEVPoliciesAndOneMatchesRoot = 7, |
| kIgnoredDifferentPathReVerifiesEquivalent = 8, |
| // Deprecated: kIgnoredLocallyTrustedLeaf = 9, |
| kIgnoredConfigurationChanged = 10, |
| kIgnoredSHA1SignaturePresent = 11, |
| // Deprecated: kIgnoredWindowsRevCheckingEnabled = 12, |
| kIgnoredBothAuthorityInvalid = 13, |
| kIgnoredBothKnownRoot = 14, |
| kIgnoredBuiltinAuthorityInvalidPlatformSymantec = 15, |
| kIgnoredLetsEncryptExpiredRoot = 16, |
| kIgnoredAndroidErrorDatePriority = 17, |
| kMaxValue = kIgnoredAndroidErrorDatePriority, |
| }; |
| |
| NET_EXPORT_PRIVATE bool CertVerifyResultEqual(const CertVerifyResult& a, |
| const CertVerifyResult& b); |
| |
| NET_EXPORT_PRIVATE TrialComparisonResult |
| IsSynchronouslyIgnorableDifference(int primary_error, |
| const CertVerifyResult& primary_result, |
| int trial_error, |
| const CertVerifyResult& trial_result, |
| bool sha1_local_anchors_enabled); |
| |
| } // namespace net |
| |
| #endif // NET_CERT_TRIAL_COMPARISON_CERT_VERIFIER_UTIL_H_ |