chore: initial sanitized public snapshot
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
//! Tracker parsing, scrape models, and tracker transport implementations.
|
||||
#![forbid(unsafe_code)]
|
||||
|
||||
pub(super) use std::{
|
||||
collections::BTreeMap,
|
||||
fmt::{Display, Formatter},
|
||||
sync::atomic::{AtomicU32, Ordering},
|
||||
};
|
||||
|
||||
pub(super) use reqwest::blocking::Client;
|
||||
|
||||
pub(super) use crate::{
|
||||
torrent::{DhtMessageModel, TorrentPeerModel},
|
||||
transport::{TransportError, TransportErrorKind},
|
||||
};
|
||||
|
||||
/// Tracker parsing and validation error model.
|
||||
mod error;
|
||||
/// Bencode parsing plus tracker wire-format normalization helpers.
|
||||
mod parsing;
|
||||
/// Shared tracker and DHT request-response protocol models.
|
||||
mod request_response;
|
||||
/// Live reqwest-backed HTTP tracker transport.
|
||||
mod reqwest_transport;
|
||||
/// UDP tracker message types and transport helpers.
|
||||
mod udp;
|
||||
|
||||
pub use self::error::TrackerParseError;
|
||||
pub use self::request_response::{
|
||||
DhtNodeModel, DhtTransport, TrackerPeerListModel, TrackerRequestModel, TrackerResponseModel,
|
||||
TrackerScrapeFileModel, TrackerScrapeModel, TrackerTransport,
|
||||
};
|
||||
pub use self::reqwest_transport::ReqwestTrackerTransport;
|
||||
pub use self::udp::{
|
||||
UDP_TRACKER_PROTOCOL_ID, UdpTrackerAction, UdpTrackerAnnounceEvent, UdpTrackerAnnounceRequest,
|
||||
UdpTrackerAnnounceResponse, UdpTrackerConnectRequest, UdpTrackerConnectResponse,
|
||||
UdpTrackerResponseHeader, UdpTrackerScrapeRequest, UdpTrackerScrapeResponse,
|
||||
UdpTrackerScrapeStats, UdpTrackerTransactionId,
|
||||
};
|
||||
|
||||
#[cfg(test)]
|
||||
fn hex_encode(bytes: &[u8]) -> String {
|
||||
parsing::hex_encode(bytes)
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tracker_tests;
|
||||
Reference in New Issue
Block a user