[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 03/10] vnc: add display id to acl names
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 03/10] vnc: add display id to acl names |
Date: |
Mon, 12 Jan 2015 13:53:50 +0100 |
In case the display id is "default" (which is the one you get if you
don't explicitly assign one) we keep the old name scheme, without
display, for backward compatibility reasons.
Signed-off-by: Gerd Hoffmann <address@hidden>
Reviewed-by: Gonglei <address@hidden>
---
ui/vnc.c | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/ui/vnc.c b/ui/vnc.c
index fce4861..1b86365 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -3206,18 +3206,36 @@ void vnc_display_open(const char *id, const char
*display, Error **errp)
#ifdef CONFIG_VNC_TLS
if (acl && x509 && vs->tls.x509verify) {
- if (!(vs->tls.acl = qemu_acl_init("vnc.x509dname"))) {
+ char *aclname;
+
+ if (strcmp(vs->id, "default") == 0) {
+ aclname = g_strdup("vnc.x509dname");
+ } else {
+ aclname = g_strdup_printf("vnc.%s.x509dname", vs->id);
+ }
+ vs->tls.acl = qemu_acl_init(aclname);
+ if (!vs->tls.acl) {
fprintf(stderr, "Failed to create x509 dname ACL\n");
exit(1);
}
+ g_free(aclname);
}
#endif
#ifdef CONFIG_VNC_SASL
if (acl && sasl) {
- if (!(vs->sasl.acl = qemu_acl_init("vnc.username"))) {
+ char *aclname;
+
+ if (strcmp(vs->id, "default") == 0) {
+ aclname = g_strdup("vnc.username");
+ } else {
+ aclname = g_strdup_printf("vnc.%s.username", vs->id);
+ }
+ vs->sasl.acl = qemu_acl_init(aclname);
+ if (!vs->sasl.acl) {
fprintf(stderr, "Failed to create username ACL\n");
exit(1);
}
+ g_free(aclname);
}
#endif
--
1.8.3.1
- [Qemu-devel] [PATCH 00/10] vnc: add support for multiple vnc displays, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 10/10] monitor: add vnc websockets, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 02/10] vnc: remove unused DisplayState parameter, add id instead., Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 03/10] vnc: add display id to acl names,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 01/10] vnc: remove vnc_display global, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 09/10] monitor: add query-vnc-servers command, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 06/10] vnc: update docs/multiseat.txt, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 05/10] vnc: allow binding servers to qemu consoles, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 04/10] vnc: switch to QemuOpts, allow multiple servers, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 07/10] vnc: track & limit connections, Gerd Hoffmann, 2015/01/12
- [Qemu-devel] [PATCH 08/10] vnc: factor out qmp_query_client_list, Gerd Hoffmann, 2015/01/12