History | View | Annotate | Download (17.5 kB)
TLS support for VNC Websockets
Added TLS support to the VNC QEMU Websockets implementation.VNC-TLS needs to be enabled for this feature to be used.
The required certificates are specified as in case of VNC-TLSwith the VNC parameter "x509=<path>".
If the server certificate isn't signed by a rooth authority it needs to...
vnc: Support for LED state extension
Signed-off-by: Lei Li <lilei@linux.vnet.ibm.com>Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>Message-id: 1366867752-11578-3-git-send-email-lilei@linux.vnet.ibm.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
console: gui timer fixes
Make gui update rate adaption code in gui_update() actually work.Sprinkle in a tracepoint so you can see the code at work. Removethe update rate adaption code in vnc and make vnc simply use thegeneric bits instead.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
console: kill DisplayState->opaque
It's broken by design. There can be multiple DisplayChangeListenerinstances, so they simply can't store state in the (single) DisplayStatestruct. Try 'qemu -display gtk -vnc :0', watch it crash & burn.
With DisplayChangeListenerOps having a more sane interface now we can...
vnc: stop using DisplayState
Rework DisplayStateListener callbacks to not use the DisplayStateany more.
vnc: added buffer_advance function
Following Anthony Liguori's Websocket implementation I have added thebuffer_advance function to VNC and replaced all related buffer memmoveoperations with it.
Signed-off-by: Tim Hardeck <thardeck@suse.de>Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>...
vnc: added initial websocket protocol support
This patch adds basic Websocket Protocol version 13 - RFC 6455 - supportto QEMU VNC. Binary encoding support on the client side is mandatory.
Because of the GnuTLS requirement the Websockets implementation is...
vnc: fix possible uninitialized removals
Some VncState values are not initialized before the Websocket handshake.If it fails QEMU segfaults during the cleanup. To prevent this behaviorintialization checks are added.
Signed-off-by: Tim Hardeck <thardeck@suse.de>...
misc: move include files to include/qemu/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
monitor: move include files to include/monitor/
ui: move files to ui/ and include/ui/
Merge branch 'trivial-patches' of git://github.com/stefanha/qemu
vnc: add missing static
Add missing 'static' qualifiers.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
pixman/vnc: use pixman images in vnc.
The vnc code uses three DisplaySurfaces:
First is the surface of the actual QemuConsole, usually the guestscreen, but could also be a text console (monitor/serial reachable viaCtrl-Alt-<nr> keys). This is left as-is....
Remove support for non-threaded VNC server
QEMU now has a fundamental requirement for pthreads, so thereis no compelling reason to retain support for the non-threadedVNC server. Remove the --{enable,disable}-vnc-thread configurearguments, and all CONFIG_VNC_THREAD conditionals...
vnc: don't mess up with iohandlers in the vnc thread
The threaded VNC servers messed up with QEMU fd handlers withoutany kind of locking, and that can cause some nasty race conditions.
Using qemu_mutex_lock_iothread() won't work because vnc_dpy_cpy(),which will wait for the current job queue to finish, can be called with...
vnc: implement shared flag handling.
VNC clients send a shared flag in the client init message. Up to nowqemu completely ignores this. This patch implements shared flaghandling. It comes with three policies: By default qemu behaves as onewould expect: Asking for a exclusive access grants exclusive access to...
Store VNC auth scheme per-client as well as per-server
A future patch will introduce a situation where differentclients may have different authentication schemes set.When a new client arrives, copy the 'auth' and 'subauth'fields from VncDisplay into the client's VncState, and...
vnc: Fix stack corruption and other bitmap related bugs
Commit bc2429b9174ac2d3c56b7fd35884b0d89ec7fb02 introduceda severe bug (stack corruption).
bitmap_clear was called with a wrong argumentwhich caused out-of-bound writes to the local variable width_mask....
vnc: use the new generic bitmap functions
Switch to bitmap.h and bitops.h instead of redefining our own bitmaphelpers.
Signed-off-by: Corentin Chary <corentincj@iksaif.net>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
vnc: add a non-adaptive option
This option allow to disable adaptive behaviors in some encodings.
vnc: add a way to get the update frequency for a given region
This patch compute the update frequency (in Hz) for each 64x64 rects.Any adaptive encoding can get this value using vnc_update_freq(), andswitch to a lossy encoding if the value is too high....
vnc: refresh lossy rect after a given timeout
If an adaptive encoding has choosen to send a lossy updatebased on the result of vnc_update_freq(), then it should advertiseit with vnc_sent_lossy_rect(). This will allow to automatically refreshthis rect once it's static again....
vnc: Add ZRLE and ZYWRLE encodings.
Add ZRLE [1] and ZYWRLE [2] encodings. The code is inspire^W stolenfrom libvncserver (again), but have been rewriten to match QEMU codingstyle.
[1] http://www.realvnc.com/docs/rfbproto.pdf[2] http://micro-vnc.jp/research/remote_desktop_ng/ZYWRLE/publications/...
vnc: support password expire
This patch adds support for expiring passwords to vnc. It adds a newvnc_display_pw_expire() function which specifies the time when thepassword will expire.
vnc: tight add PNG encoding
Introduce a new encoding: VNC_ENCODING_TIGHT_PNG [1] (-269) with a newtight filter VNC_TIGHT_PNG (0x0A). When the client tells it supports the Tight PNGencoding, the server will use tight, but will always send encoding pixels using...
vnc: encapsulate encoding members
This will allow to implement the threaded VNC server in amore cleaner way.
vnc: threaded VNC server
Implement a threaded VNC server using the producer-consumer model.The main thread will push encoding jobs (a list a rectangles to update)in a queue, and the VNC worker thread will consume that queue and sendframebuffer updates to the output buffer....
ui: move all ui components in ui/
Move sdl, vnc, curses and cocoa UI into ui/ to cleanupthe root directory. Also remove some unnecessary explicittargets from Makefile.
aliguori: fix build when srcdir != objdir
Signed-off-by: Corentin Chary <corentincj@iksaif.net>...