About QUAFFLER ============== QUAFFLER is a software and protocol for distributing large files in large networks. Other than in typical server-client star-topologies there is no need for massive upload bandwidth for the central server. Instead, every downloader also provides some of the upload bandwidth. The central server (tracker) does not provide the actual data. Instead it just coordinates the nodes. Usually the person who provides the tracker also provides at least one node which does have the file already. Building it =========== Simply type 'make'. Downloading Files with QUAFFLER =============================== Simply run the 'quaffler' binary with the QUAFFLER URI you want to download as parameter. Licencing and List of Files =========================== The QUAFFLER library and the command line client are licenced under the MIT licence. Note that components from other directories might be licenced differently. Non-Sourcecode Files -------------------- README This file QUAFFLER.txt The QUAFFLER standard (protocols and files) Makefile The Makefile for building QUAFFLER. Makefile.deps Library Files ------------- quaffler.h The header file for the QUAFFLER library. protocol.spl Low-level protocol implementation. protocol.c (the C sources are auto-generated by the SPL script) protocol.h connection.c Mid-level protocol implementation. join.c High-level node-tracker and node-node protocol implementation. ofb.c RC-4 like output-feedback encryption. sha1.c Steve Reids famous SHA-1 implementation rsa.c Implementation of RSA (including a small bigint library) primes.h qmdf.c Some functions for generating and reading ".qmdf" files. os_unix.c OS Bindings for UNIX, Linux and MacOS-X. utils.c Various small helper functions. utils.h End-User Tools -------------- quaffler.c The CLI tool for running QUAFFLER nodes.