Get your
FCPtools for Freenet
now!

Writing Freenet client programs has never been easier!


What are the FCPtools?

FCPtools give you an easy way to insert and retrieve files, and browse freesites, within Freenet 0.4 and 0.3. The consist of console-mode freenet clients for windows and linux, plus the library for supporting you to write your own clients.


Contents of FCPtools:

fcpproxy - an FProxy-like web client for Freenet 0.4 or 0.3, that allows you to surf freesites and browse keys

fcpget - a simple command-line key request utility. Useful as sample program using ezFCPlib

fcpput - a simple command-line key insert utility. Useful as sample program using ezFCPlib

fcpputsite - a simple command-line freesite insertion utility.

ezFCPlib - the engine that makes all these tools run. ezFCPlib provides an easy, intuitive yet powerful C/C++ API to Freenet 0.4 and 0.3 nodes. FreeWeb uses ezFCPlib. Draft API doc included.


Usage Information

FwProxy - web-based Freenet client

fwproxy [-h] [-n nodeAddr] [-p nodePort] [-b browsePort] [-g gatewayfile]
-h: display this help
-n nodeAddr: address of your freenet 0.4 node, default 'localhost'
-p nodePort: FCP port for your freenet 0.4 or 0.3 node, default 8481
-b browsePort: the port FwProxy listens on for browser http requests, default 8888
-w password:
useful when using fwproxy as browser's http proxy. Allows the anonymity-protecting web blocks to be turned on and off with the 'http://free/[no]block?password' url.
-htl htlval: hops-to-live for freenet key requests. default 10.

-g gatewaypath: the pathname of a file to use as the html gateway page, default './gateway.html'
-v level: The verbosity level for logging output. 0=silent -> 4=debug, default 2

fcpget - retrieve a single file from freenet

fcpget [-h] [-htl htlval] [-n nodeAddr] [-p nodePort] [-r] [-m file] key [file]

-h: display this help
-htl htlVal: use HopsToLive value of htlVal, default 25
-n nodeAddr: address of your freenet 0.4 node, default 'localhost'
-p nodePort: FCP port for your freenet 0.4 node, default 8481
-m file: write key's metadata to file, 'stdout' means stdout
-r: raw mode - don't follow redirects key a Freenet key
-v level: The verbosity level for logging output. 0=silent -> 4=debug, default 2
URI [freenet:]XXX@blah[/blah][//[path]]
file a file to save key data to - stdout if no filename

fcpput - insert a single file into freenet

fcpput [-h] [-htl htlval] [-n nodeAddr] [-p nodePort] [-r] [-m file] key [file]

-h: display this help
-s: don't display prompts for metadata or key data
-htl htlVal: use HopsToLive value of htlVal, default 3
-n nodeAddr: address of your freenet 0.4 node, default 'localhost'
-p nodePort: FCP port for your freenet 0.4 node, default 8481
-m file: get key's metadata from file, 'stdin' means stdin
-r: raw mode - don't create redirects key a Freenet key
-v level: The verbosity level for logging output. 0=silent -> 4=debug, default 2
URI: [freenet:]XXX@blah[/blah][//[path]]
file a file to take key data from - uses stdin if no filename

NOTE - if fcpput succeeds, then only the inserted key URI will be written to stdout Therefore, you can use this utility in shell `` (backtick) commands

fcpputsite - insert an entire freesite into freenet, including DBR root and daily manifest

fcpputsite [options] name dir pubKey privKey

Options are:
-h: display this help
-htl val: use HopsToLive value of val, default 3
-n addr: address of your freenet 0.4 node, default 'localhost'
-p port: FCP port for your freenet 0.4 node, default 8481
-v level: verbosity of logging messages:
0=silent, 1=critical, 2=normal, 3=verbose, 4=debug default is 2
-g: DON'T insert a site - just generate an SVK keypair instead
-f numDays: insert a map file numDays in the future, default 0 (today)
-def file: name of site's 'default' file, default is index.html
the default file MUST exist in selected directory
-t threads: the maximum number of insert threads (default 5)
-a attempts: maximum number of attempts at inserting each file (default 3)
Required arguments are:
name: name of site - more formally, the SSK subspace identifier
dir: the directory containing the freesite
pubKey: the SSK public key
privKey: the SSK private key

ezFCPlib - an easy API for freenet clients in C/C++

See the ezFCPlib Programmer Manual (work in progress)


.