summaryrefslogtreecommitdiffstats
path: root/libvncclient/sockets.c
Commit message (Collapse)AuthorAgeFilesLines
* Use WaitForMessage instead of sleep in socket reading to fix performance issue.Vic Lee2011-03-121-10/+2
| | | | Signed-off-by: Christian Beier <dontmind@freeshell.org>
* Call WSAGetLastError() everywhere errno is read after a Winsock call.Christian Beier2011-03-031-1/+8
| | | | | Winsock does NOT update errno for us, we have fetch the last error manually using WSAGetLastError().
* Fix build failure wrt IP QoS support in libvncclient.Christian Beier2010-10-201-1/+1
| | | | | | This is a small addendum to 0797e42a4aaf8131ae71899faea2d682ed81cb59. Seems that having IPv6 support in the OS does not necessarily mean that IPV6_TCLASS is available. One such case seems to be Mac OS X 10.5.
* Avoid 100% CPU usage when calling ReadFromRFBServer and no available bytes ↵Vic Lee2010-10-131-0/+10
| | | | | | | to read Signed-off-by: Vic Lee <llyzs@163.com> Signed-off-by: Christian Beier <dontmind@freeshell.org>
* IP QoS support in libvncclient.Christian Beier2010-09-291-0/+49
| | | | | | | | | | 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...
* Non-blocking sockets for Windows.Christian Beier2010-09-131-6/+9
| | | | | | | | | | | 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>
* Fix MinGW32 checking for IPv6.Christian Beier2010-07-141-0/+4
| | | | | Signed-off-by: Christian Beier <dontmind@freeshell.org> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* libvncclient: add ipv6 supportVic Lee2010-07-081-0/+62
| | | | | | | | [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 <llyzs@163.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* Fix various compilation warningsVic Lee2009-11-101-2/+3
| | | | | Signed-off-by: Vic Lee <llyzs@163.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* Merge branch 'VeNCrypt'Johannes Schindelin2009-11-021-2/+31
|\
| * Add anonymous TLS support in libvncclientVic Lee2009-10-021-2/+31
| | | | | | | | Signed-off-by: Vic Lee <llyzs@163.com>
* | libvncclient: make listenAtTCPPort() work under windows.Christian Beier2009-10-301-5/+12
| | | | | | | | | | | | | | | | | | | | Actually, initSockets() has to be called everywhere we possibly use sockets the first time. Also fix return value of initSockets(). Signed-off-by: Christian Beier <dontmind@freeshell.org> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* | Fix hostname resolution problems under WindowsAlexander Dorokhine2009-10-301-8/+17
| | | | | | | | | | | | | | | | On Windows, the WSA system needs to be initialized to be able to look up host names. This patch also changes *addr = 0 to use the constant INADDR_LOOPBACK instead, which seems to be required on Windows.
* | mingw32 crosscompile fixes.Christian Beier2009-10-021-0/+1
|/ | | | | | | | | | | 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 <dontmind@freeshell.org> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* libvncclient: Unix sockets support by Ben KlopfensteinBen Klopfenstein2009-05-121-0/+29
| | | | Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* assorted fixes for MinGW32dscho2005-12-191-3/+2
|
* work around write() returning ENOENT on Solaris 2.7dscho2005-12-091-1/+5
|
* hide strict ansi stuff if not explicitely turned on; actually use the ↵dscho2005-05-181-0/+2
| | | | socklen_t test from configure.ac
* ANSIfy, fix some warnings from Linus' sparsedscho2005-05-151-0/+1
|
* add '-listen ipaddr' optionrunge2005-03-051-2/+2
|
* support MinGW32!dscho2004-12-011-19/+58
|
* use rfbClientErr to log errors, check if calloc succeded (both hinted by ↵dscho2004-12-011-15/+15
| | | | Andre Leiradella)
* fix long reads (in some events of success, no TRUE was returned)dscho2004-11-301-7/+8
|
* move read buffer to rfbClient structure (thread safety); make rfbClientLogdscho2004-10-161-21/+16
| | | | overrideable
* support password reading with getpass(); support -play to play vncrec'orded ↵dscho2004-06-181-1/+39
| | | | files
* debugdscho2004-06-151-1/+17
|
* add client_examples/, add SDLvncviewer, libvncclient API changes, suppress ↵dscho2004-06-071-0/+21
| | | | automake CFLAGS nagging
* API change: Bool, KeySym, Pixel get prefix "rfb"; constants in rfbconfig.h ↵dscho2003-07-301-6/+6
| | | | get prefix "LIBVNCSERVER_"
* fixed maxRectsPerUpdate with Tight encoding bug; some autoconfing; stderr ↵dscho2003-07-281-13/+13
| | | | should not be used in a library (use rfbLog instead)
* first alpha version of libvncclientdscho2003-07-271-0/+424