Skip to content
New issue

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

Crash when a request carries more than 64 http headers #10

Open
wanlill opened this issue Oct 16, 2013 · 2 comments
Open

Crash when a request carries more than 64 http headers #10

wanlill opened this issue Oct 16, 2013 · 2 comments
Assignees

Comments

@wanlill
Copy link

wanlill commented Oct 16, 2013

here is a bug, if we make a http request with more than 64 http headers, then varnish will issue a 413 error, and this will go on to call vcl_error, however, vcl_error may already be hooked by lib-parsereq, thus the hooked error function will be called. The hooked error function will try to initialise the module and do http_SetHeader. Here is the problem, the call to http_SetHeader will fail because there are already 64 headers, so parsereq-mod will keep trying to reinitialise itself and exhaust the stack, finally core dumped.
screen shot 2013-10-16 at 6 15 48 pm

@ghost ghost assigned xcir Oct 27, 2013
@xcir
Copy link
Owner

xcir commented Oct 27, 2013

This dump seem to old version.
Probably this issue not fixed by latest version.
But, I want clarify to bug or old bug.
Can you upgrade latest version?

@wanlill
Copy link
Author

wanlill commented Jan 9, 2014

I am afraid that the new version still have this flaw, because a malformed request with more than 64 http request header can still prevent a new header (which we use in libvmod-parsereq) from being set, thus coredump

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants