mirror of
https://github.com/SunBK201/UA3F.git
synced 2025-12-16 16:57:08 +00:00
fix: improve error handling for listener.Accept
This commit is contained in:
parent
8008fdf258
commit
409545d0b5
@ -3,8 +3,11 @@
|
||||
package redirect
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"net"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/sunbk201/ua3f/internal/config"
|
||||
@ -37,7 +40,10 @@ func (s *Server) Start() (err error) {
|
||||
var client net.Conn
|
||||
for {
|
||||
if client, err = s.listener.Accept(); err != nil {
|
||||
logrus.Error("s.listener.Accept: ", err)
|
||||
if errors.Is(err, syscall.EMFILE) {
|
||||
time.Sleep(time.Second)
|
||||
}
|
||||
logrus.Error("s.listener.Accept:", err)
|
||||
continue
|
||||
}
|
||||
logrus.Debugf("Accept connection from %s", client.RemoteAddr().String())
|
||||
|
||||
@ -7,6 +7,7 @@ import (
|
||||
"io"
|
||||
"net"
|
||||
"strings"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
"github.com/sirupsen/logrus"
|
||||
@ -60,7 +61,10 @@ func (s *Server) Start() (err error) {
|
||||
var client net.Conn
|
||||
for {
|
||||
if client, err = s.listener.Accept(); err != nil {
|
||||
logrus.Errorf("s.listener.Accept: %s", err.Error())
|
||||
if errors.Is(err, syscall.EMFILE) {
|
||||
time.Sleep(time.Second)
|
||||
}
|
||||
logrus.Error("s.listener.Accept:", err)
|
||||
continue
|
||||
}
|
||||
logrus.Debugf("Accept connection from %s", client.RemoteAddr().String())
|
||||
|
||||
@ -4,9 +4,11 @@ package tproxy
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"net"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
"golang.org/x/sys/unix"
|
||||
|
||||
@ -58,7 +60,10 @@ func (s *Server) Start() error {
|
||||
var client net.Conn
|
||||
for {
|
||||
if client, err = s.listener.Accept(); err != nil {
|
||||
logrus.Errorf("s.listener.Accept: %s", err.Error())
|
||||
if errors.Is(err, syscall.EMFILE) {
|
||||
time.Sleep(time.Second)
|
||||
}
|
||||
logrus.Error("s.listener.Accept:", err)
|
||||
continue
|
||||
}
|
||||
logrus.Debugf("Accept connection from %s", client.RemoteAddr().String())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user