conn

package
v1.27.2 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 2025 License: GPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetIsDNSConn added in v1.27.1

func GetIsDNSConn(metadata *C.Metadata) bool

func GetProxy added in v0.6.2

func GetProxy(rule constants.Policy) (C.Proxy, error)

func NewTcpConn

func NewTcpConn(ctx context.Context, metadata *C.Metadata, rule rule_engine.Rule, defaultInterface string) (net.Conn, error)

func PrintPacketError added in v1.27.0

func PrintPacketError(err error, msg string)

func RejectQuicMather added in v0.13.0

func RejectQuicMather(metadata *C.Metadata, prevRule rule_engine.Rule) (rule_engine.Rule, error)

func UpdateConnMatcher added in v0.13.0

func UpdateConnMatcher(matchers []Matcher)

func UpdateProxy

func UpdateProxy(remoteProxy C.Proxy)

Types

type CopyablePacketConn added in v1.26.4

type CopyablePacketConn struct {
	net.PacketConn
}

func NewUdpConn

func NewUdpConn(ctx context.Context, metadata *C.Metadata, rule rule_engine.Rule, defaultInterface string) (*CopyablePacketConn, error)

func (*CopyablePacketConn) ReadPacket added in v1.26.4

func (c *CopyablePacketConn) ReadPacket(buffer *buf.Buffer) (destination M.Socksaddr, err error)

func (*CopyablePacketConn) WritePacket added in v1.26.4

func (c *CopyablePacketConn) WritePacket(buffer *buf.Buffer, destination M.Socksaddr) error

type CopyableReaderWriterConn added in v1.26.4

type CopyableReaderWriterConn struct {
	network.PacketConn
}

func (*CopyableReaderWriterConn) ReadFrom added in v1.26.4

func (uc *CopyableReaderWriterConn) ReadFrom(data []byte) (int, net.Addr, error)

func (*CopyableReaderWriterConn) WriteTo added in v1.26.4

func (uc *CopyableReaderWriterConn) WriteTo(data []byte, addr net.Addr) (int, error)

type Matcher

type Matcher func(metadata *C.Metadata, rule rule_engine.Rule) (rule_engine.Rule, error)

func GetConnMatcher added in v0.13.0

func GetConnMatcher() []Matcher

type TcpConnContext

type TcpConnContext struct {
	// contains filtered or unexported fields
}

func NewTcpConnContext

func NewTcpConnContext(ctx context.Context, conn net.Conn, metadata *C.Metadata, wg *sync.WaitGroup) (*TcpConnContext, error)

func (*TcpConnContext) Conn

func (t *TcpConnContext) Conn() net.Conn

func (*TcpConnContext) Ctx

func (t *TcpConnContext) Ctx() context.Context

func (*TcpConnContext) Metadata

func (t *TcpConnContext) Metadata() *C.Metadata

func (*TcpConnContext) Rule

func (t *TcpConnContext) Rule() rule_engine.Rule

func (*TcpConnContext) Wg

func (t *TcpConnContext) Wg() *sync.WaitGroup

type UdpConnContext

type UdpConnContext struct {
	// contains filtered or unexported fields
}

func NewUdpConnContext

func NewUdpConnContext(ctx context.Context, conn network.PacketConn, metadata *C.Metadata, wg *sync.WaitGroup) (*UdpConnContext, error)

func (*UdpConnContext) Conn

func (u *UdpConnContext) Conn() network.PacketConn

func (*UdpConnContext) Ctx

func (u *UdpConnContext) Ctx() context.Context

func (*UdpConnContext) Metadata

func (u *UdpConnContext) Metadata() *C.Metadata

func (*UdpConnContext) Rule

func (u *UdpConnContext) Rule() rule_engine.Rule

func (*UdpConnContext) Wg

func (u *UdpConnContext) Wg() *sync.WaitGroup

Jump to

Keyboard shortcuts

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