Rough implementation of the state server. Now it is possible to request restore of a particular file

See state-server.h for more details on command syntax.

// <PREFIX_CMD> = /localhost/<user's-device-name>/"chronoshare"/"cmd"
// <PREFIX_CMD>/"restore"/"file"/<one-component-relative-file-name>/<version>/<file-hash>

<file-hash> component is used solely to disambiguate file version and
need not be specified in full (or specified at all, but the component
need to be present). The system will only check that specified file-hash
is a prefix of the real hash of the file

Change-Id: I7a4d15a04eb1a1c59a3412da46174441c61a45c0
9 files changed
tree: 9efd2751edc57487f420c448370e1b0bcb23105e
  1. ccnx/
  2. cmd/
  3. disabled/
  4. executor/
  5. fs-watcher/
  6. gui/
  7. scheduler/
  8. src/
  9. test/
  10. .gitignore
  11. log4cxx.properties
  12. Makefile
  13. README.md
  14. waf
  15. wscript
README.md

ChronoShare: Decentralized File Sharing Over NDN

ChronoShare provides services similar to Dropbox, but in a decentralized way.

It uses ChronoSync library to synchronize the operations to the shared-folder and levels NDN's advantage of natural multicast support. The sharing process is completely decentralized, but it is also very easy to add a permanent storage server.

ChronoShare also provides file history and basic version control.

To see more details about ChronoShare design, click here.