Blame SOURCES/kvm-io-include-full-error-message-in-websocket-handshake.patch

4a2fec
From 0ac33e4a0edae8877e2d400b9a3c5e7af902668f Mon Sep 17 00:00:00 2001
4a2fec
From: "Daniel P. Berrange" <berrange@redhat.com>
4a2fec
Date: Wed, 20 Dec 2017 17:56:44 +0100
4a2fec
Subject: [PATCH 04/42] io: include full error message in websocket handshake
4a2fec
 trace
4a2fec
MIME-Version: 1.0
4a2fec
Content-Type: text/plain; charset=UTF-8
4a2fec
Content-Transfer-Encoding: 8bit
4a2fec
4a2fec
RH-Author: Daniel P. Berrange <berrange@redhat.com>
4a2fec
Message-id: <20171220175702.29663-3-berrange@redhat.com>
4a2fec
Patchwork-id: 78458
4a2fec
O-Subject: [RHV-7.5 qemu-kvm-rhev PATCH v2 02/20] io: include full error message in websocket handshake trace
4a2fec
Bugzilla: 1518649
4a2fec
RH-Acked-by: John Snow <jsnow@redhat.com>
4a2fec
RH-Acked-by: Jeffrey Cody <jcody@redhat.com>
4a2fec
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
4a2fec
4a2fec
When the websocket handshake fails it is useful to log the real
4a2fec
error message via the trace points for debugging purposes.
4a2fec
4a2fec
Fixes bug: #1715186
4a2fec
4a2fec
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
4a2fec
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
4a2fec
(cherry picked from commit 3a3f8705962c8c8a47a9b981ffd5aab7274ad508)
4a2fec
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
4a2fec
---
4a2fec
 io/channel-websock.c | 7 ++++---
4a2fec
 io/trace-events      | 2 +-
4a2fec
 2 files changed, 5 insertions(+), 4 deletions(-)
4a2fec
4a2fec
diff --git a/io/channel-websock.c b/io/channel-websock.c
4a2fec
index f5fac5b..6ddcec1 100644
4a2fec
--- a/io/channel-websock.c
4a2fec
+++ b/io/channel-websock.c
4a2fec
@@ -507,7 +507,7 @@ static gboolean qio_channel_websock_handshake_send(QIOChannel *ioc,
4a2fec
                             &err;;
4a2fec
 
4a2fec
     if (ret < 0) {
4a2fec
-        trace_qio_channel_websock_handshake_fail(ioc);
4a2fec
+        trace_qio_channel_websock_handshake_fail(ioc, error_get_pretty(err));
4a2fec
         qio_task_set_error(task, err);
4a2fec
         qio_task_complete(task);
4a2fec
         return FALSE;
4a2fec
@@ -516,7 +516,8 @@ static gboolean qio_channel_websock_handshake_send(QIOChannel *ioc,
4a2fec
     buffer_advance(&wioc->encoutput, ret);
4a2fec
     if (wioc->encoutput.offset == 0) {
4a2fec
         if (wioc->io_err) {
4a2fec
-            trace_qio_channel_websock_handshake_fail(ioc);
4a2fec
+            trace_qio_channel_websock_handshake_fail(
4a2fec
+                ioc, error_get_pretty(wioc->io_err));
4a2fec
             qio_task_set_error(task, wioc->io_err);
4a2fec
             wioc->io_err = NULL;
4a2fec
             qio_task_complete(task);
4a2fec
@@ -547,7 +548,7 @@ static gboolean qio_channel_websock_handshake_io(QIOChannel *ioc,
4a2fec
          * client connection, as most of the time we have an
4a2fec
          * HTTP 4xx err response to send instead
4a2fec
          */
4a2fec
-        trace_qio_channel_websock_handshake_fail(ioc);
4a2fec
+        trace_qio_channel_websock_handshake_fail(ioc, error_get_pretty(err));
4a2fec
         qio_task_set_error(task, err);
4a2fec
         qio_task_complete(task);
4a2fec
         return FALSE;
4a2fec
diff --git a/io/trace-events b/io/trace-events
4a2fec
index 3d23369..6459f71 100644
4a2fec
--- a/io/trace-events
4a2fec
+++ b/io/trace-events
4a2fec
@@ -46,7 +46,7 @@ qio_channel_websock_new_server(void *ioc, void *master) "Websock new client ioc=
4a2fec
 qio_channel_websock_handshake_start(void *ioc) "Websock handshake start ioc=%p"
4a2fec
 qio_channel_websock_handshake_pending(void *ioc, int status) "Websock handshake pending ioc=%p status=%d"
4a2fec
 qio_channel_websock_handshake_reply(void *ioc) "Websock handshake reply ioc=%p"
4a2fec
-qio_channel_websock_handshake_fail(void *ioc) "Websock handshake fail ioc=%p"
4a2fec
+qio_channel_websock_handshake_fail(void *ioc, const char *msg) "Websock handshake fail ioc=%p err=%s"
4a2fec
 qio_channel_websock_handshake_complete(void *ioc) "Websock handshake complete ioc=%p"
4a2fec
 
4a2fec
 # io/channel-command.c
4a2fec
-- 
4a2fec
1.8.3.1
4a2fec