aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb
Commit message (Collapse)AuthorAgeFilesLines
...
* Reimplement the deferred update handling, this time in a more robust andPierre Ossman2011-11-084-25/+100
| | | | | | | well-behaved manner. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4784 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Add helper to easily determine how much time has passed since some previousPierre Ossman2011-11-082-0/+21
| | | | | | | event. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4783 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Cork the outgoing TCP stream while we still have messages to process. ThisPierre Ossman2011-11-081-0/+8
| | | | | | | allows more efficent use of the congestion window as we will send fewer packets. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4782 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Avoid some unnecessary processing when server side cursor isn't used (whichPierre Ossman2011-11-081-2/+4
| | | | | | | is the common case). git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4780 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Clean up the interface for VNCSConnectionST. Entry points are more apparentPierre Ossman2011-11-076-90/+102
| | | | | | | and the data flow is now more strictly aimed towards this connection class. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4771 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Add fast paths for RGB to 16-bit and 8-bit true color conversionDRC2011-11-041-0/+22
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4764 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Further optimizations (avoiding single-byte copies and InStream processing ↵DRC2011-11-042-53/+40
| | | | | | overhead) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4763 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Since fillRect() operates directly on the framebuffer, optimize it and ↵DRC2011-11-033-63/+68
| | | | | | remove the separate version in TightDecoder. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4762 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove unneeded EXTRA_ARGS definitionDRC2011-11-031-1/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4761 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Need to include os/print.h, because Windows doesn't have snprintf()DRC2011-11-031-0/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4760 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Move JPEG decoding into a standalone class (these should have been checked ↵DRC2011-11-032-0/+293
| | | | | | in with r4757. Oops.) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4758 3789f03b-4d11-0410-bbf8-ca57d06f2519
* If the client and server are using identical pixel formats, then perform ↵DRC2011-11-037-240/+232
| | | | | | Tight decoding directly into the viewer's back buffer, rather than going through the slow fillRect/imageRect routines. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4757 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Put arguments in a more consistent order based on data flow, in order to ↵DRC2011-11-032-38/+41
| | | | | | improve readability git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4756 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix compiler warnings uncovered with -WallDRC2011-11-033-4/+2
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4755 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Rename and document TransImageGetter::getPixelsRW() to make it more obviousPierre Ossman2011-11-033-4/+8
| | | | | | | that it bypasses the normal conversion logic. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4754 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix compiler warnings uncovered with -WallDRC2011-11-034-4/+3
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4752 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Don't try to push out another update if the socket is already full. ThisPierre Ossman2011-10-252-3/+41
| | | | | | | avoids stalling the entire server because of one slow client. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4737 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make sure RFB timers are actually respected by the server implementations.Pierre Ossman2011-10-251-0/+3
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4736 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fixed the formatting of a few Cendio copyright lines, so that it isPeter Åstrand2011-09-283-3/+3
| | | | | | | | consistent with the rest of the code. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4677 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Internalise the libjpeg stuff into the JpegCompressor class as the libjpegPierre Ossman2011-09-072-64/+77
| | | | | | | headers are a bit conflict prone. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4669 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove unused variablesDRC2011-08-241-1/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4655 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Move setting of PIC code to a central locationDRC2011-08-231-8/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4648 3789f03b-4d11-0410-bbf8-ca57d06f2519
* CMake doesn't handle convenience libraries as nicely as autotools does. WePierre Ossman2011-08-221-0/+8
| | | | | | | need to be explicit with -fPIC here as we use these in libvnc.so. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4645 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Do register reduction to re-normalize the performance at the low levelDRC2011-08-192-12/+26
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4643 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix image corruption issues with, and add a few optimizations for, 16bpp clientsDRC2011-08-192-11/+18
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4642 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Add support for TurboVNC pseudo-encodings and Grayscale JPEG compression so ↵DRC2011-08-1910-12/+77
| | | | | | that, when a TurboVNC viewer is connected, the TigerVNC Server will behave exactly like the TurboVNC Server. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4641 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make rawBytesEquivalent an unsigned 64-bit integer. Otherwise, it will ↵DRC2011-08-192-3/+3
| | | | | | overflow in less than a minute if using a full-screen video or 3D application. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4639 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix compiler warning in Visual C++DRC2011-08-191-3/+3
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4638 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Need to include os/print.h to use snprintf on WindowsDRC2011-08-171-0/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4634 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Disable ComparingUpdateTracker by default for now, because it generates a ↵DRC2011-08-171-1/+1
| | | | | | lot of CPU overhead (let's see if anyone notices that it's gone) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4633 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Further optimizations to the Tight encoder to eliminate getImage() overhead. ↵DRC2011-08-1723-273/+460
| | | | | | The encoder now directly accesses the framebuffer for solid rectangle computation, JPEG encoding, and color counting (if pixel translation is not required.) Also moved everything in tightEncode.h into the TightEncoder class to eliminate all of the static mess (this will be important later on if we decide to multi-thread the encoder.) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4631 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Ported encoding optimizations from TurboVNC. The changes to the Tight ↵DRC2011-08-118-232/+636
| | | | | | parameters were determined through extensive low-level profiling (see http://www.virtualgl.org/pmwiki/uploads/About/turbototiger.pdf). The other enhancements involved: (1) porting the solid subrectangle pre-computation code from TightVNC/TurboVNC (it makes a pretty big difference-- see report), (2) encapsulating the JPEG encoder in its own class (this eliminates a buffer copy, and the JPEG buffer is now set to a decent size where it shouldn't ever need to be paged or re-allocated, except in rare corner cases), (3) adding support for last rect. encoding (necessary to support the solid rectangle pre-computation enhancements. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4626 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Merge further fixes to Zlib encoder from 1.1 branchDRC2011-08-091-5/+7
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4623 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Revert r4498 and fix #3305357 properly. The issue was two-fold: (1) the ↵DRC2011-08-091-1/+4
| | | | | | compress buffer allocated by the Tight encoder was not large enough, and (2) Zlib 1.2.5 can sometimes call deflate(..., Z_BLOCK) within the body of deflateParams(), so we need to check avail_in after calling checkCompressionLevel() to ensure that there is still data left to compress before we call deflate() again. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4617 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make it possible to query a PixelTransformer for the formats it is convertingPierre Ossman2011-07-152-0/+26
| | | | | | | between. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4591 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove unused autotools build systemDRC2011-06-241-69/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4540 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Do not run libtool_create_control_file() on Windows. Windows does not like it.DRC2011-06-241-1/+3
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4530 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Detect and enable PAM authentication supportDRC2011-06-221-0/+6
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4513 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Building the Xvnc server requires libtool control files of rdr, rfb,Henrik Andersson2011-06-091-0/+2
| | | | | | | | | | | | | network and Xregion, which a cmake build will NOT produce, this macro tries to create a libtool control file *.la for the specified target with libdependencies for a static library target. Due to the automake part of Xvnc references to libtool files in source tree you need to build vncviewer using cmake in the source tree. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4482 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Accidentally calculated the pointer offset twice, resulting in segfaults.Pierre Ossman2011-06-081-1/+2
| | | | | | | Make sure we get the proper address for the data shuffling. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4471 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make sure we have a list of the multimedia keysyms defined by Xfree86.Pierre Ossman2011-05-202-2/+234
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4436 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Add a default constructor so that you can create empty Security objects.Pierre Ossman2011-05-162-0/+5
| | | | | | | Useful when you just want to use the string encoder. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4418 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove old declaration that never actually maps to an object.Pierre Ossman2011-05-161-1/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4415 3789f03b-4d11-0410-bbf8-ca57d06f2519
* [Security] vncviewer can send password without proper validation of X.509 certsAdam Tkac2011-05-101-2/+9
| | | | | | | | | (CVE-2011-1775). Reference: http://www.mail-archive.com/tigervnc-devel@lists.sourceforge.net/msg01342.html git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4401 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Forgot to add the new PixelTransformer class to the autotools system.Pierre Ossman2011-03-081-7/+7
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4339 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Split out the pixel format conversion magic to its own class and makePierre Ossman2011-03-086-233/+427
| | | | | | | | TransImageGetter be just an ImageGetter interface to that functionality. This allows more flexible use of the pixel conversion routines. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4338 3789f03b-4d11-0410-bbf8-ca57d06f2519
* The Windows specific include path should only be used on Windows.Pierre Ossman2011-03-081-1/+2
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4335 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make sure Windows specific code is only included in Windows builds.Pierre Ossman2011-03-081-1/+4
| | | | | | | Patch by Henrik Andersson. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4334 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Look for libjpeg in a more proper manner and don't just assume it's in aPierre Ossman2011-03-031-2/+2
| | | | | | | standard path. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4314 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove the included libjpeg-turbo from the tree and rely completely on onePierre Ossman2011-03-022-7/+1
| | | | | | | being provided by the system. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4310 3789f03b-4d11-0410-bbf8-ca57d06f2519