[virt-tools-list] [PATCH virt-viewer v3] remote-viewer: Show authentication dialog again if in kiosk mode and connecting to ovirt

Eduardo Lima (Etrunko) etrunko at redhat.com
Thu Jun 8 21:30:19 UTC 2017


Similar to previous commits, but the case for connecting directly to
ovirt:// URIs was not dealt with.

Related: https://bugzilla.redhat.com/show_bug.cgi?id=1446161

Signed-off-by: Eduardo Lima (Etrunko) <etrunko at redhat.com>
---
v3: *Really* fix loop conditional.
---
 src/remote-viewer.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/remote-viewer.c b/src/remote-viewer.c
index 2db76bc..4850d7e 100644
--- a/src/remote-viewer.c
+++ b/src/remote-viewer.c
@@ -738,19 +738,25 @@ authenticate_cb(RestProxy *proxy, G_GNUC_UNUSED RestProxyAuth *auth,
     gchar *password = NULL;
     VirtViewerWindow *window;
     gboolean success = FALSE;
+    gboolean kiosk = FALSE;
 
     g_object_get(proxy,
                  "username", &username,
                  NULL);
 
+    g_object_get(G_OBJECT(user_data), "kiosk", &kiosk, NULL);
+
     if (username == NULL || *username == '\0')
         username = g_strdup(g_get_user_name());
 
     window = virt_viewer_app_get_main_window(VIRT_VIEWER_APP(user_data));
-    success = virt_viewer_auth_collect_credentials(virt_viewer_window_get_window(window),
-                                                   "oVirt",
-                                                   NULL,
-                                                   &username, &password);
+    do {
+        success = virt_viewer_auth_collect_credentials(virt_viewer_window_get_window(window),
+                                                       "oVirt",
+                                                       NULL,
+                                                       &username, &password);
+    } while (kiosk && !success);
+
     if (success) {
         g_object_set(G_OBJECT(proxy),
                      "username", username,
-- 
2.9.4




More information about the virt-tools-list mailing list