History | View | Annotate | Download (61.3 kB)
vnc: stop using DisplayState
Rework DisplayStateListener callbacks to not use the DisplayStateany more.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
misc: move include files to include/qemu/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
qapi: move include files to include/qobject/
pixman: fix vnc tight png/jpeg support
This patch adds an x argument to qemu_pixman_linebuf_fill so it canalso be used to convert a partial scanline. Then fix tight + png/jpegencoding by passing in the x+y offset, so the data is read from thecorrect screen location instead of the upper left corner....
pixman/vnc: remove dead code.
Switching the vnc server framebuffer to use 32bpp unconditionallyturns the code bits which handle 8 and 16 bpp into dead code.Remove them.
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....
pixman/vnc: remove rgb_prepare_row* functions
Let pixman do it instead.
Use glib memory allocation and free functions
qemu_malloc/qemu_free no longer exist after this commit.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
vnc: Fix compilation with --enable-vnc-png
Commit f26e428da505709ec03b2ed2c9eb3db82b30bd7b fixed compilationwith --enable-vnc-png, but broke it with --enable-vnc-png.
The breakage is caused by pngconfig.h which checks whethersetjmp.h was already included and fails because qemu-common.h...
Fix MinGW compilation when --enable-vnc-jpeg is specified
Fix conflicting types for 'INT32' in basetsd.h and jmorecfg.h byincluding qemu-common.h first.
Signed-off-by: Roy Tam <roytam@gmail.com>Acked-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
vnc: tight: Fix crash after 2GB of output
fix 2Gb integer overflow in in VNC tight and zlib encodings
As found by Roland Dreier <roland@purestorage.com> (excellentcatch!), when amount of VNC compressed data produced by zliband sent to client exceeds 2Gb, integer overflow occurs because...
ui/vnc-enc-tight.c: Fix compile failure if CONFIG_VNC_JPEG not defined
Add some missing #ifdefs to fix compilation failures in the !CONFIG_VNC_JPEGcase introduced by commit ce702e93.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
vnc: tight: tweak adaptive tight settings
The force_jpeg threshold was too low.
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: tight: use the update frequency to choose between lossy and lossless
Use the new update frequency infrastructure to use jpeg for regions withhigh update frequency.
vnc: fix uint8_t comparisons with negative values
Fix spelling in comments
multifuction -> multifunctionsuccessfull -> successful.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
vnc: use bswapNN() rather than bswap_NN()
bswap_NN() variants are not always available in CONFIG_MACHINE_BSWAP_H caseand bswapNN() are public APIs in "bswap.h".
Signed-off-by: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
vnc: tight: remove unused variable
Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
size_t is unsigned, change to ssize_t to handle errors from tight_compress_data()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Initialize a variable in all cases
Commit d167f9bc06a577d6c85b8ed6991c1efe175aae7d missed this one:/src/qemu/ui/vnc-enc-tight.c:1483: warning: 'ret' may be used uninitialized in this function
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Fix uint8_t comparison with negative value
Commit 7bccf57383cca60a778d5c543ac80c9f62d89ef2 missed this one:/src/qemu/ui/vnc-enc-tight.c: In function 'send_sub_rect':/src/qemu/ui/vnc-enc-tight.c:1527: warning: comparison is always true due to limited range of data type...
Fix mingw32 build
Fix mingw32 build errors like/src/qemu/ui/vnc-enc-tight.c: In function 'tight_detect_smooth_image24':/src/qemu/ui/vnc-enc-tight.c:119: error: 'uint' undeclared (first use in this function)
Replace 'uint' with proper 'unsigned int'.
Fix a warning with some GCCs:/src/qemu/ui/vnc-enc-tight.c: In function `send_sub_rect_nojpeg':/src/qemu/ui/vnc-enc-tight.c:1458: warning: `ret' might be used uninitialized in this function
Fix uint8_t comparisons with negative values
Fix the following warnings:/src/qemu/hw/ide/core.c: In function `ide_drive_pio_post_load':/src/qemu/hw/ide/core.c:2767: warning: comparison is always false due to limited range of data type
/src/qemu/ui/vnc-enc-tight.c: In function `tight_detect_smooth_image':...
vnc: tight: don't forget do at the last color
While using indexed colors, the last color was never added to the palette.Triggered with ubuntu livecd.
vnc: tight: remove a memleak in send_jpeg_rect()
buf was never freed.
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: tight: specific zlib level and filters for each compression level
Disable png filters for lower compression levels. This should lowerthe CPU consumption and reduce encoding time.
vnc: tight: stop using qdict for palette stuff
Profiling with callgrind seems to show that a lot of time is spentin the palette code (mostly due to memory allocation and qdict to intconversion).
This patch adds a VncPalette implementation. The palette is stored...
vnc: encapsulate encoding members
This will allow to implement the threaded VNC server in amore cleaner way.
vnc: fix tight png memory leak
The tight.png buffer was never released.
vnc: tight: fix rgb_prepare_row
rgb_prepare_row bpp depends on the server display surface, notthe client.
vnc: tight: split send_sub_rect
Split send_sub_rect in send_sub_rect_jpeg and send_sub_rect_nojpeg toremove all these #ifdef CONFIG_JPEG.
vnc: rename vnc-encoding-* vnc-enc-*
For the same reason that we don't use vnc-authentication-sasl.c butvnc-auth-sals.c. Because it's tooooo long.