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