-
-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
segfault in h2_session_send #3541
Comments
Can we reproduce this in any way with just libcurl? Can you re-run your crashing case with a debug-enabled libcurl so that we get symbols/variables too, maybe we can suggest some debugging points or checks to do as well? |
This is with current
will try |
Can you try and see if this patch makes any difference? When the http2 connection is checked it now uses its --- a/lib/url.c
+++ b/lib/url.c
@@ -962,10 +962,11 @@ static bool extract_if_dead(struct connectdata *conn,
bool dead;
if(conn->handler->connection_check) {
/* The protocol has a special method for checking the state of the
connection. Use it to check if the connection is dead. */
unsigned int state;
+ conn->data = data; /* use this transfer for now */
state = conn->handler->connection_check(conn, CONNCHECK_ISDEAD);
dead = (state & CONNRESULT_DEAD);
}
else {
/* Use the general method for determining the death of a connection */ |
Yes, this fixes it. I cannot reproduce the segfault anymore with the patch applied. |
The http2 code for connection checking needs a transfer to use. Make sure a working one is set before handler->connection_check() is called. Reported-by: jnbr on github Fixes #3541
Thanks a lot! |
I did this
cargo install cargo-watch
I expected the following
cargo should exit without error. This worked with libcurl-7.63.0 but fails since fb445a1
Here is a backtrace:
curl/libcurl version
curl 7.64.0 (x86_64-unknown-linux-musl) libcurl/7.64.0 LibreSSL/2.8.3 zlib/1.2.11 libssh2/1.8.0 nghttp2/1.36.0
Release-Date: 2019-02-06
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz HTTP2 UnixSockets HTTPS-proxy
operating system
Voidlinux x86_64-musl
The text was updated successfully, but these errors were encountered: