Skip to main content

Crate irontide

Crate irontide 

Source
Expand description

A Rust BitTorrent library.

torrent is the public facade for the IronTide crate family. It re-exports types from internal crates through a clean, ergonomic API.

§Modules

  • bencode — Serde-based bencode serialization
  • core — Hashes, metainfo, magnets, piece arithmetic
  • wire — Peer wire protocol, handshake, extensions
  • tracker — HTTP + UDP tracker announce
  • dht — Kademlia DHT peer discovery
  • storage — Piece storage, verification, disk I/O
  • session — Session management, torrent orchestration
  • utp — uTP (BEP 29) micro transport protocol
  • nat — NAT port mapping (PCP / NAT-PMP / UPnP IGD)
  • client — Ergonomic ClientBuilder and AddTorrentParams
  • prelude — Convenience re-exports for use irontide::prelude::*

Re-exports§

pub use client::AddTorrentParams;
pub use client::ClientBuilder;
pub use error::Error;
pub use error::Result;

Modules§

bencode
Serde-based bencode codec for BitTorrent.
client
Ergonomic builder types for creating sessions and adding torrents.
core
Core BitTorrent types: hashes, metainfo, magnets, piece arithmetic.
dht
Kademlia DHT for BitTorrent peer discovery (BEP 5) and storage (BEP 44).
error
Unified error type wrapping all per-crate errors.
nat
NAT port mapping — PCP / NAT-PMP / UPnP IGD.
prelude
Convenience re-exports for use irontide::prelude::*.
session
BitTorrent session management: peers, torrents, orchestration.
storage
Piece storage, verification, and disk I/O for BitTorrent.
tracker
BitTorrent tracker client (BEP 3, 15, 48).
url_guard
M218: SSRF-safe URL validators + reqwest redirect policy.
utp
uTP (BEP 29) Micro Transport Protocol.
wire
BitTorrent peer wire protocol (BEP 3, 10, 9, 11).