From 48184ecf21fbe68a6d83e6b92347762c619b58e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Papp?= Date: Mon, 7 Oct 2024 12:40:53 +0200 Subject: [PATCH] Fix eBPF pause handling --- client/internal/wgproxy/ebpf/wrapper.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/client/internal/wgproxy/ebpf/wrapper.go b/client/internal/wgproxy/ebpf/wrapper.go index fabd237685..ed9fa13127 100644 --- a/client/internal/wgproxy/ebpf/wrapper.go +++ b/client/internal/wgproxy/ebpf/wrapper.go @@ -101,7 +101,16 @@ func (p *ProxyWrapper) proxyToLocal(ctx context.Context) { return } - if err := p.WgeBPFProxy.sendPkg(buf[:n], p.wgEndpointAddr.Port); err != nil { + p.pausedMu.Lock() + if p.paused { + p.pausedMu.Unlock() + continue + } + + err := p.WgeBPFProxy.sendPkg(buf[:n], p.wgEndpointAddr.Port) + p.pausedMu.Unlock() + + if err != nil { if ctx.Err() != nil { return }