From 3d5627d79a32bea5337659652e09be0d009940a4 Mon Sep 17 00:00:00 2001 From: Marc-André Lureau Date: Wed, 12 Nov 2014 11:14:19 +0100 Subject: virt-viewer: allow connection to unix socket only server Even when the server doesn't provide a display connection address, virt-viewer is able to connect to guest with libvirt attach. --- src/virt-viewer.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/virt-viewer.c b/src/virt-viewer.c index c5fe4da..16b90fa 100644 --- a/src/virt-viewer.c +++ b/src/virt-viewer.c @@ -379,17 +379,18 @@ virt_viewer_extract_connect_info(VirtViewer *self, ghost = virt_viewer_extract_xpath_string(xmldesc, xpath); } else { xpath = g_strdup_printf("string(/domain/devices/graphics[@type='%s']/@socket)", type); - if ((unixsock = virt_viewer_extract_xpath_string(xmldesc, xpath)) == NULL) { - virt_viewer_app_simple_message_dialog(app, _("Cannot determine the graphic address for the guest %s"), - priv->domkey); - goto cleanup; - } + unixsock = virt_viewer_extract_xpath_string(xmldesc, xpath); } - if (ghost && gport) + if (ghost && gport) { g_debug("Guest graphics address is %s:%s", ghost, gport); - else if (unixsock) + } else if (unixsock) { g_debug("Guest graphics address is %s", unixsock); + } else { + g_debug("Using direct libvirt connection"); + retval = TRUE; + goto cleanup; + } uri = virConnectGetURI(priv->conn); if (virt_viewer_util_extract_host(uri, NULL, &host, &transport, &user, &port) < 0) { -- cgit