23 #ifndef NDN_CERTIFICATE_FETCHER_HPP
24 #define NDN_CERTIFICATE_FETCHER_HPP
26 #include "certificate-storage.hpp"
27 #include "certificate-request.hpp"
28 #include "validation-state.hpp"
38 typedef func_lib::function<void
39 (
const ptr_lib::shared_ptr<CertificateV2>& certificate,
40 const ptr_lib::shared_ptr<ValidationState>& state)> ValidationContinuation;
43 : certificateStorage_(0)
80 (
const ptr_lib::shared_ptr<CertificateRequest>& certificateRequest,
81 const ptr_lib::shared_ptr<ValidationState>& state,
82 const ValidationContinuation& continueValidation);
97 (
const ptr_lib::shared_ptr<CertificateRequest>& certificateRequest,
98 const ptr_lib::shared_ptr<ValidationState>& state,
99 const ValidationContinuation& continueValidation) = 0;
107 (
const ptr_lib::shared_ptr<CertificateV2>& certificate,
108 const ptr_lib::shared_ptr<ValidationState>& state,
109 const ValidationContinuation& continueValidation)
112 continueValidation(certificate, state);
void fetch(const ptr_lib::shared_ptr< CertificateRequest > &certificateRequest, const ptr_lib::shared_ptr< ValidationState > &state, const ValidationContinuation &continueValidation)
Asynchronously fetch a certificate.
Definition: certificate-fetcher.cpp:44
virtual void setCertificateStorage(CertificateStorage &certificateStorage)
Assign the certificate storage used to check for known certificates and to cache unverified ones...
Definition: certificate-fetcher.cpp:37
void cacheUnverifiedCertificate(const CertificateV2 &certificate)
Cache the unverified certificate for a period of time (5 minutes).
Definition: certificate-storage.hpp:66
CertificateFetcher is an abstract base class which provides an interface used by the validator to fet...
Definition: certificate-fetcher.hpp:36
The CertificateStorage class stores trusted anchors and has a verified certificate cache...
Definition: certificate-storage.hpp:35
virtual void doFetch(const ptr_lib::shared_ptr< CertificateRequest > &certificateRequest, const ptr_lib::shared_ptr< ValidationState > &state, const ValidationContinuation &continueValidation)=0
An implementation to fetch a certificate asynchronously.