]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
4 years agoRemove readString()/writeString()
Pierre Ossman [Thu, 21 May 2020 10:11:53 +0000 (12:11 +0200)]
Remove readString()/writeString()

These are not universal in the protocol so having functions for them
only obfuscates things.

4 years agoDon't read invalid TLS auth reason
Pierre Ossman [Thu, 21 May 2020 10:10:52 +0000 (12:10 +0200)]
Don't read invalid TLS auth reason

The specification only states a single result byte and not any reason
after a TLS authentication failure.

4 years agoImproved bandwidth monitoring
Pierre Ossman [Thu, 21 May 2020 09:31:40 +0000 (11:31 +0200)]
Improved bandwidth monitoring

Now measures over an entire update, which should hopefully give us more
stable values. They are still small values for fast networks though so
increase precision in the values we keep.

4 years agoMake direct stream API a bit safer
Pierre Ossman [Wed, 20 May 2020 13:50:11 +0000 (15:50 +0200)]
Make direct stream API a bit safer

Provide some safety checks when directly accessing the underlying
pointer of streams.

4 years agoMake sure TLS is allowed to terminate gracefully
Pierre Ossman [Fri, 23 Nov 2018 17:17:53 +0000 (18:17 +0100)]
Make sure TLS is allowed to terminate gracefully

Some systems (like TLS) need to send some final data before closing
a connection. Make sure this is properly handled by cleaning up the
security object before closing the underlying network socket.

4 years agoLog I/O errors from TLS streams
Pierre Ossman [Wed, 20 May 2020 18:03:11 +0000 (20:03 +0200)]
Log I/O errors from TLS streams

4 years agoHandle clients lost during querying
Pierre Ossman [Mon, 18 May 2020 18:27:18 +0000 (20:27 +0200)]
Handle clients lost during querying

4 years agoSeparate query and authentication handling
Pierre Ossman [Mon, 18 May 2020 17:42:13 +0000 (19:42 +0200)]
Separate query and authentication handling

Otherwise we might send duplicate result codes and other weird things.

4 years agoCheck buffer usage with a simply boolean
Pierre Ossman [Sat, 16 May 2020 10:26:08 +0000 (12:26 +0200)]
Check buffer usage with a simply boolean

External callers don't need to know the exact details, only if there is
data that needs to be flushed or not.

4 years agoDynamically allocate stream buffers
Pierre Ossman [Sat, 16 May 2020 10:14:43 +0000 (12:14 +0200)]
Dynamically allocate stream buffers

This allows us to handle peaks in input and output streams gracefully
without having to block processing.

4 years agoDon't shuffle input buffer unless actually needed
Pierre Ossman [Sat, 16 May 2020 09:32:26 +0000 (11:32 +0200)]
Don't shuffle input buffer unless actually needed

4 years agoGeneralise corking to all output streams
Pierre Ossman [Fri, 15 May 2020 20:49:47 +0000 (22:49 +0200)]
Generalise corking to all output streams

The principle can be used in a more general fashion than just TCP
streams.

4 years agoRemove unused bufSize argument from streams
Pierre Ossman [Tue, 19 May 2020 17:49:41 +0000 (19:49 +0200)]
Remove unused bufSize argument from streams

4 years agoRemove special functions from JPEG compressor
Pierre Ossman [Tue, 19 May 2020 19:24:58 +0000 (21:24 +0200)]
Remove special functions from JPEG compressor

We can do what we want with the standard methods.

4 years agoSimplify stream availability handling
Pierre Ossman [Tue, 19 May 2020 19:07:05 +0000 (21:07 +0200)]
Simplify stream availability handling

Just have a simply number of bytes argument to avoid a lot of
complexity.

4 years agoCreate common base classes for buffered streams
Pierre Ossman [Fri, 15 May 2020 18:20:53 +0000 (20:20 +0200)]
Create common base classes for buffered streams

Most streams are backed by a memory buffer. Create common base classes
for this functionality to avoid code duplication.

4 years agoAdd stream avail() methods
Pierre Ossman [Tue, 19 May 2020 18:45:22 +0000 (20:45 +0200)]
Add stream avail() methods

Makes it more readable to write code that needs to know how much
data/space is available in a stream.

4 years agoRemove OutStream::skip()
Pierre Ossman [Fri, 15 May 2020 21:33:02 +0000 (23:33 +0200)]
Remove OutStream::skip()

It might leak data depending on what's in the buffer. Use pad() instead
where blank space is needed.

4 years agoRemove unused stream methods
Pierre Ossman [Fri, 15 May 2020 17:23:56 +0000 (19:23 +0200)]
Remove unused stream methods

They were accidentally left unused in fbad8a9 so they haven't been used
in some time.

4 years agoThrow more descriptive error on decode error
Pierre Ossman [Tue, 19 May 2020 17:41:19 +0000 (19:41 +0200)]
Throw more descriptive error on decode error

We need to be able to tell this exception came from a decoder.

4 years agoUse proper constants for socket shutdown()
Pierre Ossman [Mon, 18 May 2020 17:41:40 +0000 (19:41 +0200)]
Use proper constants for socket shutdown()

For readability.

4 years agoFlush data on close
Pierre Ossman [Mon, 18 May 2020 17:40:49 +0000 (19:40 +0200)]
Flush data on close

There might be some final handshake data that is still stuck in the
buffers, so make a best effort attempt at getting it to the client.

4 years agoFix connection close log
Pierre Ossman [Fri, 23 Nov 2018 17:03:31 +0000 (18:03 +0100)]
Fix connection close log

The socket is closed at this point so we have to rely on a cached
value for the logging.

4 years agoMove auth failure delay to SConnection
Pierre Ossman [Mon, 18 May 2020 16:57:26 +0000 (18:57 +0200)]
Move auth failure delay to SConnection

It's a generic feature that is better handled as part of SConnection's
state machine.

4 years agoSupport calling methods from timers
Pierre Ossman [Mon, 18 May 2020 16:53:43 +0000 (18:53 +0200)]
Support calling methods from timers

We can't safely use the normal timers in base classes as we cannot
guarantee that subclasses will call the base class' handleTimeout()
properly if the subclass overrides it.

4 years agoUpdate French translation
Stéphane Aulery [Thu, 7 May 2020 16:11:00 +0000 (18:11 +0200)]
Update French translation

4 years ago[SELinux] Allow vnc_session_t type execute itself 1012/head
Lukas Vrabec [Wed, 6 May 2020 08:55:29 +0000 (10:55 +0200)]
[SELinux] Allow vnc_session_t type execute itself

vncsession-start is running in SELinux vnc_session_t domain because of
"SELinuxContext=system_u:system_r:vnc_session_t:s0" option in systemd
vncserver@.service unit file. vncsession-start executing binary
vncsession with SELinux label/type vnc_session_t. This access was not
allowed in vncsession policy.

4 years agoHandle empty changes for every operation
Pierre Ossman [Mon, 20 Apr 2020 06:55:13 +0000 (08:55 +0200)]
Handle empty changes for every operation

It seems like many of the X11 operations can end up with no pixels
actually changing. So instead of discovering and adding workarounds for
each individually we'll just check very region added if it's empty.

4 years agoUpdate Serbian translation
Мирослав Николић [Thu, 2 Apr 2020 17:21:00 +0000 (19:21 +0200)]
Update Serbian translation

4 years agoUpdate Ubuntu patches for current code
Pierre Ossman [Thu, 2 Apr 2020 10:50:37 +0000 (12:50 +0200)]
Update Ubuntu patches for current code

4 years agoUpdate apt cache before running builds
Pierre Ossman [Thu, 2 Apr 2020 10:49:54 +0000 (12:49 +0200)]
Update apt cache before running builds

Otherwise it might fail if the repositories have changed since the image
was generated.

4 years agoRemove legacy Xorg code
Pierre Ossman [Thu, 2 Apr 2020 09:18:00 +0000 (11:18 +0200)]
Remove legacy Xorg code

We now require at least 1.16, so remove all code that handled older
versions than that.

4 years agoRemove 8-bit support from documentation
Pierre Ossman [Thu, 2 Apr 2020 09:04:07 +0000 (11:04 +0200)]
Remove 8-bit support from documentation

We removed support in the code ages ago, but overlooked this part of the
documentation. Also remove some dead code in Xvnc on the same theme.

4 years agoMerge branch 'systemd' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Thu, 2 Apr 2020 08:56:51 +0000 (10:56 +0200)]
Merge branch 'systemd' of https://github.com/CendioOssman/tigervnc

4 years agoDo maximize more properly on macOS
Pierre Ossman [Thu, 26 Mar 2020 08:39:36 +0000 (09:39 +0100)]
Do maximize more properly on macOS

4 years agoDon't resize viewer window when maximized
Pierre Ossman [Tue, 17 Mar 2020 12:54:16 +0000 (13:54 +0100)]
Don't resize viewer window when maximized

Most window managers won't like this, and it tends to provoke bugs in
FLTK, so let's avoid it. It's probably not what the user wants anyway.

4 years agoInclude error code in getaddrinfo() exceptions
Pierre Ossman [Thu, 26 Mar 2020 07:50:17 +0000 (08:50 +0100)]
Include error code in getaddrinfo() exceptions

4 years agoAvoid using insecure variable length arrays
Pierre Ossman [Thu, 26 Mar 2020 07:50:04 +0000 (08:50 +0100)]
Avoid using insecure variable length arrays

4 years agoMerge branch 'unicode_translation' of https://github.com/CendioAlex/tigervnc
Pierre Ossman [Tue, 17 Mar 2020 15:15:39 +0000 (16:15 +0100)]
Merge branch 'unicode_translation' of https://github.com/CendioAlex/tigervnc

4 years agoThrow GAIException() for getaddrinfo errors 973/head
Alex Tanskanen [Tue, 10 Mar 2020 12:33:01 +0000 (13:33 +0100)]
Throw GAIException() for getaddrinfo errors

Created a new subclass of Exception called GAIException() that will
handle error messages from getaddrinfo() instead of letting Exception()
handle it. GAIException() will make use of gai_strerror() to map the
error code to text. On Windows, gai_strerrorW() must be used if the text
is encoded with UTF-8.

4 years agoFix typo in SocketException message
Alex Tanskanen [Thu, 5 Mar 2020 08:35:35 +0000 (09:35 +0100)]
Fix typo in SocketException message

4 years agoMake system error messeges in Windows 10 use UTF-8
Alex Tanskanen [Wed, 4 Mar 2020 09:27:02 +0000 (10:27 +0100)]
Make system error messeges in Windows 10 use UTF-8

The previous error messages did not support Unicode characters. This
commit will use UTF-8 encoding to be able to display error messages in
every language.

4 years agoRemove support for old Xorg versions 838/head
Pierre Ossman [Sat, 1 Feb 2020 10:28:08 +0000 (11:28 +0100)]
Remove support for old Xorg versions

No current distribution ship anything this ancient anyway.

4 years agoUse standard install dir variable names
Pierre Ossman [Fri, 1 Feb 2019 12:24:20 +0000 (13:24 +0100)]
Use standard install dir variable names

This makes our builds directly compatible with most distributions
without packagers/users having to specify extra flags.

4 years agoAdd SELinux policy file for vncsession
Pierre Ossman [Thu, 19 Jul 2018 14:04:23 +0000 (16:04 +0200)]
Add SELinux policy file for vncsession

Running as a service on a SELinux system requires rules so we can
transition to our own context. We also need the proper permissions
to start new user sessions.

4 years agoStart sessions via PAM
Pierre Ossman [Mon, 16 Jul 2018 13:58:06 +0000 (15:58 +0200)]
Start sessions via PAM

This sets up a more correct session as there are key tasks that
need to be performed by PAM. E.g. systemd will allocate cgroups
and start base services.

In order to easily handle this as a system service the mapping of
displays is now done via a configuration file.

4 years agoFix C linking when doing static builds
Pierre Ossman [Mon, 16 Jul 2018 13:57:40 +0000 (15:57 +0200)]
Fix C linking when doing static builds

4 years agoMake PAM mandatory
Pierre Ossman [Wed, 11 Jul 2018 13:49:46 +0000 (15:49 +0200)]
Make PAM mandatory

It is present on all UNIX systems anyway, so let's simplify things.
We will need it for more proper session startup anyway.

4 years agoStop searching for Xvnc
Pierre Ossman [Wed, 11 Mar 2020 15:48:25 +0000 (16:48 +0100)]
Stop searching for Xvnc

Assume we are part of a complete and proper installation and encode the
full expected path in to the vncserver script.

4 years agoStart the sessions using xinit
Pierre Ossman [Tue, 31 Jul 2018 14:06:17 +0000 (16:06 +0200)]
Start the sessions using xinit

It keeps much better track of the X server and startup files than
we can do.

4 years agoMake vncserver always run in the foreground
Pierre Ossman [Wed, 23 Jan 2019 14:29:41 +0000 (15:29 +0100)]
Make vncserver always run in the foreground

We need to be started as a system service for things to work correctly
anyway, so delegate the work of starting and stopping things to the
system service manager (e.g. systemd).

4 years agoStart sessions using session desktop file
Pierre Ossman [Fri, 27 Jul 2018 19:39:01 +0000 (21:39 +0200)]
Start sessions using session desktop file

This is how display managers (e.g. gdm or lightdm) start sessions
and is necessary to get the proper set of environment variables.

4 years agoDon't create a default user config
Pierre Ossman [Fri, 11 Jan 2019 16:08:41 +0000 (17:08 +0100)]
Don't create a default user config

We don't want to create files in the users home directory unless we
have to. Users can read about how this file works in our man pages.

4 years agoDon't accept arbitrary arguments to vncserver
Pierre Ossman [Wed, 23 Jan 2019 13:31:26 +0000 (14:31 +0100)]
Don't accept arbitrary arguments to vncserver

We now have config files for more fine grained control of these
things, so avoid duplicating the functionality.

4 years agoStop unsetting environment variables
Pierre Ossman [Fri, 27 Jul 2018 12:40:17 +0000 (14:40 +0200)]
Stop unsetting environment variables

These might contain values we want if we are start from a proper
environment.

4 years agoAlways install systemd services
Pierre Ossman [Fri, 22 Dec 2017 09:35:29 +0000 (10:35 +0100)]
Always install systemd services

It is the most common init system these days so it should not be
hidden in the contrib/ directory.

This also removes all old SysV files from the contrib packages.

4 years agoAdd default configuration files
Pierre Ossman [Wed, 23 Jan 2019 13:09:35 +0000 (14:09 +0100)]
Add default configuration files

Install some example files to make things more easily discoverable.

4 years agoRemove old distribution packaging
Pierre Ossman [Sat, 1 Feb 2020 10:12:27 +0000 (11:12 +0100)]
Remove old distribution packaging

These are EOL (or soon to be) and we want to start relying on things
present in current distributions.

4 years agoMerge branch 'xorg-server-1.20.7' of https://github.com/lheckemann/tigervnc
Pierre Ossman [Thu, 27 Feb 2020 12:50:38 +0000 (13:50 +0100)]
Merge branch 'xorg-server-1.20.7' of https://github.com/lheckemann/tigervnc

4 years agoFix error check for zlib calls
Pierre Ossman [Thu, 27 Feb 2020 12:35:41 +0000 (13:35 +0100)]
Fix error check for zlib calls

There are multiple "okay" return values, not just Z_OK. Make sure we
don't bail out needlessly.

4 years agoFix framebuffer setup in encperf
Pierre Ossman [Thu, 27 Feb 2020 11:43:47 +0000 (12:43 +0100)]
Fix framebuffer setup in encperf

We adapted to the wrong new callback in a previous commit.

4 years agoProvide dummy output for dummy client connections
Pierre Ossman [Thu, 27 Feb 2020 11:43:05 +0000 (12:43 +0100)]
Provide dummy output for dummy client connections

The CConnection base class wants to be able to write things these days,
so we need to provide it a place to do so.

4 years agoMerge pull request #958 from sequencer/env_userpass
Samuel Mannehed [Fri, 14 Feb 2020 12:28:06 +0000 (13:28 +0100)]
Merge pull request #958 from sequencer/env_userpass

Read username and passwrod from env.

4 years agobug fix for user is NULL 958/head
Jiuyang liu [Mon, 10 Feb 2020 20:50:00 +0000 (20:50 +0000)]
bug fix for user is NULL

4 years agoadd man
Jiuyang liu [Mon, 10 Feb 2020 20:46:10 +0000 (20:46 +0000)]
add man

4 years agoimplement username/password from env.
Jiuyang liu [Thu, 6 Feb 2020 14:48:25 +0000 (14:48 +0000)]
implement username/password from env.

4 years agoxserver: add no-op input thread init function 951/head
Linus Heckemann [Sat, 1 Feb 2020 10:08:26 +0000 (11:08 +0100)]
xserver: add no-op input thread init function

This allows Xvnc to build with xorg-server 1.20.7, which requires OS
layers to implement a ddxInputThreadInit function when configured with
--enable-input-thread (the default).

relevant xorg-server commit: e3f26605d85d987da434640f52646d728f1fe919

4 years agoInclude Carbon when statically linking gettext on macOS
Pierre Ossman [Thu, 30 Jan 2020 13:23:24 +0000 (14:23 +0100)]
Include Carbon when statically linking gettext on macOS

As gettext needs some stuff from Carbon and we don't want to rely on it
being pulled in as a side effect.

4 years agoUpdate copyright year to 2020
Pierre Ossman [Thu, 16 Jan 2020 13:26:48 +0000 (14:26 +0100)]
Update copyright year to 2020

4 years agoMerge branch 'emulateMB' of https://github.com/CendioAlex/tigervnc
Pierre Ossman [Thu, 16 Jan 2020 13:18:50 +0000 (14:18 +0100)]
Merge branch 'emulateMB' of https://github.com/CendioAlex/tigervnc

4 years agoUse sys/time.h on Windows as well
Pierre Ossman [Thu, 16 Jan 2020 13:18:08 +0000 (14:18 +0100)]
Use sys/time.h on Windows as well

Modern MinGW seems to provide this, so simplify things a bit. This also
side steps some of the issue of the windows.h/winsock2.h include
ordering.

4 years agoAdd emulated middle mouse button 942/head
Alex Tanskanen [Mon, 13 Jan 2020 14:23:20 +0000 (15:23 +0100)]
Add emulated middle mouse button

Not every mouse has three buttons e.g. laptops. Some OS might not
have support for middle mouse button emulation.

This commit adds emulation for middle mouse button when pressing both
left and right mouse button simultaneously.

4 years agoRemove "Dismiss menu" from context menu 938/head
Alex Tanskanen [Thu, 9 Jan 2020 15:17:06 +0000 (16:17 +0100)]
Remove "Dismiss menu" from context menu

This was not necessary since you could use ESC key or simply just
clicking outside of the context menu to close the menu.

4 years agoAllow XK_Scroll_Lock when LED state isn't supported
Pierre Ossman [Fri, 3 Jan 2020 12:46:54 +0000 (13:46 +0100)]
Allow XK_Scroll_Lock when LED state isn't supported

Otherwise such clients cannot use Scroll Lock at all, and that is
probably worse than any effects we might get from getting out of sync.

4 years agoClean up initialization of DIBSectionBuffer
Pierre Ossman [Fri, 3 Jan 2020 12:10:20 +0000 (13:10 +0100)]
Clean up initialization of DIBSectionBuffer

We had an unintentional conflict with PixelBuffer::setSize() here.
But we can simplify this further as this initialization is only used
by the subclass DeviceFrameBuffer, and only once.

4 years agoProvide correct dimensions for XShm setup
Pierre Ossman [Mon, 30 Dec 2019 09:50:52 +0000 (10:50 +0100)]
Provide correct dimensions for XShm setup

Since 53f913a we initialize the underlying PixelBuffer with 0x0
dimensions, which means we need to keep more explicit track of what
we are trying to allocate in the setup methods.

4 years agoRemove unneeded memory checks
Pierre Ossman [Mon, 30 Dec 2019 09:26:12 +0000 (10:26 +0100)]
Remove unneeded memory checks

new throws an exception on allocation errors rather than return NULL.

4 years agoFix saving of bad server certificates
Pierre Ossman [Mon, 30 Dec 2019 09:24:11 +0000 (10:24 +0100)]
Fix saving of bad server certificates

This check is completely backwards and it is currently unknown how
this ever worked.

4 years agoel6 build improvements. dependency updates, link order fixes
Brian P. Hinz [Sat, 28 Dec 2019 21:18:35 +0000 (16:18 -0500)]
el6 build improvements. dependency updates, link order fixes

4 years agoUpdate Esperanto translation
Felipe Castro [Wed, 25 Dec 2019 15:34:00 +0000 (12:34 -0300)]
Update Esperanto translation

4 years agoSet initial blank cursor
Pierre Ossman [Mon, 23 Dec 2019 15:26:40 +0000 (16:26 +0100)]
Set initial blank cursor

If the server doesn't support local cursors and want to render them
itself then we need to make sure the local cursor is invisible.

This also makes sure we always have some cursor allocated, so we can
remove the checks in some places.

4 years agoUpdate source URLs in el6 spec file
Brian P. Hinz [Sun, 22 Dec 2019 19:17:16 +0000 (14:17 -0500)]
Update source URLs in el6 spec file

4 years agoRemove hard coded source URLs from travis-ci build script
Brian P. Hinz [Sun, 22 Dec 2019 19:02:47 +0000 (14:02 -0500)]
Remove hard coded source URLs from travis-ci build script

4 years agoAllow non-interactive installs for bionic (travis-ci)
Brian P. Hinz [Sat, 21 Dec 2019 23:15:19 +0000 (18:15 -0500)]
Allow non-interactive installs for bionic (travis-ci)

4 years agoAdd ubuntu-bionic to travis-ci builds
Brian P. Hinz [Sat, 21 Dec 2019 22:59:08 +0000 (17:59 -0500)]
Add ubuntu-bionic to travis-ci builds

4 years agoMake sure travis-ci builds java viewer with latest openjdk 8
Brian P. Hinz [Sat, 21 Dec 2019 22:48:28 +0000 (17:48 -0500)]
Make sure travis-ci builds java viewer with latest openjdk 8

4 years agoMostly stylistic changes to java viewer to match recent changes to native viewer
Brian P. Hinz [Sat, 21 Dec 2019 21:51:33 +0000 (16:51 -0500)]
Mostly stylistic changes to java viewer to match recent changes to native viewer

4 years agoFix travis-ci build scripts broken by c59f195
Brian P. Hinz [Sat, 21 Dec 2019 17:04:32 +0000 (12:04 -0500)]
Fix travis-ci build scripts broken by c59f195

4 years agoFix maximum compress lvl in parameter list
Samuel Mannehed [Fri, 20 Dec 2019 15:13:17 +0000 (16:13 +0100)]
Fix maximum compress lvl in parameter list

Commit 4e61f8dbc51f83b1d71319b763fbd4d916d13e98 fixed the GUI but forgot
to change the other places in the code.

4 years agoUse the correct minimum value for compression lvl
Samuel Mannehed [Fri, 20 Dec 2019 15:06:48 +0000 (16:06 +0100)]
Use the correct minimum value for compression lvl

There was even some confusion in the RFB protocol regarding this, but
the zlib implementation confirms that accepted values for compression
level is 0-9.

4 years agoUse the correct maximum value for compression lvl
Samuel Mannehed [Fri, 20 Dec 2019 14:25:53 +0000 (15:25 +0100)]
Use the correct maximum value for compression lvl

The GUI incorrectly noted the max level to be 6 while it in fact is 9.

4 years agoRemove confusing note about compression level
Samuel Mannehed [Fri, 20 Dec 2019 14:24:23 +0000 (15:24 +0100)]
Remove confusing note about compression level

Even if this note is true it just adds confusion.

4 years agoSimplify color level descriptions
Samuel Mannehed [Fri, 20 Dec 2019 13:47:04 +0000 (14:47 +0100)]
Simplify color level descriptions

The number of colors used isn't something the end-users should have to
concern themselves with. I intentionally left the information in the
man-pages.

4 years agoMerge branch 'secfix' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 20 Dec 2019 06:39:06 +0000 (07:39 +0100)]
Merge branch 'secfix' of https://github.com/CendioOssman/tigervnc

4 years agoRemove support for ubuntu trusty since it's been EoL for 6 months
Brian P. Hinz [Mon, 16 Dec 2019 00:39:03 +0000 (19:39 -0500)]
Remove support for ubuntu trusty since it's been EoL for 6 months

4 years agoCheck the correct stream if there is more data pending
Pierre Ossman [Mon, 9 Dec 2019 15:58:07 +0000 (16:58 +0100)]
Check the correct stream if there is more data pending

The input stream might no longer be the raw socket, so we need to
query what's currently active. That wrapping stream might have its
own buffering and may have more data even if the socket is drained.

4 years agoHandle pending data in TLS buffers
Pierre Ossman [Mon, 9 Dec 2019 15:57:04 +0000 (16:57 +0100)]
Handle pending data in TLS buffers

There might be more bytes left in the current TLS record, even if
there is nothing on the underlying stream. Make sure we properly
return this when we aren't being requested to block.

4 years agoCorrectly calculate rects with no CopyRect support
Pierre Ossman [Mon, 9 Dec 2019 14:24:15 +0000 (15:24 +0100)]
Correctly calculate rects with no CopyRect support

The copied rects have already been merged in to the changed rects
at this point if the client doesn't support the CopyRect encoding.

4 years agoDon't background the main session command
Pierre Ossman [Mon, 9 Dec 2019 12:54:17 +0000 (13:54 +0100)]
Don't background the main session command

When used with -fg we expect the startup script to remain running until
the session is over. This will not happen if the session command is put
in the background using &.

4 years agoFix link order of nettle and hogweed
Pierre Ossman [Mon, 9 Dec 2019 12:33:48 +0000 (13:33 +0100)]
Fix link order of nettle and hogweed

Hogweed needs nettle, not the other way around. So make sure they
are specified in the correct order for the static link to succeed.