Crate rdest

Source
Expand description

Rust is simple BitTorrent client, currently supporting BEP3 specification.

§Example

use rdest::{Metainfo, Session};
use std::path::Path;

let path = Path::new("ubuntu-20.04.2.0-desktop-amd64.iso.torrent");
let torrent_file = Metainfo::from_file(path).unwrap();
let peer_id = b"AAAAABBBBBCCCCCDDDDD";

let mut session = Session::new(torrent_file, *peer_id);
session.run().await;

Modules§

peer_id
Peer ID utilities.

Macros§

hashmap
Create new HashMap with emplaced elements.

Structs§

BDecoder
Bencode decoder used by metafile/torrent files and BitTorrent protocol.
DeepFinder
Deep finder class looking for dictionary key in bencoded string.
File
File description in metainfo (.torrent) file.
Metainfo
Metainfo file (also known as .torrent; see BEP3) describe all data required to find download file/files from peer-to-peer network.
Session
Session manager.
TrackerClient
Tracker client.
TrackerResp
Response from the tracker.

Enums§

BValue
Bencode representation. BEP3 specify four basic types: integer, string (but can be any byte array), list and dictionary.
Error
rdest lib errors

Traits§

RawFinder
Dictionary value (raw format) finder in bencoded string.