gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [gnurl] 100/153: http2: make sure to send after RST_STREAM


From: gnunet
Subject: [GNUnet-SVN] [gnurl] 100/153: http2: make sure to send after RST_STREAM
Date: Tue, 11 Sep 2018 12:52:51 +0200

This is an automated email from the git hooks/post-receive script.

ng0 pushed a commit to branch master
in repository gnurl.

commit c7ea4ddd2e5db304bc3170eeb8d5aa91f1921013
Author: Daniel Stenberg <address@hidden>
AuthorDate: Thu Aug 16 13:21:11 2018 +0200

    http2: make sure to send after RST_STREAM
    
    If this is the last stream on this connection, the RST_STREAM might not
    get pushed to the wire otherwise.
    
    Fixes #2882
    Closes #2887
    Researched-by: Michael Kaufmann
---
 lib/http2.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/lib/http2.c b/lib/http2.c
index e9ec73a6d..9380ca7cf 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -1146,6 +1146,9 @@ void Curl_http2_done(struct connectdata *conn, bool 
premature)
   struct HTTP *http = data->req.protop;
   struct http_conn *httpc = &conn->proto.httpc;
 
+  if(!httpc->h2) /* not HTTP/2 ? */
+    return;
+
   if(data->state.drain)
     drained_transfer(data, httpc);
 
@@ -1166,8 +1169,10 @@ void Curl_http2_done(struct connectdata *conn, bool 
premature)
 
   if(premature) {
     /* RST_STREAM */
-    nghttp2_submit_rst_stream(httpc->h2, NGHTTP2_FLAG_NONE, http->stream_id,
-                              NGHTTP2_STREAM_CLOSED);
+    if(!nghttp2_submit_rst_stream(httpc->h2, NGHTTP2_FLAG_NONE,
+                                  http->stream_id, NGHTTP2_STREAM_CLOSED))
+      (void)nghttp2_session_send(httpc->h2);
+
     if(http->stream_id == httpc->pause_stream_id) {
       infof(data, "stopped the pause stream!\n");
       httpc->pause_stream_id = 0;

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]