Description
What version of Go are you using (go version
)?
This does not appear to be version dependent. At least the go version that is the basis for several kubernetes / openshift releases are affected.
Does this issue reproduce with the latest release?
Yes, it appears to still be an issue: https://github.com/golang/net/blob/7805fdc37dc2b54b28b9d621030e14dcf1dab67c/http2/server.go#L2195
What operating system and processor architecture are you using (go env
)?
N/A
What did you do?
According to https://datatracker.ietf.org/doc/html/rfc7231#section-5.1.1 and the similar issue envoyproxy/envoy#20602 100-continue should not be a case sensitive value.
We have observed that different http clients, send different values for this. In particular the JDK 11 httpclient sends 100-Continue: https://github.com/openjdk/jdk/blob/master/src/java.net.http/share/classes/jdk/internal/net/http/Exchange.java#L536
Thus when using the JDK client to interact with a go server based, this feature does not work as expected.
What did you expect to see?
Case insensitive handling of 100-continue.
What did you see instead?
The JDK client appears to hang as it gets a response it does not understand.