]> Cypherpunks repositories - gostls13.git/commitdiff
net/http: fix Server.IdleTimeout and Server.ReadHeaderTimeout docs
authorRaghavendra Nagaraj <jamdagni86@gmail.com>
Tue, 18 Jun 2019 08:30:24 +0000 (08:30 +0000)
committerEmmanuel Odeke <emm.odeke@gmail.com>
Wed, 19 Jun 2019 05:46:46 +0000 (05:46 +0000)
CL 46434 changed the doc for Server.IdleTimeout to include
falling back to Server.ReadHeaderTimeout if both
Server.IdleTimeout and Server.ReadTimeout are zero.
However, we explicitly set the ReadDeadlines firstly based
off Server.IdleTimeout or Server.ReadTimeout before attempting
to read the next request, thus the current doc is incorrect.

This CL reverts CL 46434 and also updates the doc for
Server.ReadHeaderTimeout to documenting falling back
to Server.ReadTimeout, if the former is zero, otherwise
there is no timeout.

Fixes #32053

Change-Id: I43dd0252d1bcee6c29a8529abd84c84a49b2fba9
GitHub-Last-Rev: e1cdb599772476e0b52d9d2374c3ea3893844eb4
GitHub-Pull-Request: golang/go#32164
Reviewed-on: https://go-review.googlesource.com/c/go/+/178337
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
src/net/http/server.go

index e7323786358305935a93fb9420b4acd7463e0348..bcc283b66cea53bf257a14665012df238d3a7cdd 100644 (file)
@@ -2512,7 +2512,9 @@ type Server struct {
        // ReadHeaderTimeout is the amount of time allowed to read
        // request headers. The connection's read deadline is reset
        // after reading the headers and the Handler can decide what
-       // is considered too slow for the body.
+       // is considered too slow for the body. If ReadHeaderTimeout
+       // is zero, the value of ReadTimeout is used. If both are
+       // zero, there is no timeout.
        ReadHeaderTimeout time.Duration
 
        // WriteTimeout is the maximum duration before timing out
@@ -2524,7 +2526,7 @@ type Server struct {
        // IdleTimeout is the maximum amount of time to wait for the
        // next request when keep-alives are enabled. If IdleTimeout
        // is zero, the value of ReadTimeout is used. If both are
-       // zero, ReadHeaderTimeout is used.
+       // zero, there is no timeout.
        IdleTimeout time.Duration
 
        // MaxHeaderBytes controls the maximum number of bytes the