Obsolete
This page describes Version 1 (now obsolete) of the Freenet Client Protocol Tools (FCPTools) for historical purposes. See the Freenet page for details on my involvement.What are the FCPTools?
The FCPTools are command-line driven programs and routines for inserting and retrieving files to and from Freenet. Everything is released under the GNU General Public License.
The main components are:
- fcpput: Inserts single files and splitfiles into Freenet. There is an option for generating a public and private keypair as well.
- fcpget: Retrieves single files (no splitfiles) from Freenet (you can of course retrieve the key in rawmode and manually follow the Blockmap data).
- fcpx: A general informational utility.
- FCPLib: A platform independent, but natively compiled set of functions for storing and retrieving information to and from Freenet.
Using FCPTools
Some common parameters are used by both fcpget and fcpput, but for the sake of completeness everything is listed for all 3 programs.
FCP-Put Usage:
fcpput [-n hostname] [-p port] [-l hops to live] [-s] [-D] [-v verbosity] [-g] [-V] [-h] freenet_uri [FILE]... Options: -n, --address host Freenet node address -p, --port num Freenet node port -l, --htl num Hops to live -a, --retry num Number of retries after a timeout -s, --stdin Read key data from stdin -D, --delete-local Delete key from local datastore on insert -v, --verbosity num Verbosity of log messages (default 2) 0=silent, 1=critical, 2=normal, 3=verbose, 4=debug -f, --logfile file Full pathname for the output log file (default stdout) -g, --genkeys Generate a keypair then exit -V, --version Output version information and exit -h, --help Display this help and exit uri URI to give newly inserted key; variations: CHK@ KSK@<routing key> SSK@<private key>[/<docname>] file Read key data from local file (cannot be used with --stdin) Examples: To insert a Content Hash Key (CHK) with file "gpl.txt": fcpput CHK@ /home/hapi/gpl.txt To insert a Keyword Signed Key (KSK) with file "gpl.txt" against a freenet node at address raven.cp.net with hops to live 10: fcpput --htl 10 --address raven.cp.net KSK@gpl.txt gpl.txt To insert a Subspace Signed Key (SSK) with file "gpl.txt": fcpput SSK@LNlEaG7L24af-OH~CKmyPOvJ~EM/ gpl.txt To insert an SSK within named document "licenses": fcpput SSK@LNlEaG7L24af-OH~CKmyPOvJ~EM/licenses gpl.txt
FCP-GET Usage:
fcpget [-n hostname] [-p port] [-l hops to live] [-s] [-S] [-v verbosity] [-V] [-h] freenet_uri [FILE] Options: -n, --address host Freenet node address -p, --port num Freenet node port -l, --htl num Hops to live -a, --retry num Number of retries after a timeout -s, --stdout Write key data to stdout -S, --skip-local Skip key in local datastore on retrieve -v, --verbosity num Verbosity of log messages (default 2) 0=silent, 1=critical, 2=normal, 3=verbose, 4=debug -f, --logfile file Full pathname for the output log file (default stdout) -V, --version Output version information and exit -h, --help Display this help and exit uri URI to retrieve; variations: CHK@ KSK@<routing key> SSK@<private key>[/<docname>] file Write key data to local file (cannot be used with --stdout)
FCP-X Usage:
fcpx [-n hostname] [-p port] [-v verbosity] [-f filename] COMMAND COMMAND is one of the following FCP commands: hello info Options: -n, --address host Freenet node address -p, --port num Freenet node port -v, --verbosity num Verbosity of log messages (default 2) 0=silent, 1=critical, 2=normal, 3=verbose, 4=debug -f, --logfile file Full pathname for the output log file (default stdout)