tor

package module
v0.0.0-...-d99ed51 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 25, 2024 License: Apache-2.0, MIT Imports: 21 Imported by: 0

README

go-libp2p-tor-transport

Go tor transport is a go-libp2p transport forked from berty.tech. We've removed the embedded tor instance as it was outdated and unlikely to ever be current with mainline tor.

With config :
import (
  "context"
  "time"

  tor "github.com/project-illium/go-libp2p-tor-transport"
  config "github.com/project-illium/go-libp2p-tor-transport/config"
  libp2p "github.com/libp2p/go-libp2p"
)

func main() {
  builder, err := tor.NewBuilder(        // NewBuilder can accept some `config.Configurator`
    config.AllowTcpDial,                 // Some Configurator are already ready to use.
    config.SetSetupTimeout(time.Minute), // Some require a parameter, in this case it's a function that will return a Configurator.
    config.SetBinaryPath("/usr/bin/tor"),
  )
  // Evrything else is as previously shown.
  c(err)
  hostWithConfig, err := libp2p.New(
    context.Background(),
    libp2p.Transport(builder),
  )
  c(err)
}

func c(err error) {
  if err != nil {
    panic(err)
  }
}

Documentation

Index

Constants

View Source
const NopMaddr2Str = "/onion/aaaaaaaaaaaaaaaa:9003"

nopMaddr is an empty maddr used as filler when needed.

View Source
const NopMaddr3Str = "/onion3/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:9003"

Variables

View Source
var NopMaddr2, _ = ma.NewMultiaddr(NopMaddr2Str)
View Source
var NopMaddr3, _ = ma.NewMultiaddr(NopMaddr3Str)

Functions

func NewBuilder

func NewBuilder(cs ...config.Configurator) (func(tpt.Upgrader) tpt.Transport, error)

func NewTorResolver

func NewTorResolver(proxy string) *net.Resolver

Types

This section is empty.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL