Documentation
¶
Index ¶
- func NewDNSTransport(ctx context.Context, logger log.ContextLogger, tag string, ...) (adapter.DNSTransport, error)
- func NewEndpoint(ctx context.Context, router adapter.Router, logger log.ContextLogger, ...) (adapter.Endpoint, error)
- func RegisterDNSTransport(registry *dns.TransportRegistry)
- func RegisterEndpoint(registry *endpoint.Registry)
- type DNSTransport
- func (t *DNSTransport) Close() error
- func (t *DNSTransport) Exchange(ctx context.Context, message *mDNS.Msg) (*mDNS.Msg, error)
- func (t *DNSTransport) ExchangeAsync(ctx context.Context, message *mDNS.Msg, ...)
- func (t *DNSTransport) PreferredDomain(domain string) bool
- func (t *DNSTransport) Reset()
- func (t *DNSTransport) Start(stage adapter.StartStage) error
- type Endpoint
- func (e *Endpoint) AttachReturn(returnPath tun.Return) error
- func (e *Endpoint) CancelAuthChallenge(challengeID string) error
- func (e *Endpoint) Close() error
- func (e *Endpoint) CompleteAuthChallenge(challengeID string, response adapter.OpenConnectAuthResponse) error
- func (e *Endpoint) DetachReturn(returnPath tun.Return) error
- func (e *Endpoint) DialContext(ctx context.Context, network string, destination M.Socksaddr) (net.Conn, error)
- func (e *Endpoint) InterfaceUpdated()
- func (e *Endpoint) JudgeFlow(network uint8, source netip.AddrPort, destination netip.AddrPort, ...) tun.FlowVerdict
- func (e *Endpoint) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.PacketConn, error)
- func (e *Endpoint) ListenPacketWithDestination(ctx context.Context, destination M.Socksaddr) (net.PacketConn, netip.Addr, error)
- func (e *Endpoint) NewConnectionEx(ctx context.Context, conn net.Conn, source M.Socksaddr, ...)
- func (e *Endpoint) NewDNSPacket(payload []byte, source M.Socksaddr, destination M.Socksaddr, ...)
- func (e *Endpoint) NewPacketConnectionEx(ctx context.Context, conn N.PacketConn, source M.Socksaddr, ...)
- func (e *Endpoint) OpenConnectStatus() adapter.OpenConnectStatus
- func (e *Endpoint) PortAddresses() (netip.Addr, netip.Addr)
- func (e *Endpoint) PortMTU() uint32
- func (e *Endpoint) PreMatchFlow(network string, destination netip.Addr) adapter.PreMatchAction
- func (e *Endpoint) PreferredAddress(metadata *adapter.InboundContext, address netip.Addr) bool
- func (e *Endpoint) PreferredDomain(metadata *adapter.InboundContext, domain string) bool
- func (e *Endpoint) Start(stage adapter.StartStage) error
- func (e *Endpoint) StatusUpdated() <-chan struct{}
- func (e *Endpoint) SupportsFlow(network string) bool
- func (e *Endpoint) WritePackets(packets [][]byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDNSTransport ¶
func NewDNSTransport(ctx context.Context, logger log.ContextLogger, tag string, options option.OpenConnectDNSServerOptions) (adapter.DNSTransport, error)
func NewEndpoint ¶
func RegisterDNSTransport ¶
func RegisterDNSTransport(registry *dns.TransportRegistry)
func RegisterEndpoint ¶
Types ¶
type DNSTransport ¶
type DNSTransport struct {
dns.TransportAdapter
// contains filtered or unexported fields
}
func (*DNSTransport) Close ¶
func (t *DNSTransport) Close() error
func (*DNSTransport) ExchangeAsync ¶
func (*DNSTransport) PreferredDomain ¶
func (t *DNSTransport) PreferredDomain(domain string) bool
func (*DNSTransport) Reset ¶
func (t *DNSTransport) Reset()
func (*DNSTransport) Start ¶
func (t *DNSTransport) Start(stage adapter.StartStage) error
type Endpoint ¶
type Endpoint struct {
// contains filtered or unexported fields
}
func (*Endpoint) AttachReturn ¶
func (*Endpoint) CancelAuthChallenge ¶
func (*Endpoint) CompleteAuthChallenge ¶
func (e *Endpoint) CompleteAuthChallenge(challengeID string, response adapter.OpenConnectAuthResponse) error
func (*Endpoint) DetachReturn ¶
func (*Endpoint) DialContext ¶
func (*Endpoint) InterfaceUpdated ¶
func (e *Endpoint) InterfaceUpdated()
func (*Endpoint) ListenPacket ¶
func (*Endpoint) ListenPacketWithDestination ¶
func (*Endpoint) NewConnectionEx ¶
func (*Endpoint) NewDNSPacket ¶
func (*Endpoint) NewPacketConnectionEx ¶
func (*Endpoint) OpenConnectStatus ¶
func (e *Endpoint) OpenConnectStatus() adapter.OpenConnectStatus
func (*Endpoint) PreMatchFlow ¶
func (*Endpoint) PreferredAddress ¶
func (*Endpoint) PreferredDomain ¶
func (e *Endpoint) PreferredDomain(metadata *adapter.InboundContext, domain string) bool
func (*Endpoint) StatusUpdated ¶
func (e *Endpoint) StatusUpdated() <-chan struct{}
func (*Endpoint) SupportsFlow ¶
func (*Endpoint) WritePackets ¶
Click to show internal directories.
Click to hide internal directories.