Compare commits

..

2 Commits

Author SHA1 Message Date
RPRX
3120ca4121 v1.8.13 2024-05-22 22:02:23 +00:00
yuhan6665
9b6141b83f Wireguard dial with context 2024-05-22 09:02:20 -04:00
3 changed files with 6 additions and 4 deletions

View File

@@ -21,7 +21,7 @@ import (
var (
Version_x byte = 1
Version_y byte = 8
Version_z byte = 12
Version_z byte = 13
)
var (

View File

@@ -123,12 +123,13 @@ func (bind *netBind) Close() error {
type netBindClient struct {
netBind
ctx context.Context
dialer internet.Dialer
reserved []byte
}
func (bind *netBindClient) connectTo(endpoint *netEndpoint) error {
c, err := bind.dialer.Dial(context.Background(), endpoint.dst)
c, err := bind.dialer.Dial(bind.ctx, endpoint.dst)
if err != nil {
return err
}

View File

@@ -76,7 +76,7 @@ func New(ctx context.Context, conf *DeviceConfig) (*Handler, error) {
}, nil
}
func (h *Handler) processWireGuard(dialer internet.Dialer) (err error) {
func (h *Handler) processWireGuard(ctx context.Context, dialer internet.Dialer) (err error) {
h.wgLock.Lock()
defer h.wgLock.Unlock()
@@ -108,6 +108,7 @@ func (h *Handler) processWireGuard(dialer internet.Dialer) (err error) {
},
workers: int(h.conf.NumWorkers),
},
ctx: ctx,
dialer: dialer,
reserved: h.conf.Reserved,
}
@@ -135,7 +136,7 @@ func (h *Handler) Process(ctx context.Context, link *transport.Link, dialer inte
ob.Name = "wireguard"
ob.CanSpliceCopy = 3
if err := h.processWireGuard(dialer); err != nil {
if err := h.processWireGuard(ctx, dialer); err != nil {
return err
}