22 #ifndef NDN_CXX_SECURITY_VALIDITY_PERIOD_HPP
23 #define NDN_CXX_SECURITY_VALIDITY_PERIOD_HPP
88 std::pair<time::system_clock::TimePoint, time::system_clock::TimePoint>
93 template<encoding::Tag TAG>
115 return !(lhs != rhs);
121 return lhs.m_notBefore != rhs.m_notBefore ||
122 lhs.m_notAfter != rhs.m_notAfter;
126 typedef boost::chrono::time_point<time::system_clock, time::seconds> TimePoint;
128 TimePoint m_notBefore;
129 TimePoint m_notAfter;
131 mutable Block m_wire;
Represents a TLV element of the NDN packet format.
Represents a ValidityPeriod TLV element.
ValidityPeriod()
Set validity period [UNIX epoch + 1 nanosecond, UNIX epoch] that is always invalid.
bool isValid(const time::system_clock::TimePoint &now=time::system_clock::now()) const
Check if now falls within the validity period.
void wireDecode(const Block &wire)
Decode ValidityPeriod from TLV block.
std::pair< time::system_clock::TimePoint, time::system_clock::TimePoint > getPeriod() const
Get the stored validity period.
friend bool operator==(const ValidityPeriod &lhs, const ValidityPeriod &rhs)
friend bool operator!=(const ValidityPeriod &lhs, const ValidityPeriod &rhs)
ValidityPeriod & setPeriod(const time::system_clock::TimePoint ¬Before, const time::system_clock::TimePoint ¬After)
Set validity period [notBefore, notAfter].
const Block & wireEncode() const
Encode ValidityPeriod into TLV block.
static time_point now() noexcept
represents an error in TLV encoding or decoding
Error(const char *expectedType, uint32_t actualType)
Common includes and macros used throughout the library.
#define NDN_CXX_DECLARE_WIRE_ENCODE_INSTANTIATIONS(ClassName)
std::ostream & operator<<(std::ostream &os, const AdditionalDescription &desc)