security: various enhancements to Interest and Data validation

 * Avoid decoding SignatureInfo multiple times while validating an Interest
 * Fix handling of signed Interests with malformed InterestSignatureInfo
 * Report a NO_SIGNATURE error when SignatureInfo is missing or malformed
 * Fail with POLICY_ERROR in ValidationPolicySimpleHierarchy when the
   signing identity violates the policy
 * Reduce code duplication
 * Expand unit test coverage

Change-Id: I1c9d532b2307d5df8f4bd75152af57a4e10835aa
21 files changed
tree: 46d14415f1c1de8bea439c9708a2f5b26688ee3f
  1. .github/
  2. .jenkins.d/
  3. .waf-tools/
  4. docs/
  5. examples/
  6. ndn-cxx/
  7. tests/
  8. tools/
  9. .gitignore
  10. .jenkins
  11. .mailmap
  12. AUTHORS.md
  13. client.conf.sample
  14. COPYING.md
  15. libndn-cxx.pc.in
  16. README-dev.md
  17. README.md
  18. waf
  19. wscript
README.md

ndn-cxx: NDN C++ library with eXperimental eXtensions

CI Docs Language Latest version

ndn-cxx is a C++14 library implementing Named Data Networking (NDN) primitives that can be used to write various NDN applications. The library is currently being used by the following projects:

Documentation

See docs/INSTALL.rst for compilation and installation instructions.

Extensive documentation is available on the library's homepage.

Reporting bugs

Please submit any bugs or feature requests to the ndn-cxx issue tracker.

Contributing

We greatly appreciate contributions to the ndn-cxx code base. If you are new to the NDN software community, please read the Contributor's Guide to get started.

License

ndn-cxx is an open source project licensed under the LGPL version 3. See COPYING.md for more information.