From cef69465db28baca2471d91f49b9120911afcf4b Mon Sep 17 00:00:00 2001 From: JackDoan Date: Thu, 14 May 2026 11:48:15 -0500 Subject: [PATCH] fix userdevice --- overlay/user.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/overlay/user.go b/overlay/user.go index 93938198..64d772e5 100644 --- a/overlay/user.go +++ b/overlay/user.go @@ -1,7 +1,6 @@ package overlay import ( - "errors" "io" "log/slog" "net/netip" @@ -26,6 +25,7 @@ func NewUserDevice(vpnNetworks []netip.Prefix) (Device, error) { outboundWriter: ow, inboundReader: ir, inboundWriter: iw, + numReaders: 1, }, nil } @@ -68,15 +68,20 @@ func (d *UserDevice) RoutesFor(ip netip.Addr) routing.Gateways { } func (d *UserDevice) SupportsMultiqueue() bool { - return false + return true } func (d *UserDevice) NewMultiQueueReader() error { - return errors.New("not implemented") + d.numReaders++ + return nil } func (d *UserDevice) Readers() []tio.Queue { - return []tio.Queue{d} + out := make([]tio.Queue, d.numReaders) + for i := range d.numReaders { + out[i] = d + } + return out } func (d *UserDevice) Pipe() (*io.PipeReader, *io.PipeWriter) {