summaryrefslogtreecommitdiffstats
path: root/libvncserver/main.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix a locking problem in libvncserverdscho2007-03-171-2/+1
| | | | | | | | | | | | | | | | | | | There seems to be a locking problem in libvncserver, with respect to how condition variables are used. On certain machines in our lab, when using a vncviewer to view a display that has a very high rate of updates, we will occasionally see the VNC server process crash. In one stack trace that was obtained, an assertion had tripped in glibc's pthread_cond_wait, which was called from clientOutput. Inspection of clientOutput suggests that WAIT is being called incorrectly. The mutex that protects a condition variable should always be locked when calling wait, and on return from the wait will still be locked. The attached patch fixes the locking around this condition variable, and one other that I found by grepping the source for similar occurrences. Signed-off-by: Charles Coffing <ccoffing@novell.com>
* Plugged some memory leakagesteven_carr2006-05-281-0/+5
|
* Default to RFB 3.8, add command line option to specify the RFB version.steven_carr2006-05-151-3/+4
|
* The great UltraVNC Compatibility Commitsteven_carr2006-05-151-5/+27
|
* Client Independent Server Side Scaling is now supportedsteven_carr2006-05-031-3/+18
| | | | Both PalmVNC and UltraVNC SetScale messages are supported
* add KeyboardLedState extensiondscho2006-03-281-0/+1
|
* do not timeout on idle client input (with pthreads)dscho2006-03-011-0/+16
|
* add handleEventsEagerly flag (Thanks, Donald)dscho2006-02-281-0/+2
|
* Added method to get extension specific client datarohit_991292006-02-241-1/+1
|
* Added method to get extension specific client datarohit_991292006-02-241-0/+16
|
* add functions to unregister extensions/security typesdscho2006-02-221-5/+68
|
* fix some non-gcc compiler warnings and signals in x11vncrunge2006-02-201-0/+1
|
* logMutex needs to be initialized too; in rfbDefaultLog.runge2006-01-111-2/+12
|
* rfbProcessEvents() has to iterate also over clients with sock < 0 to close themdscho2006-01-101-1/+3
|
* fix client non-jpeg/libz buildsrunge2006-01-081-1/+1
|
* rfbRegisterProtocolExtension extMutex was never initialized.runge2006-01-061-0/+6
|
* introduce -deferptrupdate (thanks Dave)dscho2005-12-191-0/+21
|
* assorted fixes for MinGW32dscho2005-12-191-1/+1
|
* fix deadlock from rfbReleaseExtensionIterator(), fix no libz/libjpeg ↵runge2005-11-251-0/+2
| | | | builds, disable tightvnc-filetransfer if no libpthread, add --without-pthread option, rm // comments, set NAME_MAX if not defined, x11vnc: throttle load if fb update requests not taking place.
* kill BackChannel and CustomClientMessage: the new extension technique makes ↵dscho2005-10-061-6/+0
| | | | these hooks obsolete
* This monster commit contains support for TightVNC's file transfer protocol.dscho2005-09-281-0/+40
| | | | Thank you very much, Rohit!
* Introduce generic protocol extension method. Deprecatedscho2005-09-271-0/+38
| | | | the processCustomClientMessage() method.
* Security is global. This was a misguided attempt to evade a global list.dscho2005-09-271-1/+0
| | | | I eventually saw the light and went with Rohit´s original approach.
* support VNC protocol version 3.7dscho2005-09-261-0/+1
|
* main.c: fix screen->deferUpdateTime default.runge2005-06-271-3/+3
|
* main.c: no sraRgnSubstract for copyRect, scrolls for x11vnc -scale; add ↵runge2005-06-041-7/+3
| | | | -fixscreen
* main.c: fix copyRect for non-cursor-shape-aware clients.runge2005-05-311-0/+43
|
* fix off by one bugdscho2005-05-181-2/+2
|
* 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-31/+23
|
* libvncserver/{main.c,rfbserver.c}: fix a couple more CopyRect memory leaksrunge2005-05-151-0/+1
|
* fix memory leaks detected using valgrinddscho2005-05-141-1/+2
|
* socketInitDone -> socketStatedscho2005-05-071-3/+21
|
* libvncserver/main.c: fix memory leak in rfbDoCopyRect/rfbScheduleCopyRect; ↵runge2005-05-031-0/+2
| | | | configure.ac tweaks.
* add '-listen ipaddr' optionrunge2005-03-051-0/+2
|
* fix disappearing cursordscho2005-01-201-3/+0
|
* pointerClient was still static.dscho2005-01-181-37/+12
| | | | | | | | | | | | | | | | | | | | | | do not make requestedRegion empty without reason. the cursor handling for clients which don't handle CursorShape updates was completely broken. It originally was very complicated for performance reasons, however, in most cases it made performance even worse, because at idle times there was way too much checking going on, and furthermore, sometimes unnecessary updates were inevitable. The code now is much more elegant: the ClientRec structure knows exactly where it last painted the cursor, and the ScreenInfo structure knows where the cursor shall be. As a consequence there is no more rfbDrawCursor()/rfbUndrawCursor(), no more dontSendFramebufferUpdate, and no more isCursorDrawn. It is now possible to have clients which understand CursorShape updates and clients which don't at the same time. rfbSetCursor no longer has the option freeOld; this is obsolete, as the cursor structure knows what to free and what not.
* fix commentdscho2005-01-141-1/+2
|
* return value of rfbProcessEvents tells if an update was pendingdscho2005-01-141-2/+8
|
* add hook to allow for custom client messagesdscho2005-01-031-0/+6
|
* support MinGW32!dscho2004-12-011-0/+2
|
* global structures/functions should have "rfb", "sra" or "zrle" as prefix,dscho2004-08-301-149/+149
| | | | while structure members should not
* x11vnc: view-only plain passwd: -viewpasswd and 2nd line of -passwdfilerunge2004-05-271-2/+4
|
* move the library into libvncserver/, x11vnc into x11vnc/dscho2004-05-251-0/+851