From 128f653ea4ffa5eab05b0f51c4eff516e2aa177f Mon Sep 17 00:00:00 2001 From: Andy Wang Date: Wed, 27 May 2020 13:40:36 +0100 Subject: [PATCH] Fix duplicate UDP binding --- internal/client/piper.go | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/internal/client/piper.go b/internal/client/piper.go index b520102..7f4edd5 100644 --- a/internal/client/piper.go +++ b/internal/client/piper.go @@ -10,9 +10,9 @@ import ( log "github.com/sirupsen/logrus" ) -func RouteUDP(acceptFunc func() (*net.UDPConn, error), streamTimeout time.Duration, newSeshFunc func() *mux.Session) { +func RouteUDP(bindFunc func() (*net.UDPConn, error), streamTimeout time.Duration, newSeshFunc func() *mux.Session) { var sesh *mux.Session - localConn, err := acceptFunc() + localConn, err := bindFunc() if err != nil { log.Fatal(err) } @@ -24,10 +24,6 @@ func RouteUDP(acceptFunc func() (*net.UDPConn, error), streamTimeout time.Durati i, addr, err := localConn.ReadFrom(data) if err != nil { log.Errorf("Failed to read first packet from proxy client: %v", err) - localConn, err = acceptFunc() - if err != nil { - log.Fatal(err) - } continue }