[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[qemu-xen stable-4.16] hmp: Unbreak "change vnc"



commit 7637373b23f32fb88e100df455addc4107a054dc
Author:     Markus Armbruster <armbru@xxxxxxxxxx>
AuthorDate: Thu Sep 9 10:12:18 2021 +0200
Commit:     Michael Roth <michael.roth@xxxxxxx>
CommitDate: Tue Dec 14 08:56:41 2021 -0600

    hmp: Unbreak "change vnc"
    
    HMP command "change vnc" can take the password as argument, or prompt
    for it:
    
        (qemu) change vnc password 123
        (qemu) change vnc password
        Password: ***
        (qemu)
    
    This regressed in commit cfb5387a1d "hmp: remove "change vnc TARGET"
    command", v6.0.0.
    
        (qemu) change vnc passwd 123
        Password: ***
        (qemu) change vnc passwd
        (qemu)
    
    The latter passes NULL to qmp_change_vnc_password(), which is a no-no.
    Looks like it puts the display into "password required, but none set"
    state.
    
    The logic error is easy to miss in review, but testing should've
    caught it.
    
    Fix the obvious way.
    
    Fixes: cfb5387a1de2acda23fb5c97d2378b9e7ddf8025
    Cc: qemu-stable@xxxxxxxxxx
    Signed-off-by: Markus Armbruster <armbru@xxxxxxxxxx>
    Reviewed-by: Daniel P. Berrangé <berrange@xxxxxxxxxx>
    Reviewed-by: Gerd Hoffmann <kraxel@xxxxxxxxxx>
    Message-Id: <20210909081219.308065-2-armbru@xxxxxxxxxx>
    Signed-off-by: Laurent Vivier <laurent@xxxxxxxxx>
    (cherry picked from commit 6193344f9337f8b76cd44ce94a32c9900d907d35)
    Signed-off-by: Michael Roth <michael.roth@xxxxxxx>
---
 monitor/hmp-cmds.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
index e00255f7ee..a7e197a90b 100644
--- a/monitor/hmp-cmds.c
+++ b/monitor/hmp-cmds.c
@@ -1496,7 +1496,7 @@ void hmp_change(Monitor *mon, const QDict *qdict)
         }
         if (strcmp(target, "passwd") == 0 ||
             strcmp(target, "password") == 0) {
-            if (arg) {
+            if (!arg) {
                 MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, common);
                 monitor_read_password(hmp_mon, hmp_change_read_arg, NULL);
                 return;
--
generated by git-patchbot for /home/xen/git/qemu-xen.git#stable-4.16



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.