vnc: Fix password expiration through 'change vnc ""' (v2)
commit1cd20f8bf0ecb9d1d1bd5e2ffab3b88835380c9b
authorAnthony Liguori <aliguori@us.ibm.com>
Mon, 31 Jan 2011 20:27:36 +0000 (31 14:27 -0600)
committerAnthony Liguori <aliguori@us.ibm.com>
Tue, 1 Feb 2011 21:16:48 +0000 (1 15:16 -0600)
treee7fc6348182fa6356dc6af5912ee96249bf8ab31
parente321c34aa1d2560bea4d525af66417147467c515
vnc: Fix password expiration through 'change vnc ""' (v2)

commit 52c18be9e99dabe295321153fda7fce9f76647ac introduced a regression in the
change vnc password command that changed the behavior of setting the VNC
password to an empty string from disabling login to disabling authentication.

This commit refactors the code to eliminate this overloaded semantics in
vnc_display_password and instead introduces the vnc_display_disable_login.   The
monitor implementation then determines the behavior of an empty or missing
string.

Recently, a set_password command was added that allows both the Spice and VNC
password to be set.  This command has not shown up in a release yet so the
behavior is not yet defined.

This patch proposes that an empty password be treated as an empty password with
no special handling.  For specifically disabling login, I believe a new command
should be introduced instead of overloading semantics.

I'm not sure how Spice handles this but I would recommend that we have Spice
and VNC have consistent semantics here for the 0.14.0 release.

Reported-by: Neil Wilson <neil@aldur.co.uk>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
---
v1 -> v2
 - Add a proper return to make sure that login is really disabled instead of
   relying on the VNC server to treat empty passwords specially
console.h
monitor.c
ui/vnc.c