Represents a ValidityPeriod TLV element. More...
#include <validity-period.hpp>
Classes | |
class | Error |
Public Member Functions | |
ValidityPeriod () | |
Set validity period [UNIX epoch + 1 nanosecond, UNIX epoch] that is always invalid. More... | |
ValidityPeriod (const Block &block) | |
Create validity period from block . More... | |
ValidityPeriod (const time::system_clock::TimePoint ¬Before, const time::system_clock::TimePoint ¬After) | |
Create validity period [notBefore , notAfter ]. More... | |
bool | isValid (const time::system_clock::TimePoint &now=time::system_clock::now()) const |
Check if now falls within the validity period. More... | |
ValidityPeriod & | setPeriod (const time::system_clock::TimePoint ¬Before, const time::system_clock::TimePoint ¬After) |
Set validity period [notBefore , notAfter ]. More... | |
std::pair< time::system_clock::TimePoint, time::system_clock::TimePoint > | getPeriod () const |
Get the stored validity period. More... | |
template<encoding::Tag TAG> | |
size_t | wireEncode (EncodingImpl< TAG > &encoder) const |
Fast encoding or block size estimation. More... | |
const Block & | wireEncode () const |
Encode ValidityPeriod into TLV block. More... | |
void | wireDecode (const Block &wire) |
Decode ValidityPeriod from TLV block. More... | |
Static Public Member Functions | |
static ValidityPeriod | makeRelative (time::seconds validFrom, time::seconds validUntil, const time::system_clock::TimePoint &now=time::system_clock::now()) |
Construct ValidityPeriod relative to a timepoint. More... | |
Friends | |
bool | operator== (const ValidityPeriod &lhs, const ValidityPeriod &rhs) |
bool | operator!= (const ValidityPeriod &lhs, const ValidityPeriod &rhs) |
Represents a ValidityPeriod TLV element.
Definition at line 37 of file validity-period.hpp.
ndn::security::ValidityPeriod::ValidityPeriod | ( | ) |
Set validity period [UNIX epoch + 1 nanosecond, UNIX epoch] that is always invalid.
Definition at line 49 of file validity-period.cpp.
Referenced by makeRelative().
|
explicit |
Create validity period from block
.
Definition at line 63 of file validity-period.cpp.
References wireDecode().
ndn::security::ValidityPeriod::ValidityPeriod | ( | const time::system_clock::TimePoint & | notBefore, |
const time::system_clock::TimePoint & | notAfter | ||
) |
Create validity period [notBefore
, notAfter
].
notBefore | exclusive beginning of the validity period range |
notAfter | exclusive end of the validity period range |
notBefore
is rounded up the next whole secondnotAfter
is truncated to the previous whole second Definition at line 55 of file validity-period.cpp.
|
static |
Construct ValidityPeriod relative to a timepoint.
validFrom | NotBefore is computed as now+validFrom . This should be negative to construct a ValidityPeriod that includes now . |
validUntil | NotAfter is computed as now+validTo . This should be positive to construct a ValidityPeriod that includes now . |
now | Reference timepoint. Default is current system clock timestamp. |
Definition at line 43 of file validity-period.cpp.
References ValidityPeriod().
Referenced by ndn::security::v2::parseLocatorUri().
bool ndn::security::ValidityPeriod::isValid | ( | const time::system_clock::TimePoint & | now = time::system_clock::now() | ) | const |
Check if now
falls within the validity period.
now | Time point to check if it falls within the period |
now
and now
<= periodEnd Definition at line 154 of file validity-period.cpp.
Referenced by ndn::security::v2::Certificate::isValid().
ValidityPeriod & ndn::security::ValidityPeriod::setPeriod | ( | const time::system_clock::TimePoint & | notBefore, |
const time::system_clock::TimePoint & | notAfter | ||
) |
Set validity period [notBefore
, notAfter
].
notBefore | exclusive beginning of the validity period range |
notAfter | exclusive end of the validity period range |
notBefore
is rounded up the next whole secondnotAfter
is truncated to the previous whole second Definition at line 137 of file validity-period.cpp.
References ndn::Block::reset().
std::pair< time::system_clock::TimePoint, time::system_clock::TimePoint > ndn::security::ValidityPeriod::getPeriod | ( | ) | const |
Get the stored validity period.
Definition at line 148 of file validity-period.cpp.
Referenced by ndn::security::v2::CertificateCache::insert(), ndn::security::v2::operator<<(), and ndn::security::operator<<().
size_t ndn::security::ValidityPeriod::wireEncode | ( | EncodingImpl< TAG > & | encoder | ) | const |
Fast encoding or block size estimation.
Definition at line 70 of file validity-period.cpp.
References ndn::security::NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS(), ndn::tlv::NotAfter, ndn::tlv::NotBefore, ndn::encoding::prependStringBlock(), ndn::time::toIsoString(), and ndn::tlv::ValidityPeriod.
const Block & ndn::security::ValidityPeriod::wireEncode | ( | ) | const |
Encode ValidityPeriod into TLV block.
Definition at line 85 of file validity-period.cpp.
References ndn::Block::hasWire(), and ndn::Block::parse().
void ndn::security::ValidityPeriod::wireDecode | ( | const Block & | wire | ) |
Decode ValidityPeriod from TLV block.
Error | when an invalid TLV block supplied |
Definition at line 103 of file validity-period.cpp.
References ndn::Block::elements(), ndn::Block::elements_size(), ndn::time::fromIsoString(), ndn::Block::hasWire(), ndn::security::ISO_DATETIME_SIZE, NDN_THROW, ndn::security::NOT_AFTER_OFFSET, ndn::security::NOT_BEFORE_OFFSET, ndn::tlv::NotAfter, ndn::tlv::NotBefore, ndn::Block::parse(), ndn::encoding::readString(), ndn::Block::type(), and ndn::tlv::ValidityPeriod.
Referenced by ValidityPeriod().
|
friend |
Definition at line 124 of file validity-period.hpp.
|
friend |
Definition at line 130 of file validity-period.hpp.