Fix SplitHTTP Unix domain socket (#3577)

Co-authored-by: mmmray <142015632+mmmray@users.noreply.github.com>
This commit is contained in:
hellokindle 2024-07-23 04:19:31 +08:00 committed by GitHub
parent 36f427f22b
commit edae38c620
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 70 additions and 9 deletions

View file

@ -314,14 +314,6 @@ func ListenSH(ctx context.Context, address net.Address, port net.Port, streamSet
return nil, errors.New("failed to listen TCP(for SH) on ", address, ":", port).Base(err)
}
errors.LogInfo(ctx, "listening TCP(for SH) on ", address, ":", port)
// h2cHandler can handle both plaintext HTTP/1.1 and h2c
h2cHandler := h2c.NewHandler(handler, &http2.Server{})
l.server = http.Server{
Handler: h2cHandler,
ReadHeaderTimeout: time.Second * 4,
MaxHeaderBytes: 8192,
}
}
// tcp/unix (h1/h2)
@ -332,7 +324,14 @@ func ListenSH(ctx context.Context, address net.Address, port net.Port, streamSet
}
}
// h2cHandler can handle both plaintext HTTP/1.1 and h2c
h2cHandler := h2c.NewHandler(handler, &http2.Server{})
l.listener = listener
l.server = http.Server{
Handler: h2cHandler,
ReadHeaderTimeout: time.Second * 4,
MaxHeaderBytes: 8192,
}
go func() {
if err := l.server.Serve(l.listener); err != nil {