-
Notifications
You must be signed in to change notification settings - Fork 18.7k
Open
Labels
NeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.help wanted
Milestone
Description
What version of Go are you using (go version)?
$ go version go version go version go1.12.5 linux/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env GOARCH="amd64" GOBIN="" GOCACHE="/home/kamran.khan/.cache/go-build" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOOS="linux" GOPATH="/home/kamran.khan/go" GOPROXY="" GORACE="" GOROOT="/usr/local/go" GOTMPDIR="" GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64" GCCGO="gccgo" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build603500370=/tmp/go-build -gno-record-gcc-switches"
What did you do?
req := &http.Request{
Method: "CONNECT",
URL: &url.URL{
Scheme: "https",
Host: proxyHost,
Opaque: addr,
},
}
req.Host = proxyHost
res, err := http.DefaultClient.Do(req)
if err != nil {
return errors.Annotate(err, "error connecting to https proxy")
}
if res.StatusCode < 200 || res.StatusCode > 299 {
panic(fmt.Sprintf("error connecting to https proxy, status: %d", res.StatusCode))
}
conn, ok := res.Body.(net.Conn)
if ok != true {
return errors.New(fmt.Sprintf("res.Body is not a net.Conn, it has type %s", reflect.TypeOf(res.Body)))
}
_ = tls.Client(conn, tlsConfig)
What did you expect to see?
As per #17227, res.Body should be a net.Conn after successful CONNECT.
What did you see instead?
Instead it is of the type *http.bodyEOFSignal
@bradfitz can you please take a look?
Metadata
Metadata
Assignees
Labels
NeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.help wanted