]> xenbits.xensource.com Git - libvirt.git/commitdiff
virsh: Honour --readonly with cmdConnect and no name
authorMartin Kletzander <mkletzan@redhat.com>
Fri, 18 Aug 2017 14:35:23 +0000 (16:35 +0200)
committerMartin Kletzander <mkletzan@redhat.com>
Tue, 29 Aug 2017 09:17:16 +0000 (11:17 +0200)
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1436042

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
tools/virsh.c

index 94bb7ff6c93afa46d31d085eaa5e504f1cca7593..527c1a4181d221b9aeb56c56a477888b755f103a 100644 (file)
@@ -218,7 +218,13 @@ virshReconnect(vshControl *ctl, const char *name, bool readonly, bool force)
 {
     bool connected = false;
     virshControlPtr priv = ctl->privData;
-    bool ro = name ? readonly : priv->readonly;
+
+    /* If the flag was not specified, then it depends on whether we are
+     * reconnecting to the current URI (in which case we want to keep the
+     * readonly flag as it was) or to a specified URI in which case it
+     * should stay false */
+    if (!readonly && !name)
+        readonly = priv->readonly;
 
     if (priv->conn) {
         int ret;
@@ -233,7 +239,7 @@ virshReconnect(vshControl *ctl, const char *name, bool readonly, bool force)
                                   "disconnect from the hypervisor"));
     }
 
-    priv->conn = virshConnect(ctl, name ? name : ctl->connname, ro);
+    priv->conn = virshConnect(ctl, name ? name : ctl->connname, readonly);
 
     if (!priv->conn) {
         if (disconnected)