From: Gonglei <arei.gong...@huawei.com> Beside those problems, I also found another issue, see below pls.
Qemu command line: $ ./qemu-system-x86_64 -enable-kvm -m 4096 -smp 4 -name redhat6.2 -drive file=/home/redhat.img,if=none,id=drive-ide0-0-0 -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1 -drive file=/mnt/sdb/gonglei/iso/rhel-server-7.0-x86_64-dvd.iso,if=none,id=drive-ide0-0-1 -device ide-cd,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1,bootindex=4 -qmp unix:/tmp/qmp,server,nowait -monitor stdio -vnc 0.0.0.0:10,password,sasl QEMU 2.1.50 monitor - type 'help' for more information (qemu) change vnc password 123 (qemu) change vnc abc error parsing address 'abc' ---> an intended result because of I set a invalid value 'abc' (qemu) change vnc password 456 If you want use passwords please enable password auth using '-vnc ${dpy},password'.Could not set password --> Oops. I shouldn't get this output. (qemu) Though we call qmp_change_vnc() failed, the content of global variable vnc_display still will change, such as 'vs->auth = VNC_AUTH_NONE' now. I think this is not reasonable, but I have not good idea to address this issue. Maybe we should create a function to save the possible changed property of vnc_display, so that we can recovery vnc_display when we changed vnc failed. What's your opinion? Gerd? Thanks, Gonglei (3): vnc: remove superfluous vnc_display_close() vnc: fix memory leak at vnc_display_open vnc: remove superfluous DisplayState *ds parameter include/ui/console.h | 2 +- qmp.c | 2 +- ui/vnc.c | 36 ++++-------------------------------- vl.c | 2 +- 4 files changed, 7 insertions(+), 35 deletions(-) -- 1.7.12.4