Blame 0420-Error-out-when-tls-channel-option-is-used-without-TL.patch

Hans de Goede 56753f
From d01f59d652b8ac906ecd129afa338f56b2aaef90 Mon Sep 17 00:00:00 2001
Hans de Goede 56753f
From: Christophe Fergeau <cfergeau@redhat.com>
Hans de Goede 56753f
Date: Fri, 24 Feb 2012 18:28:32 +0100
Hans de Goede 56753f
Subject: [PATCH 420/434] Error out when tls-channel option is used without
Hans de Goede 56753f
 TLS
Hans de Goede 56753f
Hans de Goede 56753f
It's currently possible to setup spice channels using TLS when
Hans de Goede 56753f
no TLS port has been specified (ie TLS is disabled). This cannot
Hans de Goede 56753f
work, so better to error out in such a situation.
Hans de Goede 56753f
Hans de Goede 56753f
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Hans de Goede 56753f
---
Hans de Goede 56753f
 ui/spice-core.c |    8 +++++++-
Hans de Goede 56753f
 1 file changed, 7 insertions(+), 1 deletion(-)
Hans de Goede 56753f
Hans de Goede 56753f
diff --git a/ui/spice-core.c b/ui/spice-core.c
Hans de Goede 56753f
index 8503f03..98356b0 100644
Hans de Goede 56753f
--- a/ui/spice-core.c
Hans de Goede 56753f
+++ b/ui/spice-core.c
Hans de Goede 56753f
@@ -511,6 +511,12 @@ static int add_channel(const char *name, const char *value, void *opaque)
Hans de Goede 56753f
     int rc;
Hans de Goede 56753f
 
Hans de Goede 56753f
     if (strcmp(name, "tls-channel") == 0) {
Hans de Goede 56753f
+        int *tls_port = opaque;
Hans de Goede 56753f
+        if (!*tls_port) {
Hans de Goede 56753f
+            error_report("spice: tried to setup tls-channel"
Hans de Goede 56753f
+                         " without specifying a TLS port");
Hans de Goede 56753f
+            exit(1);
Hans de Goede 56753f
+        }
Hans de Goede 56753f
         security = SPICE_CHANNEL_SECURITY_SSL;
Hans de Goede 56753f
     }
Hans de Goede 56753f
     if (strcmp(name, "plaintext-channel") == 0) {
Hans de Goede 56753f
@@ -680,7 +686,7 @@ void qemu_spice_init(void)
Hans de Goede 56753f
     spice_server_set_playback_compression
Hans de Goede 56753f
         (spice_server, qemu_opt_get_bool(opts, "playback-compression", 1));
Hans de Goede 56753f
 
Hans de Goede 56753f
-    qemu_opt_foreach(opts, add_channel, NULL, 0);
Hans de Goede 56753f
+    qemu_opt_foreach(opts, add_channel, &tls_port, 0);
Hans de Goede 56753f
 
Hans de Goede 56753f
     if (0 != spice_server_init(spice_server, &core_interface)) {
Hans de Goede 56753f
         error_report("failed to initialize spice server");
Hans de Goede 56753f
-- 
Hans de Goede 56753f
1.7.10
Hans de Goede 56753f