tests: use BOOST_REQUIRE and Name::at() to prevent out-of-bound accesses

Various other cleanups

Change-Id: Ie099e618b12b7b6cf36c32be96d753221f14a8b6
13 files changed
tree: 48a215948767bcfc5bc45c99f9164c5f036c37ed
  1. .jenkins.d/
  2. .waf-tools/
  3. docs/
  4. examples/
  5. PSync/
  6. tests/
  7. .gitignore
  8. .jenkins
  9. .travis.yml
  10. AUTHORS.md
  11. COPYING.md
  12. PSync.pc.in
  13. README.md
  14. waf
  15. wscript
README.md

PSYNC - Partial and Full Synchronization Library for NDN

If you are new to the NDN community of software generally, read the Contributor's Guide.

PSync library implements the PSync protocol. It uses Invertible Bloom Lookup Table (IBLT), also known as Invertible Bloom Filter (IBF), to represent the state of a producer in partial sync mode and the state of a node in full sync mode. An IBF is a compact data structure where difference of two IBFs can be computed efficiently. In partial sync, PSync uses a Bloom Filter to represent the subscription of list of the consumer. PSync uses ndn-cxx library as NDN development library.

PSync is an open source project licensed under LGPL 3.0 (see COPYING.md for more detail). We highly welcome all contributions to the PSync code base, provided that they can be licensed under LGPL 3.0+ or other compatible license.

Feedback

Please submit any bugs or issues to the PSync issue tracker:

Installation instructions

Prerequisites

Required:

Build

To build PSync from the source:

./waf configure
./waf
sudo ./waf install

To build on memory constrained platform, please use ./waf -j1 instead of ./waf. The command will disable parallel compilation.

If configured with tests: ./waf configure --with-tests), the above commands will also generate unit tests in ./build/unit-tests