aboutsummaryrefslogtreecommitdiff
path: root/ui
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2012-05-24 10:55:01 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2012-05-30 10:28:44 +0800
commit1643f2b232628905e8f32965ff36a87bd53b93c5 (patch)
treec03f698a9925bf08c98264a4ff1382c72be45c4a /ui
parent1352672860399b40965b5093dd026688979e60a5 (diff)
downloadqemu-1643f2b232628905e8f32965ff36a87bd53b93c5.zip
qemu-1643f2b232628905e8f32965ff36a87bd53b93c5.tar.gz
qemu-1643f2b232628905e8f32965ff36a87bd53b93c5.tar.bz2
vnc: fix segfault in vnc_display_pw_expire()
NULL pointer dereference in case no vnc server is configured. Catch this and return -EINVAL like vnc_display_password() does. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'ui')
-rw-r--r--ui/vnc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ui/vnc.c b/ui/vnc.c
index be384a5..54bc5ad 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -2849,6 +2849,10 @@ int vnc_display_pw_expire(DisplayState *ds, time_t expires)
{
VncDisplay *vs = ds ? (VncDisplay *)ds->opaque : vnc_display;
+ if (!vs) {
+ return -EINVAL;
+ }
+
vs->expires = expires;
return 0;
}