-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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 in janus_http.c due to "Unsupported method" #2118
Comments
Edited your post to put log and code snippets in code blocks. I managed to replicate the issue, and using libasan it mentions a heap-use-after-free:
This should give me enough to look into it, I'll update the issue when I know more, |
Wow, you are quick! |
Don't get used to it 😝 |
The small commit above fixes the issue for me. Please let me know if it's still an issue for you, and in case we'll reopen. Thanks for spotting the problem! |
It works! Your responsiveness is amazing! |
I found a deterministic crash in janus_http.c. I'm able to reproduce the crash on both the master branch and release 0.9.3. To reproduce the crash yourself, just do the following:
(1) start janus (with http server running at default port 8088)
(2) telnet <your_janus_server> 8088
(3) type line "a b c" followed by an empty line, which creates an illegal HTTP request with an unsupported method "a"
Janus crashes immediately after returning:
It also logs a line that looks like:
The coredump is not giving anything particularly useful. It just says something like:
But I was able to track down the exact location of the crash by adding tons of printf. It is inside janus_http.c: janus_http_request_completed(...), on the line that states:
I'm don't yet know the janus code well enough to propose a fix. But you guys should be able to fix it very quickly, as it's deterministic to reproduce.
-- Yin
The text was updated successfully, but these errors were encountered: