Fix read deadline implementation

This commit is contained in:
世界
2023-04-08 22:37:10 +08:00
parent a486add3ec
commit 20acbbe68f
18 changed files with 51 additions and 50 deletions

View File

@@ -10,6 +10,7 @@ import (
"github.com/sagernet/sing-box/common/tls"
"github.com/sagernet/sing-box/option"
"github.com/sagernet/sing/common"
"github.com/sagernet/sing/common/bufio/deadline"
M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network"
@@ -107,5 +108,5 @@ func (c *Client) DialContext(ctx context.Context) (net.Conn, error) {
cancel(err)
return nil, err
}
return NewGRPCConn(stream, cancel), nil
return deadline.NewConn(NewGRPCConn(stream, cancel)), nil
}

View File

@@ -11,6 +11,7 @@ import (
"github.com/sagernet/sing-box/common/tls"
"github.com/sagernet/sing-box/option"
"github.com/sagernet/sing/common"
"github.com/sagernet/sing/common/bufio/deadline"
M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network"
@@ -66,7 +67,7 @@ func (s *Server) Tun(server GunService_TunServer) error {
}
}
}
go s.handler.NewConnection(ctx, conn, metadata)
go s.handler.NewConnection(ctx, deadline.NewConn(conn), metadata)
<-ctx.Done()
return nil
}