10#ifndef BOTAN_CERT_STORE_SYSTEM_WINDOWS_H_
11#define BOTAN_CERT_STORE_SYSTEM_WINDOWS_H_
13#include <botan/certstor.h>
14#include <botan/mutex.h>
43 const std::vector<uint8_t>& key_id)
const override;
50 const std::vector<uint8_t>& key_id)
const override;
63 const std::vector<uint8_t>& subject_hash)
const override;
66 const X509_DN& issuer_dn, std::span<const uint8_t> serial_number)
const override;
84 std::optional<X509_Certificate> find_cert_by_pubkey_sha1_via_exhaustive_search(
85 const std::vector<uint8_t>& key_hash)
const;
89 mutable std::map<std::vector<uint8_t>, std::optional<X509_Certificate>> m_sha1_pubkey_to_cert;
#define BOTAN_PUBLIC_API(maj, min)
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)
Certificate_Store_Windows()
Certificate_Store_Windows & operator=(const Certificate_Store_Windows &)=delete
Certificate_Store_Windows(const Certificate_Store_Windows &)=delete
Certificate_Store_Windows & operator=(Certificate_Store_Windows &&)=delete
Certificate_Store_Windows(Certificate_Store_Windows &&)=delete
virtual std::optional< X509_CRL > find_crl_for(const X509_Certificate &subject) const
virtual std::vector< X509_DN > all_subjects() const =0
virtual std::optional< X509_Certificate > find_cert_by_raw_subject_dn_sha256(const std::vector< uint8_t > &subject_hash) const =0
virtual std::optional< X509_Certificate > find_cert_by_issuer_dn_and_serial_number(const X509_DN &issuer_dn, std::span< const uint8_t > serial_number) const =0
virtual std::optional< X509_Certificate > find_cert_by_pubkey_sha1(const std::vector< uint8_t > &key_hash) const =0
virtual std::vector< X509_Certificate > find_all_certs(const X509_DN &subject_dn, const std::vector< uint8_t > &key_id) const =0
virtual std::optional< X509_Certificate > find_cert(const X509_DN &subject_dn, const std::vector< uint8_t > &key_id) const