frp 0.31.2
This commit is contained in:
parent
f03d1e5eba
commit
575b7d569b
@ -17,6 +17,7 @@ package client
|
||||
import (
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"github.com/fatedier/frp/utils/log"
|
||||
"io"
|
||||
"net"
|
||||
"runtime/debug"
|
||||
|
@ -260,7 +260,7 @@ func newAddress(addr string, port int) string {
|
||||
}
|
||||
}
|
||||
|
||||
func (pxy *XtcpProxy) InWorkConn(conn frpNet.Conn, m *msg.StartWorkConn) {
|
||||
func (pxy *XtcpProxy) InWorkConn(conn net.Conn, m *msg.StartWorkConn) {
|
||||
xl := pxy.xl
|
||||
defer conn.Close()
|
||||
var natHoleSidMsg msg.NatHoleSid
|
||||
|
@ -94,7 +94,6 @@ func NewService(cfg config.ClientCommonConf, pxyCfgs map[string]config.ProxyConf
|
||||
pxyCfgs: pxyCfgs,
|
||||
visitorCfgs: visitorCfgs,
|
||||
exit: 0,
|
||||
closedCh: make(chan bool),
|
||||
ctx: xlog.NewContext(ctx, xlog.New()),
|
||||
cancel: cancel,
|
||||
}
|
||||
@ -152,11 +151,13 @@ func (svr *Service) Run(isCmd bool) error {
|
||||
|
||||
svr.closed = false
|
||||
if isCmd {
|
||||
svr.closed = <-svr.ctx.Done()
|
||||
<-svr.ctx.Done()
|
||||
svr.closed = true
|
||||
log.Info("svr closed")
|
||||
} else {
|
||||
go func() {
|
||||
svr.closed = <-svr.ctx.Done()
|
||||
<-svr.ctx.Done()
|
||||
svr.closed = true
|
||||
log.Info("svr closed")
|
||||
|
||||
if svr.onClosedListener != nil {
|
||||
|
@ -22,38 +22,6 @@ import (
|
||||
"github.com/fatedier/golib/errors"
|
||||
)
|
||||
|
||||
type Listener interface {
|
||||
Accept() (Conn, error)
|
||||
Close() error
|
||||
log.Logger
|
||||
}
|
||||
|
||||
type LogListener struct {
|
||||
l net.Listener
|
||||
net.Listener
|
||||
log.Logger
|
||||
}
|
||||
|
||||
func WrapLogListener(l net.Listener) Listener {
|
||||
return &LogListener{
|
||||
l: l,
|
||||
Listener: l,
|
||||
Logger: log.NewPrefixLogger(""),
|
||||
}
|
||||
}
|
||||
|
||||
func (logL *LogListener) Accept() (Conn, error) {
|
||||
log.Info("call Accept")
|
||||
c, err := logL.l.Accept()
|
||||
log.Info("Accept new conn: ", c)
|
||||
return WrapConn(c), err
|
||||
}
|
||||
|
||||
// Close 关闭listener
|
||||
func (logL *LogListener) Close() error {
|
||||
return logL.l.Close()
|
||||
}
|
||||
|
||||
// Custom listener
|
||||
type CustomListener struct {
|
||||
acceptCh chan net.Conn
|
||||
|
@ -70,8 +70,8 @@ func (p *WebsocketListener) Accept() (net.Conn, error) {
|
||||
}
|
||||
|
||||
func (p *WebsocketListener) Close() error {
|
||||
if p.accept != nil {
|
||||
close(p.accept)
|
||||
if p.acceptCh != nil {
|
||||
close(p.acceptCh)
|
||||
}
|
||||
if p.ln != nil {
|
||||
if err := p.ln.Close(); err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user