Crate libtor

source ·
Expand description

libtor

Bundle and run Tor in your own project with this library!

Example

use libtor::{Tor, TorFlag, TorAddress, HiddenServiceVersion};

Tor::new()
    .flag(TorFlag::DataDirectory("/tmp/tor-rust".into()))
    .flag(TorFlag::SocksPort(19050))
    .flag(TorFlag::HiddenServiceDir("/tmp/tor-rust/hs-dir".into()))
    .flag(TorFlag::HiddenServiceVersion(HiddenServiceVersion::V3))
    .flag(TorFlag::HiddenServicePort(TorAddress::Port(8000), None.into()))
    .start()?;

Re-exports

pub use crate::hs::*;
pub use crate::log::*;
pub use crate::ports::*;

Modules

Hidden services related flags
Log related flags
ControlPort and SocksPort related flags

Structs

Configuration builder for a Tor daemon

Enums

Error enum
Enum that represents the size unit both in bytes and bits
Enum used to represent the generic concept of an “Address”
Enum that represents a bool, rendered as 1 for true/enabled and 0 for false/disabled
Enum that represents a subset of the options supported by Tor

Functions

Generate a hashed password to use HashedControlPassword