Changes since version 0.3.2
Release date: July 1, 2015
New features:
- Allow compilation of ndn-cxx as a shared library (Issue 2243)
In this release, by default, only a static library is compiled. The
next release will change the default behavior to compile only a
shared library.
- Introduce concept of PartialName (Issue 1962)
Semantically, PartialName abstraction represents an arbitrary
sequence of name components, while Name represents an absolute name.
Currently, PartialName is typedef alias to Name, but it can be
changed in the future releases.
- Introduce generalized signing API in KeyChain (Issues 2871, 1705)
A new API in KeyChain introduces a general interface to sign
interest and data packets and supply necessary signing information,
such as signing identity name, signing key name, or signing
certificate name. In addition, the supplied signing information can
include additional information that signer wants to include in the
SignatureInfo of the signed packet.
- Introduce helpers to create SigningInfo for the generalized signing
API (Issue 2922)
- Sqlite3Statement utility helper that wraps an SQLite3 statements and
provide automatic memory cleanup
- Introduce PibSqlite3 based on PibImpl (Issue 2807)
- Make public interface of Pib, Identity, and Key as read-only (Issue 2928)
- New encoding block helpers to simplify operations with std::string
(Issue 2951):
- prependStringBlock
- makeStringBlock
- readString
Improvements and bug fixes:
- Use C++11 lambda expression and smart pointers in Face
implementation (Issue 2112)
- Fix compilation failure on OS X 10.10 with cryptopp from MacPorts
- Update client.conf manpage
- Change Name::compare to return negative, zero, or positive integer
(instead of strictly -1, 0, 1) when the first name comes before the
other in canonical ordering, is equal, or comes after (Issue 2445)
- IdentityCertificate sets default FreshnessPeriod to 1 hour (Issue 2872)
- Unify TPM creation (Issue 2722)
- Allow negative start index in Name::getSubName method (Issue 1962)
- Improved documentation of PibImpl interfaces (Issues 2896, 2898)
- Simplify CommandOptions with SigningInfo (Issue 2893)
- Refactor internal PIT to use scheduled events (Issues 1372, 2518)
- Improve structure and documentation of block helpers (Issue 2951)
- Declare all move constructors as noexcept to ensure move operations
are used even when a restrictive move operation (move_if_noexcept)
is used (e.g., in STL library's containers) (Issue 2966)
Deprecated:
- The following KeyChain::sign* methods, in favor of generalized
KeyChain::sign(..., SigningInfo)
- KeyChain::sign(Packet, Name)
- KeyChain::sign(uint8_t*, size_t, Name)
- KeyChain::signByIdentity(Packet, Name)
- KeyChain::signByIdentity(uint8_t*, size_t, Name)
- KeyChain::signWithSha256(Data)
- KeyChain::signWithSha256(Interest)
- The following encoding block helper functions:
- nonNegativeIntegerBlock (use makeNonNegativeIntegerBlock)
- prependBooleanBlock (use prependEmptyBlock)
- booleanBlock (use makeEmptyBlock)
- dataBlock (use makeBinaryBlock)
- nestedBlock (use makeNestedBlock)
- The following methods of CommandOptions class, use setSigningInfo()
instead (Issue 2893):
- CommandOptions::getSigningParamsKind
- CommandOptions::getSigningIdentity
- CommandOptions::getSigningCertificate
- CommandOptions::setSigningDefault
- CommandOptions::setSigningIdentity
- CommandOptions::setSigningCertificate
Removed:
- Remove SCOPE from Interests and all references to it in the related
code (Issue 2345)
- Direct FIB management in Face class (Issue 2533)
Face::register and Face::setInterestFilter methods now only support
NFD RIB management protocol.
For special needs, FIB management can be implemented using
nfd::Controller (start<FibAddNextHopCommand>, and
start<FibRemoveNextHopCommand>)
Upcoming features (partially finished in development branches):
- NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2,
Issues 2520, 2879, 2763, 2883, 2841, 2866)
- New NDN certificate format (Issues 2861, 2868)
- NDN trust schema as a description of application trust model, which
can help automate data and interest packet signing and
authentication (Issue 2829)
- Refactored KeyChain abstraction (Issue 2926)
- 4e99f53 docs: Update of tutorials and other minor fixes by Yingdi Yu · 10 years ago
- d36dd55 docs: Adding release notes and bumping up version to 0.2.0 by Alexander Afanasyev · 10 years ago ndn-cxx-0.2.0-rc1
- 5ec0ee3 security: Support ECDSA verification in all related classes. by Yingdi Yu · 10 years ago
- b465065 security: Add 'type dir' trust-anchor in ValidatorConfig by Yingdi Yu · 10 years ago
- 44d190c security: Add 'type any' for trust-anchor in ValidatorConfig by Yingdi Yu · 10 years ago
- 3aeeaeb docs: Adding coding style document and other small updates by Alexander Afanasyev · 10 years ago
- 7c6aeb0 docs: Importing initial set of library documentation from wiki by Alexander Afanasyev · 10 years ago