Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Hekate, a highly-concurrent BitTorrent seeder
Failed to load latest commit information.
dht @ e4f5b6d Import dht-0.21 plus one patch.
.gitignore Add .gitignore
.gitmodules Import dht-0.15 as a submodule
CHANGES Update CHANGES
LICENCE Add 2010 Copyright
Makefile Generate call graphs even when missing annotations
README Add website to README
hashtable.c Make private functions and variables static
hashtable.h Free the hashtable when exiting
hekate.cpc Use random(3) if /dev/urandom is not available
hekate.man
io.cpc cpc_runtime.h must be included first
io.h
list.c Add 2010 Copyright
list.h use signaling instead of flag for stream_writer
parse.c Remove spurious, commented cps keywords
parse.h Change token names.
server.cpc Add prototype for free_chunks
server.h Make private functions and variables static
torrent.c Change token names.
torrent.h Add 2010 Copyright
tracker.cpc Use random(3) if /dev/urandom is not available
tracker.h Implement DHT support.
util.c
util.h Use random(3) if /dev/urandom is not available

README

Hekate
******

Hekate is a BitTorrent seeder (informally, a "BitTorrent server", or software
for your "seedbox") designed to handle millions of simultaneous torrents and
tens of thousands of simultaneously connected peers.

Hekate is written in CPC, an experimental concurrent dialect of C. In order to
build Hekate, you will need to install the CPC compiler first. 

  http://www.pps.univ-paris-diderot.fr/~jch/software/hekate/

Checking out from repository
****************************

If you want to grab the latest development version:

  git clone --recursive git://git.wifi.pps.univ-paris-diderot.fr/hekate

Note that you need the --recursive flag because of the dht submodule.
In case you forget it, you can check out (and update) submodules with:

  git submodule update --init

There is also a github mirror:

  git clone --recursive git://github.com/kerneis/hekate


Installation
************

To build Hekate, you need to install:

- the CPC compiler [http://www.pps.univ-paris-diderot.fr/~kerneis/software/cpc],
- libcurl,
- libopenssl,
- libpthread (which is required by CPC anyway),

and run:

  make

Known bugs and limitations
**************************

- When listening() fails, trackers and dht continue to run whereas Hekate
  should leave.
- Hekate uses mmap() for every file it serves, and never releases them.  This
  means you need enough virtual memory to hold all your files; this might be an
  issue if you run Hekate on a 32-bit architecture.

Do not hesitate to report other bugs to the hekate-users mailing list:

  http://lists.sourceforge.net/lists/listinfo/hekate-users

Gabriel Kerneis <gabriel@kerneis.info>
Something went wrong with that request. Please try again.