Home > btpd-cgi

btpd-cgi

Btpd-cgi is a project mainly written in C and C#, based on the ISC license.

A web interface for the BitTorrent Protocol Daemon written in C

                               btpd-cgi

This is an attempt to create a fast web interface for the BitTorrent Protocol Daemon, using the C language and the CGI interface.

  1. Dependencies

    • ClearSilver
    • libz
    • btpd sources in the btpd/ directory with its Makefile generated
    • libm
    • libcrypto (OpenSSL)
    • libfetch (FreeBSD)
  2. Build and install First, ensure that you have all dependencies as described in 1.

    To get the btpd sources you can :

    • use git submodules if you have cloned the btpdcgi repository
    • download the latest tarball from the btpd website and extract it

    The build is configured by the config.mk file. You can edit it to fit your system or leave defaults. Then, it is the same old machinery:

    $ make

    make install

  3. Configuration The btpdcgi configuration file is located in ${PREFIX}/etc/btpdcgi.conf The mandatories options are :

    • btpd_dir : path to the directory where the btpd socket live (the socket must be read/writable by the btpdcgi user)

    • content_dir : path to the directory where the downloaded files are saved (must by writable by the btpd user)

    Additionaly you can set :

    • refresh_interval (default=15) : time in seconds between refresh (list page)

    Usually, the btpdcgi user is the same as httpd, say www. It is recommanded that btpd run with its own user.

    To restrict your btpdcgi installation, you can configure a HTTP authentication with your httpd server.

    The btpd.cgi file is located in ${PREFIX}/bin/ and the style.css file in ${PREFIX}/share/btpdcgi/static. You might want to add aliases rules so that your httpd can serve them.