- 02 6月, 2010 14 次提交
-
-
由 Luiz Capitulino 提交于
Previous commit added QMP documentation to the qemu-monitor.hx file, it's is a copy of this information. While it's good to keep it near code, maintaining two copies of the same information is too hard and has little benefit as we don't expect client writers to consult the code to find how to use a QMP command. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Gerd Hoffmann 提交于
This make sure we send a desktop resize message only in case we actually have to, using the new variables which track the clients desktop size. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Gerd Hoffmann 提交于
Don't send updates for screen areas which are outside the clients desktop. May happed with vnc clients which don't support the desktop resize message. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Gerd Hoffmann 提交于
Add two new variables to keep track of the vnc clients desktop size. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Gerd Hoffmann 提交于
In case the desktop did resize while the vnc connection setup was still in progress the client isn't informed about it. Send a desktop resize event as soon as the client told us it can handle deskop resize via set encodings message to make sure the client us up to date. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Gerd Hoffmann 提交于
Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
Add support for tight encoding [1]. This patch only add support for "basic" tight compression without any filter. [1] http://tigervnc.org/cgi-bin/rfbproto#tight-encoding. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
Some encodings like tight supports tiling (spliting in multiple sub-rectangles). So we needed a way to tell vnc_update_client() how much rectangles are in the buffer. zlib, raw and hextile always send a full rectangle. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
Makes sure we free all ressources used in zlib encoding (zlib stream and buffer). Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
Add a buffer_free() helper to free vnc buffers and remove some duplicated code in vnc_disconnect_finish(). Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
On init, values are already NULL, but we shouldn't try to reset them each time a client send a set encoding command because this break everything. For example, libvncclient re-send a set encoding command if the framebuffer is resized. This fix framebuffer resizing for zlib encoding. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
send_framebuffer_update() was calling hextile instead of zlib since commit 70a4568f. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
Add a small comment to explain why we need to start from the end of the array to set the right prefered encoding. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
This patch was wrong, because the loop was already reversed, so the first encoding was correctly set at the end of the loopp. This reverts commit 14eb8b68. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 25 5月, 2010 1 次提交
-
-
由 Gerd Hoffmann 提交于
Uses VNC_ENCODING_RICH_CURSOR. Adding XCURSOR support should be possible without much trouble. Shouldn't be needed though as RICH_CURSOR is a superset of XCURSOR. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 11 5月, 2010 1 次提交
-
-
由 Corentin Chary 提交于
message is a hint by the client as to its preference (the first encoding specified being most preferred)" Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 04 5月, 2010 2 次提交
-
-
由 Anthony Liguori 提交于
Commit 37c34d9d introduced a regression when using relative mouse mode with a client that understands the PointerTypeChange pseudo-encoding. Reported-by: NMarcelo Tosatti <mtosatti@redhat.com> Reported-by: NGerhard Wiesinger <lists@wiesinger.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Corentin Chary 提交于
This will allow to implement new encodings (tight, zrle, ..) in a cleaner way. This may hurt performances, because some functions like vnc_convert_pixel are not static anymore, but should not be a problem with gcc 4.5 and the new -flto. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 26 4月, 2010 1 次提交
-
-
由 Blue Swirl 提交于
Value stored is never read. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 10 4月, 2010 1 次提交
-
-
由 Daniel P. Berrange 提交于
The code processing incoming & sending outgoing messages from/to clients used embedded magic numbers for all message IDs. This made the code a little hard to follow. Add constants in the vnc.h header file for all message IDs and use them in the code Signed-off-by: NDaniel P. Berrange <berrange@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 20 3月, 2010 1 次提交
-
-
由 Anthony Liguori 提交于
When we switch to absolute mode, we send out a notification (if the client supports it). Today, we only send this notification when the client sends us a mouse event and we're in the wrong mode. Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 18 3月, 2010 1 次提交
-
-
由 Gerd Hoffmann 提交于
Add an option to disable the heuristics which try to keep capslock and numlock state for guest and host in sync. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 17 3月, 2010 1 次提交
-
-
由 Chris Webb 提交于
During boot, the screen gets resized to height 1 and a mouse click at this point will cause a division by zero when calculating the absolute pointer position from the pixel (x, y). Return a click in the middle of the screen instead in this case. Signed-off-by: NChris Webb <chris@arachsys.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 16 3月, 2010 1 次提交
-
-
由 Markus Armbruster 提交于
Commits 376253ec..731b0364 introduced global variable cur_mon, which points to the "default monitor" (if any), except during execution of monitor_read() or monitor_control_read() it points to the monitor from which we're reading instead (the "current monitor"). Monitor command handlers run within monitor_read() or monitor_control_read(). Default monitor and current monitor are really separate things, and squashing them together is confusing and error-prone. For instance, usb_host_scan() can run both in "info usbhost" and periodically via usb_host_auto_check(). It prints to cur_mon, which is what we want in the former case: the monitor executing "info usbhost". But since that's the default monitor in the latter case, it periodically spams the default monitor there. A few places use cur_mon to log stuff to the default monitor. If we ever log something while cur_mon points to current monitor instead of default monitor, the log temporarily "jumps" to another monitor. Whether that can or cannot happen isn't always obvious. Maybe logging to the default monitor (which may not even exist) is a bad idea, and we should log to stderr or a logfile instead. But that's outside the scope of this commit. Change cur_mon to point to the current monitor. Create new default_mon to point to the default monitor. Update users of cur_mon accordingly. This fixes the periodical spamming of the default monitor by usb_host_scan(). It also stops "log jumping", should that problem exist.
-
- 09 3月, 2010 1 次提交
-
-
由 Gerd Hoffmann 提交于
Use led status notification support in vnc. The qemu vnc server keeps track of the capslock and numlock states based on the key presses it receives from the vnc client. But this fails in case the guests idea of the capslock and numlock state changes for other reasons. One case is guest reboot (+ keyboard reset). Another case are more recent windows versions which reset capslock state before presenting the login screen. Usually guests use the keyboard leds to signal the capslock and numlock state to the user, so we can use this to better keep track of capslock and numlock state in the qemu vnc server. Also toggle the numlock and capslock states on keydown events (instead of keyup). Guests do the same. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 07 3月, 2010 1 次提交
-
-
由 Samuel Thibault 提交于
The combination of keymap support (-k option) and curses is currently very broken. The patch below fixes it by first extending keymap support to interpret the shift, ctrl, altgr and addupper keywords in keymaps, and to fix curses into properly using keymaps. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> Signed-off-by: NSamuel Thibault <samuel.thibault@ens-lyon.org>
-
- 11 2月, 2010 1 次提交
-
-
由 Amit Shah 提交于
Just a 1-1 conversion for now. Signed-off-by: NAmit Shah <amit.shah@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 06 2月, 2010 1 次提交
-
-
由 Paolo Bonzini 提交于
to= is handled in qemu-sockets.c inet_listen. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 27 1月, 2010 1 次提交
-
-
由 Stefano Stabellini 提交于
Hi all, this patch fixes another bug in vnc_refresh: calling vnc_update_client might cause vs to be free()ed, in this case we cannot access vs->next right after to examine the next item on the list. Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 20 1月, 2010 9 次提交
-
-
由 Luiz Capitulino 提交于
Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
It's emitted when a VNC client session is activated by QEMU, client's information such as port, IP and auth ID (if the session is authenticated) are provided. Event example: { "event": "VNC_INITIALIZED", "timestamp": {"seconds": 1263475302, "microseconds": 150772}, "data": { "server": { "auth": "sasl", "family": "ipv4", "service": "5901", "host": "0.0.0.0"}, "client": { "family": "ipv4", "service": "46089", "host": "127.0.0.1", "sasl_username": "lcapitulino" } } } Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
It's emitted when a VNC client disconnects from QEMU, client's information such as port and IP address are provided. Event example: { "event": "VNC_DISCONNECTED", "timestamp": { "seconds": 1262976601, "microseconds": 975795 }, "data": { "server": { "auth": "sasl", "family": "ipv4", "service": "5901", "host": "0.0.0.0" }, "client": { "family": "ipv4", "service": "58425", "host": "127.0.0.1", "sasl_username": "foo" } } } Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
It's emitted when a VNC client connects to QEMU, client's information such as port and IP address are provided. Note that this event is emitted right when the connection is established. This means that it happens before authentication procedure and session initialization. Event example: { "event": "VNC_CONNECTED", "timestamp": { "seconds": 1262976601, "microseconds": 975795 }, "data": { "server": { "auth": "sasl", "family": "ipv4", "service": "5901", "host": "0.0.0.0" }, "client": { "family": "ipv4", "service": "58425", "host": "127.0.0.1" } } } Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
When a disconnection happens the client's socket on QEMU side may become invalid, this way it won't be possible to query it to get client information, which is going to be needed by the future QMP VNC_DISCONNECTED event. To always have this information available we query the socket at connection time and cache the client info in struct VncState. Two function are introduced to perform this job. vnc_client_cache_addr() is called right when the connection is made, however the authentication information is not available at that moment so vnc_client_cache_auth() is called from protocol_client_init() to get auth info. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
It contains the socket adress family name, like "ipv4" or "ipv6". This is useful for clients so that they can interpret the 'host' key reliably. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
It's the SASL username, so it's better to call it 'sasl_username' to be consistent. Note that this change wouldn't be allowed if QMP were stable. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
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: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Luiz Capitulino 提交于
Currently the 'status' key is a string whose value can be "disabled" or "enabled", change it to the QMP's standard 'enabled' key, which is a bool. Note that 'status' in being dropped and this wouldn't be allowed if QMP were stable. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 13 1月, 2010 1 次提交
-
-
由 Stefano Stabellini 提交于
Hi all, calling vnc_update_client in vnc_refresh might have the unlikely side effect of setting vd->timer = NULL, if the last vnc client disconnected. In this case we have to return from vnc_refresh without updating the timer, otherwise we cause a segfault. Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 12 12月, 2009 1 次提交
-
-
由 Luiz Capitulino 提交于
Return a QDict with server information. Connected clients are returned as a QList of QDicts. The new functions (vnc_qdict_remote_addr(), vnc_qdict_local_addr() and put_addr_qdict()) are used to insert 'host' and 'service' information in the returned QDict. This patch is big, but I don't see how to split it. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-