32 virtual std::optional<X509_Certificate> find_cert(
const X509_DN& subject_dn,
33 const std::vector<uint8_t>& key_id)
const;
40 const std::vector<uint8_t>& key_id)
const = 0;
57 const std::vector<uint8_t>& subject_hash)
const = 0;
67 const X509_DN& issuer_dn, std::span<const uint8_t> serial_number)
const = 0;
74 virtual std::optional<X509_CRL> find_crl_for(
const X509_Certificate& subject)
const;
93#if defined(BOTAN_TARGET_OS_HAS_FILESYSTEM)
131 std::vector<X509_DN> all_subjects()
const override;
137 std::optional<X509_Certificate> find_cert(
const X509_DN& subject_dn,
138 const std::vector<uint8_t>& key_id)
const override;
144 std::vector<X509_Certificate> find_all_certs(
const X509_DN& subject_dn,
145 const std::vector<uint8_t>& key_id)
const override;
147 std::optional<X509_Certificate> find_cert_by_pubkey_sha1(
const std::vector<uint8_t>& key_hash)
const override;
149 std::optional<X509_Certificate> find_cert_by_raw_subject_dn_sha256(
150 const std::vector<uint8_t>& subject_hash)
const override;
152 std::optional<X509_Certificate> find_cert_by_issuer_dn_and_serial_number(
153 const X509_DN& issuer_dn, std::span<const uint8_t> serial_number)
const override;
158 std::optional<X509_CRL> find_crl_for(
const X509_Certificate& subject)
const override;
162 std::vector<X509_Certificate> m_certs;
163 std::vector<X509_CRL> m_crls;