Versions in this module Expand all Collapse all v0 v0.7.3 Oct 6, 2023 Changes in this version + const ProtoID + var HopConnectTimeout = 30 * time.Second + var HopStreamBufferSize = 4096 + var HopStreamLimit = 1 << 19 + var HopTagWeight = 5 + var OptActive = RelayOpt(0) + var OptDiscovery = RelayOpt(2) + var OptHop = RelayOpt(1) + var RelayAcceptTimeout = 10 * time.Second + var StopHandshakeTimeout = 1 * time.Minute + func AddRelayTransport(h host.Host, upgrader transport.Upgrader, opts ...RelayOpt) error + func CanHop(ctx context.Context, host host.Host, id peer.ID) (bool, error) + func GenUpgrader(n *swarm.Swarm, connGater connmgr.ConnectionGater, opts ...tptu.Option) (transport.Upgrader, error) + type Conn struct + func (c *Conn) Close() error + func (c *Conn) LocalAddr() net.Addr + func (c *Conn) LocalMultiaddr() ma.Multiaddr + func (c *Conn) Read(buf []byte) (int, error) + func (c *Conn) RemoteAddr() net.Addr + func (c *Conn) RemoteMultiaddr() ma.Multiaddr + func (c *Conn) SetDeadline(t time.Time) error + func (c *Conn) SetReadDeadline(t time.Time) error + func (c *Conn) SetWriteDeadline(t time.Time) error + func (c *Conn) Write(buf []byte) (int, error) + type NetAddr struct + Relay string + Remote string + func (n *NetAddr) Network() string + func (n *NetAddr) String() string + type Relay struct + func NewRelay(h host.Host, upgrader transport.Upgrader, opts ...RelayOpt) (*Relay, error) + func (r *Relay) CanHop(ctx context.Context, id peer.ID) (bool, error) + func (r *Relay) Dial(ctx context.Context, a ma.Multiaddr, p peer.ID) (*Conn, error) + func (r *Relay) DialPeer(ctx context.Context, relay peer.AddrInfo, dest peer.AddrInfo) (*Conn, error) + func (r *Relay) GetActiveHops() int32 + func (r *Relay) Listener() *RelayListener + func (r *Relay) Matches(addr ma.Multiaddr) bool + func (r *Relay) Transport() *RelayTransport + type RelayError struct + Code pb.CircuitRelay_Status + func (e RelayError) Error() string + type RelayListener Relay + func (l *RelayListener) Accept() (manet.Conn, error) + func (l *RelayListener) Addr() net.Addr + func (l *RelayListener) Close() error + func (l *RelayListener) Multiaddr() ma.Multiaddr + func (l *RelayListener) Relay() *Relay + type RelayOpt int + type RelayTransport Relay + func (d *RelayTransport) Dial(ctx context.Context, a ma.Multiaddr, p peer.ID) (transport.CapableConn, error) + func (r *RelayTransport) Close() error + func (t *RelayTransport) CanDial(raddr ma.Multiaddr) bool + func (t *RelayTransport) Listen(laddr ma.Multiaddr) (transport.Listener, error) + func (t *RelayTransport) Protocols() []int + func (t *RelayTransport) Proxy() bool + func (t *RelayTransport) Relay() *Relay