]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
7 years agoLimit size of cursor accepted by client. 444/head
Michal Srb [Thu, 6 Apr 2017 20:52:22 +0000 (23:52 +0300)]
Limit size of cursor accepted by client.

Width and height of a cursor are received as U16 from network. Accepting full range of U16 values can cause integer overflows in multiple places.

The worst is probably VLA in CMsgReader::readSetXCursor:
  rdr::U8 buf[width*height*4];

The width*height*4 can be too big to fit on stack or it can overflow into negative numbers. Both cases are undefined behaviour. Following writes to buf can overwrite other data on stack.

7 years agoPartial fix for java viewer performance regression
Brian P. Hinz [Wed, 5 Apr 2017 01:10:00 +0000 (21:10 -0400)]
Partial fix for java viewer performance regression

7 years agoMerge branches 'fix-vencrypt-leak' and 'fixes-ssecurityplain' of https://github.com...
Pierre Ossman [Thu, 30 Mar 2017 14:23:11 +0000 (16:23 +0200)]
Merge branches 'fix-vencrypt-leak' and 'fixes-ssecurityplain' of https://github.com/michalsrb/tigervnc

7 years agoLimit max username/password size in SSecurityPlain. 440/head
Michal Srb [Wed, 29 Mar 2017 14:05:45 +0000 (17:05 +0300)]
Limit max username/password size in SSecurityPlain.

Setting the limit to 1024 which should be still more than enough.

Unlimited ulen and plen can cause various security problems:
  * Overflow in `is->checkNoWait(ulen + plen)` causing it to contine when there is not enough data and then wait forever.
  * Overflow in `new char[plen + 1]` that would allocate zero sized array which succeeds but returns pointer that should not be written into.
  * Allocation failure in `new char[plen + 1]` from trying to allocate too much and crashing the whole server.

All those issues can be triggered by a client before authentication.

7 years agoFix checkNoWait logic in SSecurityPlain.
Michal Srb [Wed, 29 Mar 2017 14:00:30 +0000 (17:00 +0300)]
Fix checkNoWait logic in SSecurityPlain.

Currently it proceeds only if there aren't enough data in queue and then it blocks waiting.
Also the required amount to receive from network is (ulen + plen), not (ulen + plen + 2).

This allowed not authenticated clients to deny service to everyone.

7 years agoDelete underlying ssecurity in SSecurityVeNCrypt. 441/head
Michal Srb [Wed, 29 Mar 2017 13:23:18 +0000 (16:23 +0300)]
Delete underlying ssecurity in SSecurityVeNCrypt.

Otherwise it gets leaked which would allow even not authenticated clients to exhaust server memory.

7 years agoBe more restrictive with shared memory mode bits
Pierre Ossman [Wed, 29 Mar 2017 11:28:55 +0000 (13:28 +0200)]
Be more restrictive with shared memory mode bits

Everyone else seems to get by with using 0600, so let's do the same.

7 years agoAvoid leaking shared memory via X server
Pierre Ossman [Wed, 29 Mar 2017 11:27:32 +0000 (13:27 +0200)]
Avoid leaking shared memory via X server

It's not enough that we detach from the shared memory, we must also
tell the X server to do so for it to be freed properly.

7 years agoMerge branches 'fix' and 'fix-double-free-fences' of https://github.com/michalsrb...
Pierre Ossman [Wed, 29 Mar 2017 09:09:49 +0000 (11:09 +0200)]
Merge branches 'fix' and 'fix-double-free-fences' of https://github.com/michalsrb/tigervnc

7 years agoPrevent double free by crafted fences. 438/head
Michal Srb [Mon, 27 Mar 2017 16:02:15 +0000 (19:02 +0300)]
Prevent double free by crafted fences.

If client sent fence with some data, followed by fence with no data (length 0), the original fence data were freed, but the pointer kept pointing at them. Sending one more fence would attempt to free them again.

7 years agoPrevent leak of SecurityServer and ClientServer. 436/head
Michal Srb [Mon, 27 Mar 2017 10:55:46 +0000 (13:55 +0300)]
Prevent leak of SecurityServer and ClientServer.

They are created in SConnection's and CConnection's constructors but never destroyed.

There is no reason for the indirection, so lets make them direct members.

7 years agoFix crash from integer overflow in SMsgReader::readClientCutText
Michal Srb [Mon, 27 Mar 2017 10:37:11 +0000 (13:37 +0300)]
Fix crash from integer overflow in SMsgReader::readClientCutText

The length sent by client is U32, but is converted into int. If it was bigger than 0x7fffffff the resulting int is negative, it passes the check against maxCutText and later throws std::bad_alloc from CharArray which takes down the whole server.

All the Streaming API deals with lengths in ints, so we can't tell it to skip that big amount of data. And it is not realistic to expect more than 2GB of clipboard data anyway. So lets just throw rdr::Exception that will disconnect this client and keep the server alive.

7 years agoUpdate visible copyright year to 2017 433/head
Samuel Mannehed [Mon, 20 Mar 2017 12:07:30 +0000 (13:07 +0100)]
Update visible copyright year to 2017

7 years agoAdd Friulian to list of active languages
Pierre Ossman [Fri, 17 Mar 2017 14:08:23 +0000 (15:08 +0100)]
Add Friulian to list of active languages

Should have been included in the previous commit.

7 years agoAdd Friulian translation
Fabio Tomat [Sun, 12 Mar 2017 22:42:00 +0000 (23:42 +0100)]
Add Friulian translation

7 years agoFix for "Invalid use of member 'stats' in static member function"
Brian P. Hinz [Fri, 10 Mar 2017 00:25:39 +0000 (19:25 -0500)]
Fix for "Invalid use of member 'stats' in static member function"

7 years agoRemove Windows version information
Pierre Ossman [Tue, 7 Mar 2017 11:47:03 +0000 (12:47 +0100)]
Remove Windows version information

It has been out of date for some time.

7 years agoJava client support for X Cursor
Brian P. Hinz [Mon, 27 Feb 2017 21:38:30 +0000 (16:38 -0500)]
Java client support for X Cursor

7 years agoFix for exception handling in decoder threads (java client)
Brian P. Hinz [Mon, 27 Feb 2017 01:58:12 +0000 (20:58 -0500)]
Fix for exception handling in decoder threads (java client)

7 years agoJava client support for cursors with full alpha
Brian P. Hinz [Mon, 27 Feb 2017 01:55:40 +0000 (20:55 -0500)]
Java client support for cursors with full alpha

7 years agoMerge branch 'fps' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 24 Feb 2017 12:25:00 +0000 (13:25 +0100)]
Merge branch 'fps' of https://github.com/CendioOssman/tigervnc

7 years agoRemove unused variable deferredUpdateTimerSet 421/head
Pierre Ossman [Fri, 7 Oct 2016 14:14:41 +0000 (16:14 +0200)]
Remove unused variable deferredUpdateTimerSet

7 years agoSend updates with a fixed interval
Pierre Ossman [Fri, 7 Oct 2016 13:59:38 +0000 (15:59 +0200)]
Send updates with a fixed interval

This redesigns the old "deferred updates" mechanism in to a frame
clock that governs how often updates are sent out. The goal is still
the same, to aggregate updates and avoid pointless updates, all in
the name of efficiency. This model should however be more robust
against delays that sometimes causes us to miss the desired rate.

7 years agoAvoid flicker with a rendered cursor
Pierre Ossman [Mon, 5 Dec 2016 16:00:35 +0000 (17:00 +0100)]
Avoid flicker with a rendered cursor

This is not the code path commonly used in performance sensitive
scenarios, so favour correctness over performance.

7 years agoOnly update rendered cursor when requested
Pierre Ossman [Mon, 5 Dec 2016 15:58:19 +0000 (16:58 +0100)]
Only update rendered cursor when requested

7 years agoClean up VNCSConnectionST::needRenderedCursor()
Pierre Ossman [Mon, 5 Dec 2016 15:57:30 +0000 (16:57 +0100)]
Clean up VNCSConnectionST::needRenderedCursor()

Make it a bit more readable.

7 years agoSplit up VNCSConnectionST::writeFramebufferUpdate()
Pierre Ossman [Fri, 25 Nov 2016 09:06:34 +0000 (10:06 +0100)]
Split up VNCSConnectionST::writeFramebufferUpdate()

Make the control flow a bit clearer.

7 years agoBetter handling of slow timers
Pierre Ossman [Fri, 7 Oct 2016 14:02:18 +0000 (16:02 +0200)]
Better handling of slow timers

Make sure the code deals more gracefully with timers that take a
long time to execute, and therefore might miss their deadlines.

7 years agoDisplay performance statistics in viewer
Pierre Ossman [Fri, 24 Feb 2017 11:33:09 +0000 (12:33 +0100)]
Display performance statistics in viewer

Adds an optional graph to the viewer to display current frame rate,
pixel rate and network bandwidth. Makes it easier to debug and test
performance related issues.

7 years agoGet correct text width for overlay
Pierre Ossman [Fri, 24 Feb 2017 08:23:47 +0000 (09:23 +0100)]
Get correct text width for overlay

Incoming width specifies wrapping width, and we do not want any wrapping.

7 years agoDon't try to render cursors with no size
Pierre Ossman [Thu, 23 Feb 2017 12:12:54 +0000 (13:12 +0100)]
Don't try to render cursors with no size

Even if there are no pixels it will still trigger sanity checks
when we start throwing bogus coordinates around.

7 years agoRemove reallocation log message from ManagedPixelBuffer 418/head
Pierre Ossman [Tue, 21 Feb 2017 14:53:34 +0000 (15:53 +0100)]
Remove reallocation log message from ManagedPixelBuffer

It adds a lot of noise to the debug output with little gain.

7 years agoServer support for cursor with alpha
Pierre Ossman [Tue, 21 Feb 2017 11:59:04 +0000 (12:59 +0100)]
Server support for cursor with alpha

7 years agoClient support for cursors with full alpha
Pierre Ossman [Sun, 19 Feb 2017 14:50:29 +0000 (15:50 +0100)]
Client support for cursors with full alpha

7 years agoProperly handle depth > 24 in ZRLE decoder
Pierre Ossman [Sun, 19 Feb 2017 14:53:07 +0000 (15:53 +0100)]
Properly handle depth > 24 in ZRLE decoder

7 years agoClient support for X Cursor
Pierre Ossman [Sun, 19 Feb 2017 14:51:19 +0000 (15:51 +0100)]
Client support for X Cursor

7 years agoDither cursors when reducing depth
Pierre Ossman [Tue, 21 Feb 2017 11:58:01 +0000 (12:58 +0100)]
Dither cursors when reducing depth

7 years agoChange cursor API to use RGBA data
Pierre Ossman [Sun, 19 Feb 2017 14:48:17 +0000 (15:48 +0100)]
Change cursor API to use RGBA data

This will allow us to use better formats that preserve the entire
alpha channel.

7 years agoFix for exception handling in decoder threads
Pierre Ossman [Sun, 19 Feb 2017 14:51:45 +0000 (15:51 +0100)]
Fix for exception handling in decoder threads

7 years agoDowned hosts should timeout reasonably quickly
Brian P. Hinz [Mon, 20 Feb 2017 04:59:03 +0000 (23:59 -0500)]
Downed hosts should timeout reasonably quickly

7 years agoJava client was not honoring "ServerName" option in config files
Brian P. Hinz [Mon, 20 Feb 2017 04:57:25 +0000 (23:57 -0500)]
Java client was not honoring "ServerName" option in config files

Mentioned in issue #38

7 years agoFix int <--> ptr conversion
Alexander Zakharov [Tue, 14 Feb 2017 13:33:10 +0000 (16:33 +0300)]
Fix int <--> ptr conversion

7 years agoAdd missing headers 413/head
Alexander Zakharov [Tue, 14 Feb 2017 09:12:43 +0000 (12:12 +0300)]
Add missing headers

7 years agoFix wrapping/unwrapping of X11 hooks
Pierre Ossman [Mon, 13 Feb 2017 12:47:37 +0000 (13:47 +0100)]
Fix wrapping/unwrapping of X11 hooks

The functions might change so we need to also make sure we grab
the updated value after each call. Clean up the code to use the
same style as the rest of the Xorg code.

7 years agoAdd missing package dependency
Brian P. Hinz [Fri, 10 Feb 2017 23:50:21 +0000 (18:50 -0500)]
Add missing package dependency

Fixes issue #408

7 years agoFix regression that omitted support for client redirect.
Brian P. Hinz [Fri, 10 Feb 2017 04:41:56 +0000 (23:41 -0500)]
Fix regression that omitted support for client redirect.

Also, delay showing DesktopWindow until first valid rect has been
recieved.  This allows for a ClientRedirect to take place before
any data rects have been received.

7 years agoFade overlay in and out
Pierre Ossman [Fri, 10 Feb 2017 15:37:52 +0000 (16:37 +0100)]
Fade overlay in and out

7 years agoAdd overlay tip to help find the context menu
Pierre Ossman [Wed, 4 Jan 2017 14:34:26 +0000 (15:34 +0100)]
Add overlay tip to help find the context menu

7 years agoAdd alpha blending support to surfaces
Pierre Ossman [Mon, 2 Jan 2017 19:07:10 +0000 (20:07 +0100)]
Add alpha blending support to surfaces

7 years agoRender on a temporary surface when needed
Pierre Ossman [Mon, 2 Jan 2017 18:49:52 +0000 (19:49 +0100)]
Render on a temporary surface when needed

Some platforms draw directly to the screen, which means that updates
will flicker if we draw multiple layers. Prevent this by first
composing the update on a hidden surface.

7 years agoAbstract platform rendering to "surfaces"
Pierre Ossman [Mon, 2 Jan 2017 16:00:41 +0000 (17:00 +0100)]
Abstract platform rendering to "surfaces"

This will allow us to render more things than just the framebuffer.

7 years agoHandle scrolling manually
Pierre Ossman [Tue, 3 Jan 2017 15:12:30 +0000 (16:12 +0100)]
Handle scrolling manually

Stop fighting with the FLTK scroll widget and handle layout ourselves.
This opens up the possibility of doing more complex drawing as well.

7 years agoImprove framebuffer performance test measurement
Pierre Ossman [Thu, 12 Jan 2017 07:28:45 +0000 (08:28 +0100)]
Improve framebuffer performance test measurement

Some platforms impose a significant delay per frame, so we need
to separate that from the time spent shuffling pixels.

7 years agoRemove support for old macOS
Pierre Ossman [Thu, 9 Feb 2017 13:46:50 +0000 (14:46 +0100)]
Remove support for old macOS

Raising the requirement to 10.5 allows us to clean up the code a bit.

7 years agospelling fixes 409/head
klemens [Sat, 28 Jan 2017 19:56:56 +0000 (20:56 +0100)]
spelling fixes

7 years agoCrop cursor before calling maskRect()
Pierre Ossman [Fri, 20 Jan 2017 14:58:44 +0000 (15:58 +0100)]
Crop cursor before calling maskRect()

We can no longer assume maskRect() will tolerate uncropped data.

7 years agoRestore cropping API to maskRect()
Pierre Ossman [Fri, 20 Jan 2017 14:57:21 +0000 (15:57 +0100)]
Restore cropping API to maskRect()

We need to restore the previous, more complex API in order to
easily handle masks now that we no longer accept out-of-bounds
operations.

7 years agoMerge branch 'master' of https://github.com/ken3/tigervnc
Pierre Ossman [Thu, 19 Jan 2017 16:04:20 +0000 (17:04 +0100)]
Merge branch 'master' of https://github.com/ken3/tigervnc

7 years agoFix for shared memory leakage. 402/head
TSUKAHARA Ken [Thu, 19 Jan 2017 15:21:39 +0000 (00:21 +0900)]
Fix for shared memory leakage.

7 years agoRemove needless static qualifier
Pierre Ossman [Thu, 19 Jan 2017 14:24:18 +0000 (15:24 +0100)]
Remove needless static qualifier

7 years agoHarmonise new client handlers
Pierre Ossman [Thu, 19 Jan 2017 14:23:05 +0000 (15:23 +0100)]
Harmonise new client handlers

One was missing a call to register the fd with the X server, and
one forgot to set it to non-blocking. One result of this was a crash
when hitting the blacklist.

7 years agoPrevent invalid PixelBuffer accesses
Pierre Ossman [Wed, 18 Jan 2017 12:34:13 +0000 (13:34 +0100)]
Prevent invalid PixelBuffer accesses

There has been multiple attempts at tricking decoders to exceed
the boundaries of the active pixel buffer. Add extra checks to
prevent such invalid access.

7 years agoCheck invalid RRE rects
Pierre Ossman [Wed, 18 Jan 2017 12:33:48 +0000 (13:33 +0100)]
Check invalid RRE rects

7 years agoFix buffer overflow in ModifiablePixelBuffer::fillRect. 399/head
Michal Srb [Fri, 13 Jan 2017 14:32:23 +0000 (16:32 +0200)]
Fix buffer overflow in ModifiablePixelBuffer::fillRect.

It can be triggered by RRE message with subrectangle out of framebuffer
boundaries. It may prevent the same kind of issue caused by evil message
from another encoding too.

7 years agoDo explict sync after XShmPutImage()
Pierre Ossman [Wed, 11 Jan 2017 17:32:16 +0000 (18:32 +0100)]
Do explict sync after XShmPutImage()

The complex logic waiting for events didn't result in any added
performance, so use the simpler approach.

7 years agoFix -inetd not working with xserver >= 1.19
Hans de Goede [Mon, 9 Jan 2017 15:03:30 +0000 (16:03 +0100)]
Fix -inetd not working with xserver >= 1.19

xserver 1.19's OsInit will create a pollfd, followed by checking if fd 2 /
stderr is writable and if it is not, replacing fd 2 with /dev/null.

Since we close stderr in inetd mode to avoid xserver messages being send
to the client as vnc data, the pollfd becomes fd 2, only to be replaced
by /dev/null since a pollfd is not writable.

This commit fixes this by opening /dev/null directly after the close(2),
avoiding that the pollfd becomes fd 2.

Alan Coopersmith: Change to use dup2() for atomic switch of fd

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
7 years agoAdd Fltk and Gettext include dirs when compiling tests
Brian P. Hinz [Sun, 8 Jan 2017 16:44:50 +0000 (11:44 -0500)]
Add Fltk and Gettext include dirs when compiling tests

7 years agoImprove graphics performance on macOS 395/head
Pierre Ossman [Thu, 29 Dec 2016 14:57:21 +0000 (15:57 +0100)]
Improve graphics performance on macOS

Use the APIs the way Apple wants us to, in order to avoid slow
fallback code paths in Quartz.

7 years agoAdd test to measure framebuffer performance
Pierre Ossman [Tue, 20 Dec 2016 11:32:37 +0000 (12:32 +0100)]
Add test to measure framebuffer performance

7 years agoRemove unused declarations from Viewport.h
Pierre Ossman [Tue, 3 Jan 2017 18:07:34 +0000 (19:07 +0100)]
Remove unused declarations from Viewport.h

7 years agoAvoid translating simple error exceptions
Pierre Ossman [Sat, 17 Dec 2016 13:04:39 +0000 (14:04 +0100)]
Avoid translating simple error exceptions

These are very rare and very low level. Might as well just print
the offending call to keep things easily maintained.

7 years agoMore robust event and close handling
Pierre Ossman [Thu, 29 Dec 2016 15:52:56 +0000 (16:52 +0100)]
More robust event and close handling

There were still some circumstances where we could get stuck reading
data and not respect close events properly. Move that logic to a more
central place in order to make it more reliable.

7 years agoRespect SendClipboard setting
Pierre Ossman [Mon, 2 Jan 2017 14:16:58 +0000 (15:16 +0100)]
Respect SendClipboard setting

7 years agoDisable checkboxes for primary selection when relevant
Pierre Ossman [Mon, 2 Jan 2017 11:56:04 +0000 (12:56 +0100)]
Disable checkboxes for primary selection when relevant

7 years agoUpdate French translation
Stéphane Aulery [Fri, 23 Dec 2016 19:56:00 +0000 (20:56 +0100)]
Update French translation

7 years agoUse dixChangeWindowProperty() instead of ChangeWindowProperty()
Pierre Ossman [Mon, 19 Dec 2016 09:27:06 +0000 (10:27 +0100)]
Use dixChangeWindowProperty() instead of ChangeWindowProperty()

ChangeWindowProperty() was removed upstream because it was redundant,
and dixChangeWindowProperty() has been around since 1.5 so we can
safely use that.

7 years agoUpdate .la files on each build
Pierre Ossman [Sun, 11 Dec 2016 13:04:37 +0000 (14:04 +0100)]
Update .la files on each build

This makes sure other build systems trigger properly, e.g. when
building Xvnc.

7 years agoMerge pull request #390 from bphinz/static-viewer
Brian Hinz [Sun, 11 Dec 2016 00:38:29 +0000 (19:38 -0500)]
Merge pull request #390 from bphinz/static-viewer

Java viewer refresh

7 years agoComplete rewrite of pixel buffer & decoder implementation. 390/head
Brian P. Hinz [Sun, 11 Dec 2016 00:28:42 +0000 (19:28 -0500)]
Complete rewrite of pixel buffer & decoder implementation.

Adds multi-threading, more robust support for different pixel formats,
and several new runtime options.

7 years agoWhitespace cleanup
Brian P. Hinz [Sun, 11 Dec 2016 00:19:46 +0000 (19:19 -0500)]
Whitespace cleanup

7 years agoDelete unecessary files
Brian P. Hinz [Sun, 11 Dec 2016 00:17:01 +0000 (19:17 -0500)]
Delete unecessary files

7 years agoMethod cleanup.
Brian P. Hinz [Sun, 11 Dec 2016 00:14:55 +0000 (19:14 -0500)]
Method cleanup.

Sync various methods and filenames with C++ versions

7 years agoWhitespace cleanup
Brian P. Hinz [Sun, 11 Dec 2016 00:10:37 +0000 (19:10 -0500)]
Whitespace cleanup

7 years agoUpdate version
Brian P. Hinz [Sun, 11 Dec 2016 00:07:33 +0000 (19:07 -0500)]
Update version

8 years agoMerge branch 'master' of https://github.com/atalax/tigervnc
Pierre Ossman [Thu, 10 Nov 2016 11:23:06 +0000 (12:23 +0100)]
Merge branch 'master' of https://github.com/atalax/tigervnc

8 years agoLog statistics from ComparingUpdateTracker
Pierre Ossman [Tue, 8 Nov 2016 13:57:11 +0000 (14:57 +0100)]
Log statistics from ComparingUpdateTracker

8 years agoUpdate Ubuntu package dependencies.
Brian P. Hinz [Sun, 6 Nov 2016 14:49:22 +0000 (09:49 -0500)]
Update Ubuntu package dependencies.

Fixes #360

8 years agoUpdate package build dependecies.
Brian P. Hinz [Sun, 6 Nov 2016 14:31:54 +0000 (09:31 -0500)]
Update package build dependecies.

Fixes #349

8 years agohextileDecode.h: Fix buffer overflow 378/head
Josef Gajdusek [Fri, 4 Nov 2016 11:24:08 +0000 (12:24 +0100)]
hextileDecode.h: Fix buffer overflow

The hextileDecodexx functions do not properly check for out-of-bounds writes,
which allows a malicious server to overwrite parts of the stack.

8 years agoMacOS package: Added NSHighResolutionCapable tag to Info.plist 371/head
Friedrich Beckmann [Tue, 25 Oct 2016 15:58:21 +0000 (17:58 +0200)]
MacOS package: Added NSHighResolutionCapable tag to Info.plist

With the flag the application will start enable the high resolution
display. I tested this on a Macbook Pro with a High Resolution Display.
The fonts are better to read.

8 years agoAdded a method for copying between streams
Brian P. Hinz [Thu, 20 Oct 2016 22:06:46 +0000 (18:06 -0400)]
Added a method for copying between streams

8 years agoAdded a method for reading into a ByteBuffer
Brian P. Hinz [Thu, 20 Oct 2016 22:04:37 +0000 (18:04 -0400)]
Added a method for reading into a ByteBuffer

8 years agoCosmetic change (increased border spacing)
Brian P. Hinz [Thu, 20 Oct 2016 00:10:09 +0000 (20:10 -0400)]
Cosmetic change (increased border spacing)

8 years agoUpdate Esperanto translation
Felipe Castro [Sun, 16 Oct 2016 00:00:00 +0000 (21:00 -0300)]
Update Esperanto translation

8 years agoFix busy loop in FdOutStream::flush()
Pierre Ossman [Mon, 10 Oct 2016 14:05:46 +0000 (16:05 +0200)]
Fix busy loop in FdOutStream::flush()

This bug was introduced in c6df31db. A non-blocking socket that did
not have any more space would busy loop until the write succeeded.
Instead now it returns without any action, just as it did before
the bug was introduced.

8 years agoHandle select() errors
Pierre Ossman [Wed, 5 Oct 2016 12:44:24 +0000 (14:44 +0200)]
Handle select() errors

8 years agoMerge X server block handling code paths
Pierre Ossman [Wed, 5 Oct 2016 11:46:01 +0000 (13:46 +0200)]
Merge X server block handling code paths

Use the new X server API as the reference system and emulate it on
the older API. Avoids a lot of code duplication.

8 years agoMove getSockets() to SocketServer interface
Pierre Ossman [Wed, 5 Oct 2016 11:39:11 +0000 (13:39 +0200)]
Move getSockets() to SocketServer interface

Any caller using add or remove should also be able to list the
sockets.

8 years agoAdd xorg-xserver 1.19 support
Hans de Goede [Wed, 5 Oct 2016 09:15:27 +0000 (11:15 +0200)]
Add xorg-xserver 1.19 support

8 years agoFix temporary decoder buffer sizes
Pierre Ossman [Wed, 5 Oct 2016 09:00:37 +0000 (11:00 +0200)]
Fix temporary decoder buffer sizes

Some of these were excessively large because of redundant factors
in the size calculation.