diff --git a/transport/internet/http/hub.go b/transport/internet/http/hub.go index f2d9fdbfe..721e0c7a5 100644 --- a/transport/internet/http/hub.go +++ b/transport/internet/http/hub.go @@ -108,12 +108,12 @@ func Listen(ctx context.Context, address net.Address, port net.Port, streamSetti config := tls.ConfigFromStreamSettings(streamSettings) if config == nil { // return nil, newError("TLS must be enabled for http transport.").AtWarning() - h2s:=&http2.Server{} + h2s := &http2.Server{} server := &http.Server{ - Addr: serial.Concat(address, ":", port), + Addr: serial.Concat(address, ":", port), // TLSConfig: config.GetTLSConfig(tls.WithNextProto("h2")), - Handler: h2c.NewHandler(listener,h2s), + Handler: h2c.NewHandler(listener, h2s), ReadHeaderTimeout: time.Second * 4, } @@ -135,33 +135,31 @@ func Listen(ctx context.Context, address net.Address, port net.Port, streamSetti }() return listener, nil - } else { - server := &http.Server{ - Addr: serial.Concat(address, ":", port), - TLSConfig: config.GetTLSConfig(tls.WithNextProto("h2")), - Handler: listener, - ReadHeaderTimeout: time.Second * 4, + } + server := &http.Server{ + Addr: serial.Concat(address, ":", port), + TLSConfig: config.GetTLSConfig(tls.WithNextProto("h2")), + Handler: listener, + ReadHeaderTimeout: time.Second * 4, + } + + listener.server = server + go func() { + tcpListener, err := internet.ListenSystem(ctx, &net.TCPAddr{ + IP: address.IP(), + Port: int(port), + }, streamSettings.SocketSettings) + if err != nil { + newError("failed to listen on", address, ":", port).Base(err).WriteToLog(session.ExportIDToError(ctx)) + return } - listener.server = server - go func() { - tcpListener, err := internet.ListenSystem(ctx, &net.TCPAddr{ - IP: address.IP(), - Port: int(port), - }, streamSettings.SocketSettings) - if err != nil { - newError("failed to listen on", address, ":", port).Base(err).WriteToLog(session.ExportIDToError(ctx)) - return - } - - err = server.ServeTLS(tcpListener, "", "") - if err != nil { - newError("stoping serving TLS").Base(err).WriteToLog(session.ExportIDToError(ctx)) - } - }() - - return listener, nil - } + err = server.ServeTLS(tcpListener, "", "") + if err != nil { + newError("stoping serving TLS").Base(err).WriteToLog(session.ExportIDToError(ctx)) + } + }() + return listener, nil } func init() {