aboutsummaryrefslogtreecommitdiff
path: root/device/send.go
diff options
context:
space:
mode:
Diffstat (limited to 'device/send.go')
-rw-r--r--device/send.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/device/send.go b/device/send.go
index d22bf26..cd8a2a0 100644
--- a/device/send.go
+++ b/device/send.go
@@ -17,6 +17,7 @@ import (
"golang.org/x/crypto/chacha20poly1305"
"golang.org/x/net/ipv4"
"golang.org/x/net/ipv6"
+ "golang.zx2c4.com/wireguard/conn"
"golang.zx2c4.com/wireguard/tun"
)
@@ -526,6 +527,13 @@ func (peer *Peer) RoutineSequentialSender(maxBatchSize int) {
}
device.PutOutboundElementsSlice(elems)
if err != nil {
+ var errGSO conn.ErrUDPGSODisabled
+ if errors.As(err, &errGSO) {
+ device.log.Verbosef(err.Error())
+ err = errGSO.RetryErr
+ }
+ }
+ if err != nil {
device.log.Errorf("%v - Failed to send data packets: %v", peer, err)
continue
}