From patchwork Fri Feb 24 17:28:32 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christophe Fergeau X-Patchwork-Id: 142956 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [140.186.70.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 16386B6EE6 for ; Sat, 25 Feb 2012 04:28:55 +1100 (EST) Received: from localhost ([::1]:52614 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S0ywv-0003of-1i for incoming@patchwork.ozlabs.org; Fri, 24 Feb 2012 12:28:53 -0500 Received: from eggs.gnu.org ([208.118.235.92]:39291) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S0ywk-0003kW-Kt for qemu-devel@nongnu.org; Fri, 24 Feb 2012 12:28:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S0ywe-00085D-7o for qemu-devel@nongnu.org; Fri, 24 Feb 2012 12:28:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:14159) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S0ywe-00084h-06 for qemu-devel@nongnu.org; Fri, 24 Feb 2012 12:28:36 -0500 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q1OHSZvD009269 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 24 Feb 2012 12:28:35 -0500 Received: from teriyaki.redhat.com (ovpn-116-62.ams2.redhat.com [10.36.116.62]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id q1OHSWPP032008 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 24 Feb 2012 12:28:34 -0500 From: Christophe Fergeau To: qemu-devel@nongnu.org Date: Fri, 24 Feb 2012 18:28:32 +0100 Message-Id: <1330104512-14738-1-git-send-email-cfergeau@redhat.com> In-Reply-To: <4F47C6C0.2040506@redhat.com> References: <4F47C6C0.2040506@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.24 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.132.183.28 Cc: Gerd Hoffmann Subject: [Qemu-devel] [PATCHv3] Error out when tls-channel option is used without TLS X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org 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. --- ui/spice-core.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/ui/spice-core.c b/ui/spice-core.c index a374999..9a7912a 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -526,6 +526,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) { @@ -697,7 +703,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");