Skip to content
Friend-2-Friend file sharing utility. Note: Not in development anymore
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This is the Schneflocke Project, a Friend-2-Friend file sharing application.
It also contains libschnee, a library for supporting the creation of P2P-
Collaboration applications and similar.

For user information see

This documentation is intended for developers.

0. Building instructions
See doc/building.txt

1. Testing
Testcases can be found in testcases/. Once you are through with building you can 
also let cmake run the testcases, e.g. with "make test". They will all compile 
into simple executables who either fail with "abort" or return a value != 0 if 
they found an error. Note that the testcases use some very sharp timed 
assumptions so there is not always an error if a testcase fails.

Applications can be found in the app folder.

1. Use of libschnee / libflocke library
Please look at the API documentation generated by Doxygen. You can also refer to 
the shipped testcases / demo applications. Cmdline-client, degeneration-test
and stream-test are good starting points. The building process will create a 
static library against you can link own developments. You may also change the 
cmake script if  you need a shared library. You should use libschnee/ as your 
include directory, so that you can do includes like this:

// InterplexBeacon
#include <schnee/p2p/InterplexBeacon.h>

All classes are in the sf namespace, some are a bit deeper. The API Documentation 
hides a lot of classes, which shall not be used from outside the library. If you 
need API documentation for them too, you can build a developer API documentation 
with the target apidoc-dev (but this documentation is far from complete).

2. License
See license.txt

3. Other software contained:

This software also contains:
- RapidXML, (c) 2006, 2007 Marcin Kalicinski (Boost License)
- linenoise, (c) 2010, Salvatore Sanfilippo (BSD License)
- GNUTLS precompiled for Windows (LGPL License)
- Base64 encoder/decoder by Bob Withers (Freeware), with some Extensions from 
  Stanley Yamane (BSD License)
- UDT (c) 2001 - 2010, The Board of Trustees of the University of Illinois (BSD License)

4. Components, Applications
Various program components can be found in libflocke/, applications in apps/

You can’t perform that action at this time.