We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Describe the bug This client requests triggers a nil pointer panic which gets written to the error template but can not be found in any log fields.
To Reproduce Steps to reproduce the behavior:
couper version
docker run avenga/couper version
1.0
*.hcl
server "fuzz" { endpoint "/**" { add_request_headers = { x-fuzz = request.headers.x-data } add_query_params = { x-quzz = request.headers.x-data } request "sidekick" { url = "http://%s/anything/" body = request.headers.x-data } # default proxy { path = "/anything" url = "http://%s" } add_response_headers = { y-fuzz = request.headers.x-data x-sidekick = backend_responses.sidekick.json_body } } }
curl
copy as curl
nc localhost 8080
quoted input: "\n\x00\n\x00" raw input:
GET / HTTP/1.1 Host: localhost Connection: close X-Data: � �
logs:
ERRO[0806] parse "http://%s": invalid URL escape "%s" backend=default build=dev hcl=backend type=couper_daemon version=0 ERRO[0806] parse "http://%s/anything/": invalid URL escape "%s" backend=default build=dev hcl=backend type=couper_daemon version=0 ERRO[0806] Server error build=dev bytes=59771 client_ip=127.0.0.1 code=1000 endpoint="/**" handler=endpoint method=GET proto=HTTP/1.1 realtime=1.773 request="map[addr:localhost:8080 headers:map[] host:localhost path:/?x-quzz= port:8080 tls:false]" response="map[bytes:59771 headers:map[content-type:text/html]]" scheme=http server=fuzz status=500 type=couper_access uid=c1qrhqgi7qknopja9lsg url="http://localhost:8080/?x-quzz=" version=0
response:
<body> <h1>Error - 800 500</h1> <section id="ctx"> <div> <strong>Code:</strong> 1000 - "panic: runtime error: invalid memory address or nil pointer dereference goroutine 28 [running]: runtime/debug.Stack(0x16dcee4, 0x2, 0xc0001baf00) /Users/marcel/homebrew/Cellar/go/1.16/libexec/src/runtime/debug/stack.go:24 +0x9f github.com/avenga/couper/handler/producer.roundtrip.func1(0xc000276600, 0xc0003d43c0, 0x16deb0e, 0x7) /Users/marcel/projects/couper-gateway/handler/producer/result.go:56 +0xf8 panic(0x163f600, 0x1aed260) /Users/marcel/homebrew/Cellar/go/1.16/libexec/src/runtime/panic.go:965 +0x1b9 github.com/avenga/couper/handler/transport.(*Backend).evalTransport(0xc0000a4d80, 0xc000276700, 0x17b4658, 0xc0000100b0, 0xc000276700) /Users/marcel/projects/couper-gateway/handler/transport/backend.go:271 +0x8af github.com/avenga/couper/handler/transport.(*Backend).RoundTrip(0xc0000a4d80, 0xc000276700, 0x1b007a0, 0x1a9d518, 0x1630a20) /Users/marcel/projects/couper-gateway/handler/transport/backend.go:84 +0xbc github.com/avenga/couper/logging.(*UpstreamLog).RoundTrip(0xc000305040, 0xc000276700, 0x16e1f12, 0xf, 0xc0001bfc20) /Users/marcel/projects/couper-gateway/logging/upstream_log.go:87 +0x6e7 net/http/httputil.(*ReverseProxy).ServeHTTP(0xc000096730, 0x17b2260, 0xc000275d70, 0xc000276600) /Users/marcel/homebrew/Cellar/go/1.16/libexec/src/net/http/httputil/reverseproxy.go:288 +0x2d8 github.com/avenga/couper/handler.(*Proxy).RoundTrip(0xc000306d80, 0xc000276600, 0x1a9d528, 0x1613bc0, 0xc00024f000) /Users/marcel/projects/couper-gateway/handler/proxy.go:64 +0x2f2 github.com/avenga/couper/handler/producer.roundtrip(0x17a8340, 0xc000306d80, 0xc000276600, 0xc0003d43c0, 0xc000434bd0) /Users/marcel/projects/couper-gateway/handler/producer/result.go:66 +0x142 created by github.com/avenga/couper/handler/producer.Proxies.Produce /Users/marcel/projects/couper-gateway/handler/producer/proxy.go:44 +0x245 " </div> <div> <strong>Path:</strong> / </div> <div> <strong>Request-ID:</strong> c1qrhqgi7qknopja9lsg </div> </secti 15 on> </body>
Expected behavior
The text was updated successfully, but these errors were encountered:
The nc raw data thing may hide the real issue here, it's just the %s url parse error.
nc
%s
Found another one related to those bytes, I will open another issue if its reproducible.
Sorry, something went wrong.
Successfully merging a pull request may close this issue.
Describe the bug
This client requests triggers a nil pointer panic which gets written to the error template but can not be found in any log fields.
To Reproduce
Steps to reproduce the behavior:
couper version
ordocker run avenga/couper version
1.0
*.hcl
. Remove sensitive data.curl
call for reproduction3.1 You may use your browsers developer console and hit
copy as curl
.quoted input: "\n\x00\n\x00"
raw input:
logs:
response:
Expected behavior
The text was updated successfully, but these errors were encountered: