[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/8] VNC: Make 'auth' key mandatory
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] [PATCH 2/8] VNC: Make 'auth' key mandatory |
Date: |
Thu, 14 Jan 2010 14:50:53 -0200 |
There is no reason to have it as optional and the code
in the server and client gets slightly simpler if the
key is mandatory.
While there also do some cleanup on how the server info is
collected.
Signed-off-by: Luiz Capitulino <address@hidden>
---
vnc.c | 26 ++++++++++++++------------
1 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/vnc.c b/vnc.c
index ef86ef7..b5f3b64 100644
--- a/vnc.c
+++ b/vnc.c
@@ -122,7 +122,7 @@ static int put_addr_qdict(QDict *qdict, struct
sockaddr_storage *sa,
return 0;
}
-static int vnc_qdict_local_addr(QDict *qdict, int fd)
+static int vnc_server_addr_put(QDict *qdict, int fd)
{
struct sockaddr_storage sa;
socklen_t salen;
@@ -199,6 +199,16 @@ static const char *vnc_auth_name(VncDisplay *vd) {
return "unknown";
}
+static int vnc_server_info_put(QDict *qdict)
+{
+ if (vnc_server_addr_put(qdict, vnc_display->lsock) < 0) {
+ return -1;
+ }
+
+ qdict_put(qdict, "auth", qstring_from_str(vnc_auth_name(vnc_display)));
+ return 0;
+}
+
static QDict *do_info_vnc_client(Monitor *mon, VncState *client)
{
QDict *qdict;
@@ -263,8 +273,7 @@ void do_info_vnc_print(Monitor *mon, const QObject *data)
monitor_printf(mon, " address: %s:%s\n",
qdict_get_str(server, "host"),
qdict_get_str(server, "service"));
- monitor_printf(mon, " auth: %s\n",
- qdict_haskey(server, "auth") ? qdict_get_str(server, "auth") : "none");
+ monitor_printf(mon, " auth: %s\n", qdict_get_str(server, "auth"));
clients = qdict_get_qlist(server, "clients");
if (qlist_empty(clients)) {
@@ -285,7 +294,7 @@ void do_info_vnc_print(Monitor *mon, const QObject *data)
* - "enabled": true or false
* - "host": server's IP address
* - "service": server's port number
- * - "auth": authentication method (optional)
+ * - "auth": authentication method
* - "clients": a QList of all connected clients
*
* Clients are described by a QDict, with the following information:
@@ -323,14 +332,7 @@ void do_info_vnc(Monitor *mon, QObject **ret_data)
QOBJECT(clist));
assert(*ret_data != NULL);
- qdict = qobject_to_qdict(*ret_data);
-
- if (vnc_display->auth != VNC_AUTH_NONE) {
- qdict_put(qdict, "auth",
- qstring_from_str(vnc_auth_name(vnc_display)));
- }
-
- if (vnc_qdict_local_addr(qdict, vnc_display->lsock) < 0) {
+ if (vnc_server_info_put(qobject_to_qdict(*ret_data)) < 0) {
qobject_decref(*ret_data);
*ret_data = NULL;
}
--
1.6.6
- [Qemu-devel] [PATCH v0 0/8]: VNC events and cleanup, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 1/8] VNC: Use 'enabled' key instead of 'status', Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 2/8] VNC: Make 'auth' key mandatory,
Luiz Capitulino <=
- [Qemu-devel] [PATCH 3/8] VNC: Rename client's 'username' key, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 4/8] VNC: Add 'family' key, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 5/8] VNC: Cache client info at connection time, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 6/8] QMP: Introduce VNC_CONNECTED event, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 8/8] QMP: Introduce VNC_INITIALIZED event, Luiz Capitulino, 2010/01/14
- [Qemu-devel] [PATCH 7/8] QMP: Introduce VNC_DISCONNECTED event, Luiz Capitulino, 2010/01/14
- [Qemu-devel] Re: [PATCH v0 0/8]: VNC events and cleanup, Daniel P. Berrange, 2010/01/14