libp2p/transports/tortransport

    Dark Mode
Search:
Group by:
  Source   Edit

Tor transport implementation

Types

Socks5AddressType {.pure.} = enum
  IPv4 = 1, FQDN = 3, IPv6 = 4
  Source   Edit
Socks5AuthMethod {.pure.} = enum
  NoAuth = 0, GSSAPI = 1, UsernamePassword = 2, NoAcceptableMethod = 255
  Source   Edit
Socks5Error = object of CatchableError
  Source   Edit
Socks5RequestCommand {.pure.} = enum
  Connect = 1, Bind = 2, UdpAssoc = 3
  Source   Edit
TorTransport = ref object of Transport
  transportAddress: TransportAddress
  tcpTransport: TcpTransport
  Source   Edit
TransportStartError = object of transport.TransportError
  Source   Edit

Procs

proc new(T: typedesc[TorTransport]; transportAddress: TransportAddress;
         flags: set[ServerFlags] = {}; upgrade: Upgrade): T:type {.public,
    ...raises: [].}
Creates a Tor transport   Source   Edit

Methods

method accept(self: TorTransport): Future[Connection] {....gcsafe,
    stackTrace: false, ...gcsafe, raises: [], raises: [], tags: [RootEffect].}
accept a new Tor connection   Source   Edit
method dial(self: TorTransport; hostname: string; address: MultiAddress): Future[
    Connection] {....gcsafe, stackTrace: false, ...gcsafe, raises: [], raises: [],
                  tags: [RootEffect].}
dial a peer   Source   Edit
method handles(t: TorTransport; address: MultiAddress): bool {....gcsafe,
    raises: [], tags: [].}
  Source   Edit
method start(self: TorTransport; addrs: seq[MultiAddress]): Future[void] {.
    stackTrace: false, ...gcsafe, raises: [], raises: [], tags: [RootEffect].}
listen on the transport   Source   Edit
method stop(self: TorTransport): Future[void] {....gcsafe, stackTrace: false,
    ...gcsafe, raises: [], raises: [], tags: [RootEffect].}
stop the transport   Source   Edit