[libsoup] logger: handle all possible HTTP versions in SoupHTTPVersion



commit fed46517d80ac416869b44836d37ef884419e476
Author: Patrick Griffis <pgriffis igalia com>
Date:   Sun May 2 13:20:12 2021 -0500

    logger: handle all possible HTTP versions in SoupHTTPVersion

 libsoup/soup-logger.c | 12 ++++++------
 libsoup/soup-misc.c   | 16 ++++++++++++++++
 libsoup/soup-misc.h   |  2 ++
 3 files changed, 24 insertions(+), 6 deletions(-)
---
diff --git a/libsoup/soup-logger.c b/libsoup/soup-logger.c
index 0c56d797..6690c706 100644
--- a/libsoup/soup-logger.c
+++ b/libsoup/soup-logger.c
@@ -649,17 +649,17 @@ print_request (SoupLogger *logger, SoupMessage *msg,
        uri = soup_message_get_uri (msg);
        if (soup_message_get_method (msg) == SOUP_METHOD_CONNECT) {
                soup_logger_print (logger, SOUP_LOGGER_LOG_MINIMAL, '>',
-                                  "CONNECT %s:%u HTTP/1.%d",
+                                  "CONNECT %s:%u HTTP/%s",
                                   g_uri_get_host (uri), g_uri_get_port (uri),
-                                  soup_message_get_http_version (msg));
+                                  soup_http_version_to_string (soup_message_get_http_version (msg)));
        } else {
                soup_logger_print (logger, SOUP_LOGGER_LOG_MINIMAL, '>',
-                                  "%s %s%s%s HTTP/1.%d",
+                                  "%s %s%s%s HTTP/%s",
                                   soup_message_get_method (msg),
                                    g_uri_get_path (uri),
                                   g_uri_get_query (uri) ? "?" : "",
                                   g_uri_get_query (uri) ? g_uri_get_query (uri) : "",
-                                  soup_message_get_http_version (msg));
+                                  soup_http_version_to_string (soup_message_get_http_version (msg)));
        }
 
        soup_logger_print (logger, SOUP_LOGGER_LOG_MINIMAL, '>',
@@ -729,8 +729,8 @@ print_response (SoupLogger *logger, SoupMessage *msg)
                return;
 
        soup_logger_print (logger, SOUP_LOGGER_LOG_MINIMAL, '<',
-                          "HTTP/1.%d %u %s\n",
-                          soup_message_get_http_version (msg),
+                          "HTTP/%s %u %s\n",
+                          soup_http_version_to_string (soup_message_get_http_version (msg)),
                           soup_message_get_status (msg), soup_message_get_reason_phrase (msg));
 
        soup_logger_print (logger, SOUP_LOGGER_LOG_MINIMAL, '<',
diff --git a/libsoup/soup-misc.c b/libsoup/soup-misc.c
index 76972cbf..717bc8ca 100644
--- a/libsoup/soup-misc.c
+++ b/libsoup/soup-misc.c
@@ -277,3 +277,19 @@ soup_get_accept_languages_from_system (void)
 
        return langs_str;
 }
+
+const char *
+soup_http_version_to_string (SoupHTTPVersion version)
+{
+        switch (version) {
+        case SOUP_HTTP_1_0:
+                return "1.0";
+        case SOUP_HTTP_1_1:
+                return "1.1";
+        case SOUP_HTTP_2_0:
+                return "2";
+        }
+
+        g_assert_not_reached ();
+        return NULL;
+}
diff --git a/libsoup/soup-misc.h b/libsoup/soup-misc.h
index c9722fea..656f05b5 100644
--- a/libsoup/soup-misc.h
+++ b/libsoup/soup-misc.h
@@ -74,6 +74,8 @@ gboolean           soup_host_matches_host    (const gchar *host,
 
 gchar *soup_get_accept_languages_from_system (void);
 
+const char *soup_http_version_to_string (SoupHTTPVersion version);
+
 G_END_DECLS
 
 #endif /* __SOUP_MISC_H__ */


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