torrent/doc.go

29 lines
968 B
Go

/*
Package torrent implements a torrent client. Goals include:
* Configurable data storage, such as file, mmap, and piece-based.
* Downloading on demand: torrent.Reader will request only the data required to
satisfy Reads, which is ideal for streaming and torrentfs.
BitTorrent features implemented include:
* Protocol obfuscation
* DHT
* uTP
* PEX
* Magnet
* IP Blocklists
* Some IPv6
* UDP Trackers
ConfigDir
A Client has a configurable ConfigDir that defaults to $HOME/.config/torrent.
Torrent metainfo files are cached at $CONFIGDIR/torrents/$infohash.torrent.
Infohashes in $CONFIGDIR/banned_infohashes cannot be added to the Client. A
P2P Plaintext Format blocklist is loaded from a file at the location specified
by the environment variable TORRENT_BLOCKLIST_FILE if set. otherwise from
$CONFIGDIR/blocklist. If $CONFIGDIR/packed-blocklist exists, this is memory-
mapped as a packed IP blocklist, saving considerable memory.
*/
package torrent