Files
sing-box-extended/transport/wireguard/endpoint_options.go
2026-03-02 21:48:54 +03:00

67 lines
1.6 KiB
Go

package wireguard
import (
"context"
"net/netip"
"time"
Xbadoption "github.com/sagernet/sing-box/common/xray/json/badoption"
tun "github.com/sagernet/sing-tun"
"github.com/sagernet/sing/common/logger"
M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network"
)
type EndpointOptions struct {
Context context.Context
Logger logger.ContextLogger
System bool
Handler tun.Handler
UDPTimeout time.Duration
Dialer N.Dialer
CreateDialer func(interfaceName string) N.Dialer
Name string
MTU uint32
Address []netip.Prefix
PrivateKey string
ListenPort uint16
ResolvePeer func(domain string) (netip.Addr, error)
Peers []PeerOptions
Workers int
PreallocatedBuffersPerPool uint32
DisablePauses bool
Amnezia *AmneziaOptions
}
type PeerOptions struct {
Endpoint M.Socksaddr
PublicKey string
PreSharedKey string
AllowedIPs []netip.Prefix
PersistentKeepaliveInterval uint16
Reserved []uint8
}
type AmneziaOptions struct {
JC int
JMin int
JMax int
S1 int
S2 int
S3 int
S4 int
H1 *Xbadoption.Range
H2 *Xbadoption.Range
H3 *Xbadoption.Range
H4 *Xbadoption.Range
I1 string
I2 string
I3 string
I4 string
I5 string
J1 string
J2 string
J3 string
ITime int64
}