ui: fix reporting of VNC auth in query-vnc-servers
commit2a7e6857cd3178d705a49c4adde2f3af26ed3ae1
authorDaniel P. Berrange <berrange@redhat.com>
Fri, 3 Feb 2017 12:06:43 +0000 (3 12:06 +0000)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 8 Feb 2017 13:59:37 +0000 (8 14:59 +0100)
tree66ead94969bcd00145240e4262688942a5eef09d
parent1b1aeb5828c978af2ec4478e552884004f23c470
ui: fix reporting of VNC auth in query-vnc-servers

Currently the VNC authentication info is emitted at the
top level of the query-vnc-servers data. This is wrong
because the authentication scheme differs between plain
and websockets when TLS is enabled. We should instead
report auth against the individual servers. e.g.

(QEMU) query-vnc-servers
{
    "return": [
        {
            "clients": [],
            "id": "default",
            "auth": "vencrypt",
            "vencrypt": "x509-vnc",
            "server": [
                {
                    "host": "127.0.0.1"
                    "service": "5901",
                    "websocket": false,
                    "family": "ipv4",
                    "auth": "vencrypt",
                    "vencrypt": "x509-vnc"
                },
                {
                    "host": "127.0.0.1",
                    "service": "5902",
                    "websocket": true,
                    "family": "ipv4",
                    "auth": "vnc"
                }
            ]
        }
    ]
}

This also future proofs the QMP schema so that we can
cope with multiple VNC server instances, listening on
different interfaces or ports, with different auth
setup.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Message-id: 20170203120649.15637-3-berrange@redhat.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
qapi-schema.json
ui/vnc.c