| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is not completely standard UTF-8 encoding. Only code points 0-255
are encoded and never encoded to more than two octets. Since '\x00' is
a WebSockets framing character, it's easier for all parties to encode
zero as '\xc4\x80', i.e. 194+128, i.e. UTF-8 256.
This means that a random stream will be slightly more than 50% larger
using this encoding scheme. But it's easy CPU-wise for client and
server to decode/encode. This is especially important for clients
written in languages that have weak bitops, like Javascript (i.e. the
noVNC client).
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
|
|
|
| |
If the only thing we are waiting on is a WebSockets terminator, then
remove it from the stream early on in rfbProcessClientNormalMessage.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Has a bug: WebSocket client disconnects are not detected.
rfbSendFramebufferUpdate is doing a MSG_PEEK recv to determine if
enough data is available which prevents a disconnect from being
detected.
Otherwise it's working pretty well.
[jes: moved added struct members to the end for binary compatibility with
previous LibVNCServer versions, removed an unused variable]
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
| |
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
| |
http://wiki.qemu.org/VNC_Tight_PNG
Signed-off-by: Joel Martin <github@martintribe.org>
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
| |
|
|
|
|
|
|
| |
BUG: 256891
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
| |
This is required to be able to do proper event loop integration with Qt.
Idea was taken from vino's libvncserver fork.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
| |
Signed-off-by: Cristian Rodríguez <crrodriguez@opensuse.org>
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
| |
This reverts commit c1363fa9583ed41b94fbc79b3ff410b7d5189407.
The proper fix was already in 804335f9d296440bb708ca844f5d89b58b50b0c6.
|
|
|
|
|
|
|
|
| |
This bug occured when a second telepathy tubes client was connected after
the first one had disconnected and the channel (thus, the screen too)
had been destroyed.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
| |
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
|
|
| |
fe1ca16e9b75b5f38ab374c8dfff92d2c3ea4532.
My bad. There we see what the encodings test is good for ;-)
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Winsock does NOT update errno for us, we have fetch the last error
manually using WSAGetLastError().
|
|
|
|
|
|
|
|
|
|
| |
According to the minilzo README, this brings a significant
speedup on 64-bit architechtures.
Changes compared to old version 1.08 can be found here:
http://www.oberhumer.com/opensource/lzo/lzonews.php
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
| |
This adds generic before/after encoding buffers to the rfbClient
struct, so there is no need for thread local storage.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
| |
We have a git repo nowadays and I guess we won't go back to CVS.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
|
|
| |
No functional changes. All files used by _both_ libvncserver and
libvncclient are put into a 'common' directory and references
from other files as well as Autotools and CMake build systems are
updated.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
| |
Signed-off-by: Vic Lee <llyzs@163.com>
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
| |
|
|
|
|
|
|
|
|
|
| |
In commit 079394ca5b14d8067b95a9cf95a834828b4425a6 new code with
insufficient checks was introduced causing a segfault when doing a
HTTP server connection. Such connections have no screen set in the
client data structure.
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
|
|
|
|
| |
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
| |
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
| |
|
|
|
|
|
|
|
| |
This implements the xvp VNC extension, which is described in the
community version of the RFB protocol:
http://tigervnc.sourceforge.net/cgi-bin/rfbproto
It is also mentioned in the official RFB protocol.
|
|
|
|
|
|
|
|
|
|
| |
When not calling rfbRegisterProtocolExtension() the extension mutex
is uninitialized but used upon calling rfbGetExtensionIterator() and
rfbReleaseExtensionIterator() in rfbNewTCPOrUDPClient(). This causes
libvncserver to crash on Win32 when building with thread support.
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
| |
returning. This did not happen if rfbSendFileTransferMessage() failed.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Expands the SetNonBlocking() function in libvncclient/sockets.c to also
work under Windows and also changes it to honour maybe already present
socket flags.
A similar function was introduced for libvncserver as well and
all the #ifdef'ed fnctl calls replaced with calls to that one.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
| |
The header file and most of the functions referred to
do not exist in libvncserver.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
|
|
| |
MinGW32 (or more exactly, a rpcndr.h file included by
winsock2.h) typedefs a 'boolean' type that jmorecfg.h
included by jpeglib.h also tries to typedef.
So, tell the jpeg headers.
Closes: 3007302
|
|
|
|
|
|
|
| |
If set, this hook gets called just before
rfbSendFrameBufferUpdate() returns.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
|
|
|
|
|
|
|
|
|
|
| |
In some cases (bad font data) the coordinates evaluate to <0,
causing a segfault in the following memcpy().
[jes: keep the offset, but do not try to segfault]
Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
| |
|
|
|
|
| |
for tight security type for RFB 3.8 (debian bug 517422.)
|
|
|
|
| |
rfbSetClientColourMap(). Up listen limit from 5 to 32.
|
|
|
|
|
|
|
|
|
|
| |
To make this work, we also have to initialize sockets
to a default value of -1.
Also close a client listen socket if it's open.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
|
| |
Signed-off-by: Vic Lee <llyzs@163.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|\ |
|
| |
| |
| |
| |
| | |
Signed-off-by: Vic Lee <llyzs@163.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|/ |
|
|
|
|
| |
Proposed tight security type fix for debian bug 517422.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The flag handling (both compiler options and include paths) are a mess at
the moment. There is no point in forcing "-O2 -g" when these are already
the defaults, and if someone changes the defaults, chances are good they
don't want you clobbering their choices.
The -Wall flag should be handled in configure and thrown into CFLAGS once
rather than every Makefile.am. Plus, this way we can control which
compilers the flag actually gets used with.
Finally, the INCLUDES variable is for -I paths, not AM_CFLAGS. Nor should
it contain -I. as this is already in the default includes setup.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
| |
rfbSendFramebufferUpdate() (italc reported bug)
|
| |
|
|
|
|
| |
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
|
|
| |
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
| |
|