Skip to content

net/http: Http Server (request) is not working with enabled Proxy Protocol #64365

Closed as not planned
@HappyTobi

Description

@HappyTobi

Go version

go1.21.4

Reproducibility

  • Does this issue reproduce with the latest release?

What operating system and processor architecture are you using (go env)?

GO111MODULE=''
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/tobi/Library/Caches/go-build'
GOENV='/Users/tobi/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/tobi/Documents/develop/opensource/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/tobi/Documents/develop/opensource/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/opt/homebrew/Cellar/go/1.21.4/libexec'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/opt/homebrew/Cellar/go/1.21.4/libexec/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.21.4'
GCCGO='gccgo'
AR='ar'
CC='cc'
CXX='c++'
CGO_ENABLED='1'
GOMOD='/Users/tobi/Documents/develop/opensource/golang-http/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/n0/57nz7np96f9f0sjy9f9y9bt00000gn/T/go-build948113082=/tmp/go-build -gno-record-gcc-switches -fno-common'

What did you do?

When running a go http server, the server response of an incoming request is always HTTP 400 Bad Request when the incoming request is using the Proxy Protocol.

What did you expect to see?

The expectation is, that the response of the http server is the same for a request with and without the Proxy Protocol.
Think to pars or get something from the Proxy Protocol at the http layer is not required, that could be done with a TCP server instance, but the request should just be accepted like the rest.

What did you see instead?

The response of the request is always HTTP 400 Bad Request

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions