Documentation ¶
Index ¶
- func CopyEarlyConn(ctx context.Context, conn net.Conn, serverConn net.Conn) error
- func New(ctx context.Context, router adapter.Router, logger log.ContextLogger, ...) (adapter.Outbound, error)
- func NewConnection(ctx context.Context, this N.Dialer, conn net.Conn, ...) error
- func NewEarlyConnection(ctx context.Context, this N.Dialer, conn net.Conn, ...) error
- func NewHysteria(ctx context.Context, router adapter.Router, logger log.ContextLogger, ...) (adapter.Outbound, error)
- func NewPacketConnection(ctx context.Context, this N.Dialer, conn N.PacketConn, ...) error
- func NewWireGuard(ctx context.Context, router adapter.Router, logger log.ContextLogger, ...) (adapter.Outbound, error)
- func RealTag(detour adapter.Outbound) string
- type Block
- func (h *Block) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *Block) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Block) Network() []string
- func (h *Block) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *Block) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *Block) Tag() string
- func (a *Block) Type() string
- type DNS
- func (d *DNS) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (d *DNS) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *DNS) Network() []string
- func (d *DNS) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (d *DNS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *DNS) Tag() string
- func (a *DNS) Type() string
- type Direct
- func (h *Direct) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *Direct) DialParallel(ctx context.Context, network string, destination M.Socksaddr, ...) (net.Conn, error)
- func (h *Direct) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Direct) Network() []string
- func (h *Direct) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *Direct) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *Direct) Tag() string
- func (a *Direct) Type() string
- type HTTP
- func (h *HTTP) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *HTTP) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *HTTP) Network() []string
- func (h *HTTP) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *HTTP) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *HTTP) Tag() string
- func (a *HTTP) Type() string
- type ProxyListener
- func (l *ProxyListener) Close() error
- func (l *ProxyListener) NewConnection(ctx context.Context, conn net.Conn, upstreamMetadata M.Metadata) error
- func (l *ProxyListener) NewPacketConnection(ctx context.Context, conn N.PacketConn, upstreamMetadata M.Metadata) error
- func (l *ProxyListener) Password() string
- func (l *ProxyListener) Port() uint16
- func (l *ProxyListener) Start() error
- func (l *ProxyListener) Username() string
- type SSH
- func (s *SSH) Close() error
- func (s *SSH) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (s *SSH) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *SSH) Network() []string
- func (s *SSH) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (s *SSH) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *SSH) Tag() string
- func (a *SSH) Type() string
- type Selector
- func (s *Selector) All() []string
- func (s *Selector) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (s *Selector) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (s *Selector) Network() []string
- func (s *Selector) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (s *Selector) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (s *Selector) Now() string
- func (s *Selector) SelectOutbound(tag string) bool
- func (s *Selector) Start() error
- func (a *Selector) Tag() string
- func (a *Selector) Type() string
- type ShadowTLS
- func (s *ShadowTLS) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (s *ShadowTLS) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *ShadowTLS) Network() []string
- func (s *ShadowTLS) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (s *ShadowTLS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *ShadowTLS) Tag() string
- func (a *ShadowTLS) Type() string
- type Shadowsocks
- func (h *Shadowsocks) Close() error
- func (h *Shadowsocks) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *Shadowsocks) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Shadowsocks) Network() []string
- func (h *Shadowsocks) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *Shadowsocks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *Shadowsocks) Tag() string
- func (a *Shadowsocks) Type() string
- type Socks
- func (h *Socks) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *Socks) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Socks) Network() []string
- func (h *Socks) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *Socks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *Socks) Tag() string
- func (a *Socks) Type() string
- type Tor
- func (t *Tor) Close() error
- func (t *Tor) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (t *Tor) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Tor) Network() []string
- func (t *Tor) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (t *Tor) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (t *Tor) Start() error
- func (a *Tor) Tag() string
- func (a *Tor) Type() string
- type Trojan
- func (h *Trojan) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *Trojan) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *Trojan) Network() []string
- func (h *Trojan) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *Trojan) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *Trojan) Tag() string
- func (a *Trojan) Type() string
- type VMess
- func (h *VMess) Close() error
- func (h *VMess) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (h *VMess) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (a *VMess) Network() []string
- func (h *VMess) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
- func (h *VMess) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
- func (a *VMess) Tag() string
- func (a *VMess) Type() string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CopyEarlyConn ¶
func NewConnection ¶
func NewEarlyConnection ¶
func NewHysteria ¶ added in v1.0.1
func NewPacketConnection ¶
func NewPacketConnection(ctx context.Context, this N.Dialer, conn N.PacketConn, metadata adapter.InboundContext) error
func NewWireGuard ¶ added in v1.0.1
Types ¶
type Block ¶
type Block struct {
// contains filtered or unexported fields
}
func (*Block) DialContext ¶
func (*Block) ListenPacket ¶
func (*Block) NewConnection ¶
func (*Block) NewPacketConnection ¶
func (h *Block) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type DNS ¶
type DNS struct {
// contains filtered or unexported fields
}
func (*DNS) DialContext ¶
func (*DNS) ListenPacket ¶
func (*DNS) NewConnection ¶
func (*DNS) NewPacketConnection ¶
func (d *DNS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Direct ¶
type Direct struct {
// contains filtered or unexported fields
}
func NewDirect ¶
func NewDirect(router adapter.Router, logger log.ContextLogger, tag string, options option.DirectOutboundOptions) (*Direct, error)
func (*Direct) DialContext ¶
func (*Direct) DialParallel ¶ added in v1.0.1
func (*Direct) ListenPacket ¶
func (*Direct) NewConnection ¶
func (*Direct) NewPacketConnection ¶
func (h *Direct) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type HTTP ¶
type HTTP struct {
// contains filtered or unexported fields
}
func NewHTTP ¶
func NewHTTP(router adapter.Router, logger log.ContextLogger, tag string, options option.HTTPOutboundOptions) (*HTTP, error)
func (*HTTP) DialContext ¶
func (*HTTP) ListenPacket ¶
func (*HTTP) NewConnection ¶
func (*HTTP) NewPacketConnection ¶
func (h *HTTP) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type ProxyListener ¶ added in v1.0.1
type ProxyListener struct {
// contains filtered or unexported fields
}
func NewProxyListener ¶ added in v1.0.1
func NewProxyListener(ctx context.Context, logger log.ContextLogger, dialer N.Dialer) *ProxyListener
func (*ProxyListener) Close ¶ added in v1.0.1
func (l *ProxyListener) Close() error
func (*ProxyListener) NewConnection ¶ added in v1.0.1
func (*ProxyListener) NewPacketConnection ¶ added in v1.0.1
func (l *ProxyListener) NewPacketConnection(ctx context.Context, conn N.PacketConn, upstreamMetadata M.Metadata) error
func (*ProxyListener) Password ¶ added in v1.0.1
func (l *ProxyListener) Password() string
func (*ProxyListener) Port ¶ added in v1.0.1
func (l *ProxyListener) Port() uint16
func (*ProxyListener) Start ¶ added in v1.0.1
func (l *ProxyListener) Start() error
func (*ProxyListener) Username ¶ added in v1.0.1
func (l *ProxyListener) Username() string
type SSH ¶ added in v1.0.1
type SSH struct {
// contains filtered or unexported fields
}
func (*SSH) DialContext ¶ added in v1.0.1
func (*SSH) ListenPacket ¶ added in v1.0.1
func (*SSH) NewConnection ¶ added in v1.0.1
func (*SSH) NewPacketConnection ¶ added in v1.0.1
func (s *SSH) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Selector ¶
type Selector struct {
// contains filtered or unexported fields
}
func NewSelector ¶
func NewSelector(router adapter.Router, logger log.ContextLogger, tag string, options option.SelectorOutboundOptions) (*Selector, error)
func (*Selector) DialContext ¶
func (*Selector) ListenPacket ¶
func (*Selector) NewConnection ¶
func (*Selector) NewPacketConnection ¶
func (s *Selector) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
func (*Selector) SelectOutbound ¶
type ShadowTLS ¶ added in v1.0.1
type ShadowTLS struct {
// contains filtered or unexported fields
}
func NewShadowTLS ¶ added in v1.0.1
func (*ShadowTLS) DialContext ¶ added in v1.0.1
func (*ShadowTLS) ListenPacket ¶ added in v1.0.1
func (*ShadowTLS) NewConnection ¶ added in v1.0.1
func (*ShadowTLS) NewPacketConnection ¶ added in v1.0.1
func (s *ShadowTLS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Shadowsocks ¶
type Shadowsocks struct {
// contains filtered or unexported fields
}
func NewShadowsocks ¶
func NewShadowsocks(ctx context.Context, router adapter.Router, logger log.ContextLogger, tag string, options option.ShadowsocksOutboundOptions) (*Shadowsocks, error)
func (*Shadowsocks) Close ¶
func (h *Shadowsocks) Close() error
func (*Shadowsocks) DialContext ¶
func (*Shadowsocks) ListenPacket ¶
func (h *Shadowsocks) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
func (*Shadowsocks) NewConnection ¶
func (h *Shadowsocks) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error
func (*Shadowsocks) NewPacketConnection ¶
func (h *Shadowsocks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Socks ¶
type Socks struct {
// contains filtered or unexported fields
}
func NewSocks ¶
func NewSocks(router adapter.Router, logger log.ContextLogger, tag string, options option.SocksOutboundOptions) (*Socks, error)
func (*Socks) DialContext ¶
func (*Socks) ListenPacket ¶
func (*Socks) NewConnection ¶
func (*Socks) NewPacketConnection ¶
func (h *Socks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Tor ¶ added in v1.0.1
type Tor struct {
// contains filtered or unexported fields
}
func (*Tor) DialContext ¶ added in v1.0.1
func (*Tor) ListenPacket ¶ added in v1.0.1
func (*Tor) NewConnection ¶ added in v1.0.1
func (*Tor) NewPacketConnection ¶ added in v1.0.1
func (t *Tor) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type Trojan ¶
type Trojan struct {
// contains filtered or unexported fields
}
func (*Trojan) DialContext ¶
func (*Trojan) ListenPacket ¶
func (*Trojan) NewConnection ¶
func (*Trojan) NewPacketConnection ¶
func (h *Trojan) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
type VMess ¶
type VMess struct {
// contains filtered or unexported fields
}
func (*VMess) DialContext ¶
func (*VMess) ListenPacket ¶
func (*VMess) NewConnection ¶
func (*VMess) NewPacketConnection ¶
func (h *VMess) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error
Click to show internal directories.
Click to hide internal directories.