ndn-cxx version 0.7.0
BREAKING CHANGE
This release features support of only NDN packet format version 0.3
(Issues 4527, 4567, 4709, 4913). The library encodes and interprets Interest
and Data packets only in 0.3 format; support for version 0.2 has been
completely removed. In addition, the URI representation of Interest
packets has also been changed following the packet format updates.
New features:
- HMAC signing support (3075)
- Support for ParametersSha256DigestComponent in Name and Interest
classes (4658)
- Encoding/decoding of HopLimit field in Interest (4806)
- PIT token (4532).
PIT token is a hop-by-hop header field that identifies an
Interest-Data exchange. The downstream node can assign an opaque token
to an outgoing Interest, and the upstream node is expected to return
the same token on the Data or Nack in reply to that Interest. This
would allow the downstream node to accelerate its processing,
especially in PIT lookup.
- io::loadBuffer and io::saveBuffer helper functions
Improvements and bug fixes:
- Various improvements in the Linux implementation of NetworkMonitor
class
- Rework of RttEstimator class:
- split into two classes: RttEstimator and RttEstimatorWithStats
(4887)
- add a getter for the smoothed RTT value (4892)
- switch to use time::nanoseconds (4887)
- Make use of attributes in logging facilities and generalize logger
backend support (4969, 3782)
- Silently accept an empty validation policy instead of throwing an
exception (5049)
- Introduce alternative URI syntax for component types used in naming
conventions, with ability to choose between canonical and alternate
format (4777)
- Don't force the generation of an Interest nonce during decoding (4685)
- Various documentation improvements
Removals:
- ndn::util::Scheduler (use ndn::Scheduler or ndn::scheduler::Scheduler)
and ndn::EventId (use ndn::scheduler::EventId) (4883)
- Unused KeyClass and AclType enums
- Unused v2::PublicKey alias of transform::PublicKey
- HmacFilter class, use SignerFilter and VerifierFilter instead
- Ill-defined equality operators for Interest, MetaInfo, Signature
(4569)
- Implicit conversion from the xyzHandle types to const xyzId* (where
xyz is PendingInterest, RegisteredPrefixId, and InterestFilterId)
- Deprecated KeyLocator::Type enum
- Private header files of concrete PIB, TPM, and KeyHandle
implementations are no longer installed (4782)
- Renamed util/backports-ostream-joiner.hpp to util/ostream-joiner.hpp
a39c0b5 name: select canonical vs alternate URI representation by Junxiao Shi · 4 years, 7 months ago 21a4ea5 tests: avoid deprecated boost headers by Davide Pesavento · 4 years, 7 months ago 7c67ab5 security: remove deprecated HmacFilter by Davide Pesavento · 4 years, 8 months ago 39cb402 util: partial support for abstract types in NDN_LOG_MEMBER_* macros by Davide Pesavento · 4 years, 8 months ago 39570d9 tests: fix Interest name in face integration test by Davide Pesavento · 4 years, 8 months ago 009062d name: alternative URI syntax for component types used in naming conventions by Davide Pesavento · 4 years, 8 months ago 0a6456c security: don't throw when loading an empty validation policy by Davide Pesavento · 4 years, 8 months ago 4fb35d8 security: stop installing headers of concrete PIB, TPM, and KeyHandle implementations by Davide Pesavento · 4 years, 9 months ago 12cef87 security: make BackEnd::Error an alias of Tpm::Error by Davide Pesavento · 4 years, 9 months ago bc997e5 security: add HMAC support in verification helpers by laqinfan · 5 years ago 56a812d security: add HMAC support in KeyChain and SigningInfo by laqinfan · 5 years ago 5e494c0 security: accept HMAC keys shorter than the hash function's output length by Davide Pesavento · 4 years, 10 months ago 835f027 interest: don't force the generation of a nonce during decoding by Davide Pesavento · 4 years, 10 months ago 75c5601 util: make overload() function public by Davide Pesavento · 5 years ago 2fdb274 interest: update toUri() for packet format v0.3 by Davide Pesavento · 5 years ago 0e0b389 interest: drop support for packet format v0.2 by Davide Pesavento · 5 years ago ef654dd Remove ill-defined equality operators (part 1) by Davide Pesavento · 5 years ago 140e9cb util: backport C++17 [[nodiscard]] attribute by Davide Pesavento · 5 years ago 869b11e util: backport std::to_underlying() by Davide Pesavento · 5 years ago 4c5b7b8 util: split RttEstimator into two classes by Davide Pesavento · 5 years ago 92dbb00 Revert "mgmt: add EndpointId field to NextHopRecord class" by Ju Pan · 5 years ago 6c6e385 util: add io::loadBuffer and io::saveBuffer by Davide Pesavento · 5 years ago 43eac58 lp: introduce PIT token by Junxiao Shi · 5 years ago 5149350 key-locator: reimplement using a sum type by Davide Pesavento · 5 years ago 7b2f58c util: Generalize logger backend support by Alexander Afanasyev · 5 years ago 2b0cc7b interest: implement HopLimit encoding/decoding by Davide Pesavento · 5 years ago 720e25c detail: improve ScopedCancelHandle by Davide Pesavento · 5 years ago adc9aa2 interest: add support for ParametersSha256DigestComponent by Davide Pesavento · 5 years ago 576b4ff util: Make use of attributes in logging facilities by Alexander Afanasyev · 5 years ago ecfb391 Declare overloaded comparison operators as non-member functions by Davide Pesavento · 5 years ago cf0baa2 security: add signature verification support in TPM by laqinfan · 5 years ago 57a3276 util: use time::nanoseconds in RttEstimator by Davide Pesavento · 5 years ago 1bac111 security: make PrivateKey::getKeySize() work in all cases by Davide Pesavento · 5 years ago ccce0bc mgmt: add EndpointId field to NextHopRecord class by Ju Pan · 5 years ago 3243c3d util: Add a getter for the smoothed RTT value by Ernest McCracken · 5 years ago 48f9724 security: add PrivateKey::loadRaw() for HMAC keys by laqinfan · 5 years ago 4ad933a util: add afterMeasurement signal to RttEstimator by Davide Pesavento · 5 years ago 77d9e81 security: remove unused KeyClass and AclType enums by Davide Pesavento · 5 years ago 0fe72ea security: add HMAC support to SignerFilter and VerifierFilter by Laqin Fan · 5 years ago 2ad2fbe interest: drop Selectors from matching functions by Junxiao Shi · 5 years ago f1bb38d util: move Scheduler and related classes to ndn::scheduler by Davide Pesavento · 5 years ago 6b33040 encoding: treat TLV-TYPE zero as invalid by Davide Pesavento · 5 years ago 3891244 interest: improve setApplicationParameters() behavior by Davide Pesavento · 5 years ago 9c19a39 interest: rename Parameters to ApplicationParameters by Davide Pesavento · 5 years ago 5437aa2 tests: fix compilation with Boost 1.69.0 by Davide Pesavento · 5 years ago 1660d00 security: Add option to disable infrastructure interest in CertificateFetcherDirectFetch by Alexander Afanasyev · 5 years ago a5f233e util: rename Scheduler::scheduleEvent to schedule by Junxiao Shi · 5 years ago fd61231 util: add ndn::scheduler namespace alias by Davide Pesavento · 5 years ago e209961 name-component: encode/decode Convention rev2 by Junxiao Shi · 5 years ago 923ba44 Replace all uses of BOOST_THROW_EXCEPTION with NDN_THROW by Davide Pesavento · 5 years ago fccb2dc encoding+interest: change Parameters to use non-critical type 36 by Davide Pesavento · 5 years ago fd67401 util: introduce NDN_THROW by Davide Pesavento · 5 years ago 5c803b9 encoding: improve documentation of Block class by Davide Pesavento · 5 years ago 80609d4 face: scoped pending Interest by Junxiao Shi · 5 years ago 07115cc util: reimplement scheduler::EventId with CancelHandle by Junxiao Shi · 5 years ago 6b99b6f Add MetadataObject class to encode/decode RDR-style metadata by Chavoosh Ghasemi · 6 years ago ca48851 tests: delete goodness-of-fit tests from Util/TestRandom by Davide Pesavento · 6 years ago c53df03 lp: stop accepting NonNegativeInteger as sequence number by Junxiao Shi · 6 years ago 60aaef0 face: scoped Interest filter by Junxiao Shi · 6 years ago 8db6152 util: add random::getRandomNumberEngine() to the public API by Davide Pesavento · 6 years ago ec475a7 face: scoped prefix registration by Junxiao Shi · 6 years ago 22f7bc3 tests: don't throw if NetworkMonitor lacks CAP_ENUM by Davide Pesavento · 6 years ago 534b841 docs: refresh installation instructions and general cleanup by Davide Pesavento · 6 years ago ebe156c util: fix SegmentFetcher undefined behavior caused by uncanceled pending interest by Ashlesh Gawande · 6 years ago 1e36ceb detail: move packet-base|tag-host.hpp to 'detail' by Junxiao Shi · 6 years ago d1fc9a7 detail: move common.hpp to 'detail' by Junxiao Shi · 6 years ago 24c5a00 impl: rename 'detail' to 'impl' by Junxiao Shi · 6 years ago 7e78064 Change #include style by Davide Pesavento · 6 years ago 946a51c util: stop using ChildSelector in NotificationSubscriber by Junxiao Shi · 6 years ago 74daf74 Rename 'tests/unit-tests' directory to 'tests/unit' by Davide Pesavento · 6 years ago 1944281 Rename 'src' directory to 'ndn-cxx' by Davide Pesavento · 6 years ago 3e3a989 mgmt: Controller cleans up fetchers on destruction by Ashlesh Gawande · 6 years ago 1bbce6d ims: prevent memory pool size from becoming zero by Ashlesh Gawande · 6 years ago 8dfd913 data: remove deprecated {get,set}FinalBlockId() by Davide Pesavento · 6 years ago dca56ea mgmt: augment ForwarderStatus with counters for satisfied and unsatisfied Interests by Ju Pan · 6 years ago 679dbb0 util: add stop function to SegmentFetcher by Ashlesh Gawande · 6 years ago 241df42 encoding: support floating point numbers in TLV-VALUE by Tianxing Ma · 6 years ago 8b753a2 interest+data: forbid unrecognized TLV before Name by Junxiao Shi · 6 years ago 7b11246 security: Throw exception when loading on orphaned ValidationPolicyConfig by Alexander Afanasyev · 6 years ago 3e39a4d security: use exponential backoff in CertificateFetcherFromNetwork by Ashlesh Gawande · 6 years ago 13fffa3 security: in tpm::BackEndOsx, unwrap the key before importing it by Davide Pesavento · 6 years ago 279f366 util: remove deprecated SegmentFetcher::fetch by Ashlesh Gawande · 6 years ago 2cb33fa net: remove deprecated ndn::ip::address{,V6}FromString by Davide Pesavento · 6 years ago e3ecad7 lp: remove lp::PrefixAnnouncement in favor of ndn::PrefixAnnouncement by Teng Liang · 6 years ago e80d116 security: add support for SHA-3 by Davide Pesavento · 6 years ago 648ae9e security: forbid RSA keys shorter than 2048 bits by Davide Pesavento · 6 years ago 1748b1e prefix-ann: provide ==, !=, << operators by Junxiao Shi · 6 years ago 5ee8ec0 security: code cleanup and doxygen improvements in tpm::BackEndOsx by Davide Pesavento · 6 years ago 502b479 encoding: replace the route origin selflearning with prefixann by Teng Liang · 6 years ago 8127d1a mgmt: encode and decode prefix announcement object by Junxiao Shi · 6 years ago 2b322eb encoding: provide _block literal operator by Junxiao Shi · 6 years ago 426d500 encoding: update number assignments by Junxiao Shi · 6 years ago 4053bd5 name: recognize ParametersSha256DigestComponent by Junxiao Shi · 6 years ago d2e6063 name-component: recognize plain URI syntax by Junxiao Shi · 6 years ago b38664e interest: support Parameters element by Arthi Padmanabhan · 6 years ago 3b101d0 Use std::move in more places by Davide Pesavento · 6 years ago cf0aff8 name: accommodate typed components in getSuccessor by Junxiao Shi · 6 years ago b55e5d3 interest: declare default CanBePrefix setting by Junxiao Shi · 6 years ago 5c1c444 security: Improve reliability of TPM BackEnd RandomKeyId test case by Junxiao Shi · 6 years ago 3a3e188 encoding+util: ensure move constructors are properly declared by Davide Pesavento · 6 years ago Next »