2026-02-02 16:52:34 +08:00
|
|
|
package xicmp
|
|
|
|
|
|
|
|
|
|
import (
|
2026-09-21 02:12:50 +08:00
|
|
|
"errors"
|
2026-04-12 03:37:32 +08:00
|
|
|
|
2026-09-21 02:12:50 +08:00
|
|
|
"github.com/xtls/xray-core/common/net"
|
|
|
|
|
"github.com/xtls/xray-core/transport/internet/finalmask"
|
2026-02-02 16:52:34 +08:00
|
|
|
)
|
|
|
|
|
|
2026-09-21 02:12:50 +08:00
|
|
|
func (c *Config) HandleDial() {}
|
|
|
|
|
|
|
|
|
|
func (c *Config) HandleListen() {}
|
|
|
|
|
|
|
|
|
|
func (c *Config) WrapPacketConnClient(conn net.PacketConn, dest *net.Destination, dialer *finalmask.Dialer) (net.PacketConn, error) {
|
|
|
|
|
if dest.Address.Family().IsDomain() && len(c.IPs) == 0 {
|
|
|
|
|
return nil, errors.New("empty ip addresses")
|
2026-04-12 03:37:32 +08:00
|
|
|
}
|
2026-09-21 02:12:50 +08:00
|
|
|
return NewConnClient(c, dest)
|
2026-02-02 16:52:34 +08:00
|
|
|
}
|
|
|
|
|
|
2026-09-21 02:12:50 +08:00
|
|
|
func (c *Config) WrapPacketConnServer(conn net.PacketConn, addr net.Addr, lc *finalmask.ListenConfig) (net.PacketConn, error) {
|
|
|
|
|
return NewConnServer(c)
|
2026-02-02 16:52:34 +08:00
|
|
|
}
|