| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
IPv6-capable.
Besided making libvncserver reverseVNC IPv6-aware, this introduces some changes
on the client side as well to make clients listen on IPv6 sockets, too. Like
the server side, this also uses a separate-socket approach.
|
|
|
|
|
|
| |
too.
As done with the RFB sockets, this uses a separate-socket approach as well.
|
|
|
|
|
|
|
|
|
| |
This uses a separate-socket approach since there are systems that do not
support dual binding sockets under *any* circumstances, for instance
OpenBSD. Using separate sockets for IPv4 and IPv6 is thus more portable
than having a v6 socket handle v4 connections as well.
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
|
| |
Support connections from the Mac OS X built-in VNC client to
LibVNCServers running with no password and advertising a server
version of 3.7 or greater.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For security reasons, it can be important to limit which IP addresses a
LibVNCClient-based client should listen for reverse connections. This
commit adds that option.
To preserve binary backwards-compatibility, the field was added to the end
of the rfbclient struct, and the function ListenAtTcpPort retains its
signature (but calls the new ListenAtTcpPortAndAddress).
[jes: shortened the commit subject, added a longer explanation in the
commit body and adjusted style]
Signed-off-by: Luca Stauble <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
|
|\ |
|
| | |
|
|\ \ |
|
| |/ |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
For backwards-compatibility reasons, we can only add struct members to the
end. That way, existing callers still can use newer libraries, as the
structs are always allocated by the library (and therefore guaranteed to
have the correct size) and still rely on the same position of the parts
the callers know about.
Reported by Luca Falavigna.
Signed-off-by: Johannes Schindelin <[email protected]>
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Move the hixie disconnect hack to websockets.c. Removed
the remaining websockets vars from rfbClientPtr, so all
websockets stuff is hidden behind an opaque pointer.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Added wspath member to rfbClientRec which holds the
path component of the initial websocket request.
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
| |
| |
| |
| |
| |
| | |
[jes: moved out GnuTLS and OpenSSL support, added a dummy support, to
separate changes better, and to keep things compiling]
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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 <[email protected]>
|
| |
| |
| |
| |
| |
| |
| | |
http://wiki.qemu.org/VNC_Tight_PNG
Signed-off-by: Joel Martin <[email protected]>
Signed-off-by: Christian Beier <[email protected]>
|
| |
| |
| |
| | |
LibVNCServer/LibVNCClient now build for Android!
|
|/
|
|
| |
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
|
| |
BUG: 256891
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
| |
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
| |
We have a git repo nowadays and I guess we won't go back to CVS.
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
| |
Signed-off-by: Vic Lee <[email protected]>
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds automagically generating libvncserver/libvncclient API
documentation using doxygen. This gives a nice overview on both APIs,
include dependencies and function call/caller dependencies.
TODO: Modify all the explaining comments in the .c files for use with
doxygen as well.
This patch only changes comments, no functional changes at all!
Signed-off-by: Christian Beier <[email protected]>
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
Redefining strncasecmp to _strnicmp makes libvncclient hang forever in
SetFormatAndEncodings() on Windows when built with MinGW64.
Reported by Tobias Doerffel <[email protected]>, thanks!
|
|
|
|
|
|
|
|
| |
Some (all?) autotool versions do not properly prefix
WORDS_BIGENDIAN with LIBVNCSERVER_, so do that manually
here.
Thanks to Lorenz Kolb for reporting.
|
|
|
|
|
|
|
|
|
|
| |
This enables setting the DSCP/Traffic Class field of IP/IPv6 packets
sent by a client. For example starting a client with -qosdscp 184
marks all outgoing traffic for expedited forwarding.
Implementation for Win32 is still a TODO, though. See
http://betelco.blogspot.com/2009/03/dscp-marking-under-windows-at.html
for an overview of the Win32 QoS API mess...
|
|
|
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
|
|
| |
[jes: pulled the "host" declarations into the conditionally compiled
blocks where that variable is used. Also fixed non-IPv6 connections.]
Signed-off-by: Vic Lee <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
|
|
|
|
|
|
| |
If set, this hook gets called just before
rfbSendFrameBufferUpdate() returns.
Signed-off-by: Christian Beier <[email protected]>
|
|
|
|
|
|
|
|
|
| |
- It's SDL_LIBRARY, not SDL_LIBRARIES
- Detect GnuTLS and set the macro in rfbconfig.h
- Add tls.c to libvncclient to avoid missing symbols
Signed-off-by: Corentin Chary <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
|
|
|
|
|
|
| |
[jes: adjusted coding style, made sure port is initialized correctly]
Signed-off-by: Vic Lee <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
|
|
|
|
| |
Signed-off-by: Vic Lee <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The return value now better reflects what has happened:
1 on success (incoming connection on listen socket, we
accepted it successfully), -1 on error, 0 on timeout.
Also change the select calls to not check _all_ possible
file descriptors.
Signed-off-by: Christian Beier <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
|\ |
|
| |
| |
| |
| |
| | |
Signed-off-by: Vic Lee <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Vic Lee <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Vic Lee <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Forking the whole process from deep within a library call does
not really work at all with apps that use multiple threads, i.e. every
reasonably modern GUI app. So, provide a non-forking listen function so
that the caller can decide if to fork, start a thread, etc.
This implementation adds a timeout parameter to be able to call the
listen function multiple times so that it's possible to do sth. else
in between, e.g. abort listening.
Signed-off-by: Christian Beier <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|
| |
| |
| |
| |
| |
| | |
When working on a program which searches the display for some image, one
does not want to search again without getting an FB update. Add a
callback to make this possible.
|
|/
|
|
|
|
|
|
|
|
|
| |
SOCKET is redefined in winsock2.h so #undef it where winsock2.h
is included. The changes in rfbproto.c circumvent crosscompiler
errors like 'S_IFMT' undeclared ...', the Makefile.am changes
avoid building linux specific stuff for a win32 host target.
Also added configure option to specify sdl-config.
Signed-off-by: Christian Beier <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
|