#ifndef BSSL_VERIFY_H_
#define BSSL_VERIFY_H_
#include <chrono>
#include <optional>
#include <string>
#include <string_view>
#include <vector>
#include <openssl/pki/signature_verify_cache.h>
#include <openssl/pki/verify_error.h>
BSSL_NAMESPACE_BEGIN
class CertIssuerSourceStatic;
class TrustStoreInMemory;
class CertificateVerifyOptions;
class CertificateVerifyStatus;
class OPENSSL_EXPORT VerifyTrustStore { … };
class OPENSSL_EXPORT CertPool { … };
class OPENSSL_EXPORT CertificateVerifyOptions { … };
class OPENSSL_EXPORT CertificateVerifyStatus { … };
OPENSSL_EXPORT std::optional<std::vector<std::string>> CertificateVerify(
const CertificateVerifyOptions &opts, VerifyError *out_error = nullptr,
CertificateVerifyStatus *out_status = nullptr);
OPENSSL_EXPORT std::optional<std::vector<std::vector<std::string>>>
CertificateVerifyAllPaths(const CertificateVerifyOptions &opts);
BSSL_NAMESPACE_END
#endif