NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::security::v2::CertificateBundleFetcher Class Reference

Fetch certificate bundle from the network. More...

#include <certificate-bundle-fetcher.hpp>

Inheritance diagram for ndn::security::v2::CertificateBundleFetcher:
Collaboration diagram for ndn::security::v2::CertificateBundleFetcher:

Public Member Functions

 CertificateBundleFetcher (unique_ptr< CertificateFetcher > inner, Face &face)
 
void setBundleInterestLifetime (time::milliseconds time)
 Set the lifetime of certificate bundle interest. More...
 
time::milliseconds getBundleInterestLifetime () const
 
void setCertificateStorage (CertificateStorage &certStorage) override
 Set the storage for this and inner certificate fetcher. More...
 
- Public Member Functions inherited from ndn::security::v2::CertificateFetcher
 CertificateFetcher ()
 
virtual ~CertificateFetcher ()
 
void fetch (const shared_ptr< CertificateRequest > &certRequest, const shared_ptr< ValidationState > &state, const ValidationContinuation &continueValidation)
 Asynchronously fetch certificate. More...
 

Protected Member Functions

void doFetch (const shared_ptr< CertificateRequest > &certRequest, const shared_ptr< ValidationState > &state, const ValidationContinuation &continueValidation) override
 Asynchronous certificate fetching implementation. More...
 

Additional Inherited Members

- Public Types inherited from ndn::security::v2::CertificateFetcher
using ValidationContinuation = std::function< void(const Certificate &cert, const shared_ptr< ValidationState > &state)>
 
- Protected Attributes inherited from ndn::security::v2::CertificateFetcher
CertificateStoragem_certStorage
 

Detailed Description

Fetch certificate bundle from the network.

Currently bundle fetching is attempted only for Data validation. This may change in the future. Bundle fetching always goes to the infrastructure regardless of the inner fetcher. Inner fetcher is used when the bundle interest times out or returns a Nack or when additional certificates are needed for validation.

See also
https://redmine.named-data.net/projects/ndn-cxx/wiki/Certificate_Bundle_Packet_Format

Definition at line 41 of file certificate-bundle-fetcher.hpp.

Constructor & Destructor Documentation

◆ CertificateBundleFetcher()

ndn::security::v2::CertificateBundleFetcher::CertificateBundleFetcher ( unique_ptr< CertificateFetcher inner,
Face face 
)
explicit

Definition at line 35 of file certificate-bundle-fetcher.cpp.

Member Function Documentation

◆ setBundleInterestLifetime()

void ndn::security::v2::CertificateBundleFetcher::setBundleInterestLifetime ( time::milliseconds  time)

Set the lifetime of certificate bundle interest.

Definition at line 45 of file certificate-bundle-fetcher.cpp.

◆ getBundleInterestLifetime()

time::milliseconds ndn::security::v2::CertificateBundleFetcher::getBundleInterestLifetime ( ) const
Returns
The lifetime of certificate bundle interest

Definition at line 51 of file certificate-bundle-fetcher.cpp.

◆ setCertificateStorage()

void ndn::security::v2::CertificateBundleFetcher::setCertificateStorage ( CertificateStorage certStorage)
overridevirtual

Set the storage for this and inner certificate fetcher.

Reimplemented from ndn::security::v2::CertificateFetcher.

Definition at line 57 of file certificate-bundle-fetcher.cpp.

References ndn::security::v2::CertificateFetcher::m_certStorage.

◆ doFetch()

void ndn::security::v2::CertificateBundleFetcher::doFetch ( const shared_ptr< CertificateRequest > &  certRequest,
const shared_ptr< ValidationState > &  state,
const ValidationContinuation continueValidation 
)
overrideprotectedvirtual

Asynchronous certificate fetching implementation.

Implements ndn::security::v2::CertificateFetcher.

Definition at line 64 of file certificate-bundle-fetcher.cpp.

References ndn::Name::empty(), ndn::SimpleTag< T, TypeId >::get(), ndn::Name::get(), and ndn::name::Component::getSuccessor().


The documentation for this class was generated from the following files: