[libsoup/gnome-3-26] session: don't request Keep-Alive for upgraded connections



commit 87eefb31bf582fe83130afb75f4b6723b874936f
Author: Lionel Landwerlin <llandwerlin gmail com>
Date:   Mon Oct 9 17:12:47 2017 +0100

    session: don't request Keep-Alive for upgraded connections
    
    When an upgrade is requested through "Connection: Upgrade" (used for
    setting up websocket connection for example), there is no need to
    request Keep-Alive.
    
    It turns out doing both is confusing some servers based on the h2o
    library.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=788723

 libsoup/soup-session.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
---
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
index 8ce3d51..3387f68 100644
--- a/libsoup/soup-session.c
+++ b/libsoup/soup-session.c
@@ -1314,7 +1314,9 @@ soup_session_send_queue_item (SoupSession *session,
        if (!soup_message_headers_header_contains (item->msg->request_headers,
                                                   "Connection", "Keep-Alive") &&
            !soup_message_headers_header_contains (item->msg->request_headers,
-                                                  "Connection", "close")) {
+                                                  "Connection", "close") &&
+           !soup_message_headers_header_contains (item->msg->request_headers,
+                                                  "Connection", "Upgrade")) {
                soup_message_headers_append (item->msg->request_headers,
                                             "Connection", "Keep-Alive");
        }


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