summary refs log tree commit diff stats
path: root/ui/vnc.c
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2015-03-10 16:27:34 +0000
committerGerd Hoffmann <kraxel@redhat.com>2015-03-12 08:22:12 +0100
commit8c7d06457311b13bc65c9b24df5d895b2826b8c5 (patch)
treec69d51f06879eb07a5715d0a07def27df7196330 /ui/vnc.c
parente556032960eaa403da6069aa9abf4dcaddefd710 (diff)
downloadfocaccia-qemu-8c7d06457311b13bc65c9b24df5d895b2826b8c5.tar.gz
focaccia-qemu-8c7d06457311b13bc65c9b24df5d895b2826b8c5.zip
ui: fix regression in x509verify parameter for VNC server
The 'x509verify' parameter is documented as taking a path to the
x509 certificates, ie the same syntax as the 'x509' parameter.

  commit 4db14629c38611061fc19ec6927405923de84f08
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   Tue Sep 16 12:33:03 2014 +0200

    vnc: switch to QemuOpts, allow multiple servers

caused a regression by turning 'x509verify' into a boolean
parameter instead. This breaks setup from libvirt and is not
consistent with the docs.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'ui/vnc.c')
-rw-r--r--ui/vnc.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/ui/vnc.c b/ui/vnc.c
index db8409b963..b514777c6e 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -3303,7 +3303,7 @@ static QemuOptsList qemu_vnc_opts = {
             .type = QEMU_OPT_BOOL,
         },{
             .name = "x509verify",
-            .type = QEMU_OPT_BOOL,
+            .type = QEMU_OPT_STRING,
         },{
             .name = "acl",
             .type = QEMU_OPT_BOOL,
@@ -3410,9 +3410,14 @@ void vnc_display_open(const char *id, Error **errp)
 #ifdef CONFIG_VNC_TLS
     tls  = qemu_opt_get_bool(opts, "tls", false);
     path = qemu_opt_get(opts, "x509");
+    if (!path) {
+        path = qemu_opt_get(opts, "x509verify");
+        if (path) {
+            vs->tls.x509verify = true;
+        }
+    }
     if (path) {
         x509 = true;
-        vs->tls.x509verify = qemu_opt_get_bool(opts, "x509verify", false);
         if (vnc_tls_set_x509_creds_dir(vs, path) < 0) {
             error_setg(errp, "Failed to find x509 certificates/keys in %s",
                        path);