]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
5 years agoAdd delay on authentication failures
Pierre Ossman [Mon, 1 Apr 2019 12:22:01 +0000 (14:22 +0200)]
Add delay on authentication failures

This provides some basic rate limiting that will make it difficult
for an attacker to brute force passwords. Only relevant when the
blacklist is disabled as otherwise the attacker only gets a very
limited number of attempts.

5 years agoHandle server name overflow properly
Pierre Ossman [Tue, 26 Mar 2019 10:11:20 +0000 (11:11 +0100)]
Handle server name overflow properly

We need to make sure it is null terminated on truncation. We also
need to avoid giving a too large size argument or modern gcc will
complain.

5 years agoAdd missing throws for exception
Pierre Ossman [Tue, 26 Mar 2019 10:10:28 +0000 (11:10 +0100)]
Add missing throws for exception

It is not enough to create an exception object, you need to throw
it as well.

5 years agoBetter document the argument for -geometry
Pierre Ossman [Tue, 26 Mar 2019 09:29:29 +0000 (10:29 +0100)]
Better document the argument for -geometry

It's not common knowledge these days how X geometry is specified, and
even the man page X(7) is missing on many systems now.

5 years agoShow extra options in vncviewer --help
Pierre Ossman [Tue, 26 Mar 2019 09:17:41 +0000 (10:17 +0100)]
Show extra options in vncviewer --help

FLTK has some options (that we've also documented in the man page)
that should be mentioned in the --help output.

5 years agoDon't use un-initialized stride to base constructor
Pierre Ossman [Mon, 25 Mar 2019 15:14:49 +0000 (16:14 +0100)]
Don't use un-initialized stride to base constructor

We can use a dummy value here as we set up the buffer and stride
further down in the constructor.

5 years agoAllow blacklist to be disabled
Pierre Ossman [Mon, 25 Mar 2019 13:10:25 +0000 (14:10 +0100)]
Allow blacklist to be disabled

There might be multiple clients using a single IP (e.g. NAT), which
can make the blacklist do more harm than good. So add a setting to
disable it if needed.

5 years agoMove Blacklist parameters out of the class
Pierre Ossman [Mon, 25 Mar 2019 13:02:45 +0000 (14:02 +0100)]
Move Blacklist parameters out of the class

No need to expose these, so keep them internal to the implementation,
like most settings are.

5 years agoMerge branch 'copyrightyear' of https://github.com/samhed/tigervnc
Pierre Ossman [Thu, 28 Feb 2019 10:18:04 +0000 (11:18 +0100)]
Merge branch 'copyrightyear' of https://github.com/samhed/tigervnc

5 years agoOnly do initial LED sync if focused
Pierre Ossman [Thu, 28 Feb 2019 09:57:40 +0000 (10:57 +0100)]
Only do initial LED sync if focused

We always sync when we get focus, so this code path is really only
for when the server announces LED state support after we already
have focus.

Make sure we only handle this specific scenario as otherwise we
could end up syncing twice, which just toggles things back and forth
and ends up syncing incorrectly.

5 years agoUpdate visible copyright years to 2019 799/head
Samuel Mannehed [Wed, 27 Feb 2019 14:29:33 +0000 (15:29 +0100)]
Update visible copyright years to 2019

5 years agoUpdate German translation
Mario Blättermann [Fri, 15 Feb 2019 13:33:00 +0000 (14:33 +0100)]
Update German translation

5 years agoUpdate Esperanto translation
Felipe Castro [Sat, 26 Jan 2019 19:13:00 +0000 (20:13 +0100)]
Update Esperanto translation

5 years agoDon't build xserver with -I$(includedir) as it breaks cross-compiling 795/head
James Le Cuirot [Wed, 13 Feb 2019 23:22:06 +0000 (23:22 +0000)]
Don't build xserver with -I$(includedir) as it breaks cross-compiling

This is where to install headers to, not where to find headers to
build against. Toolchains should know where to locate their system
headers while non-system headers should be found using
pkg-config. Users with bizarre setups where the toolchain really
cannot find the system headers should set CPPFLAGS.

5 years agoFix Travis C++ specifier
Pierre Ossman [Tue, 22 Jan 2019 14:10:08 +0000 (15:10 +0100)]
Fix Travis C++ specifier

Travis wants "cpp", not "c++". It just happened to work anyway
because the base image includes the same tools.

5 years agoMerge branch 'docker' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Tue, 22 Jan 2019 10:02:38 +0000 (11:02 +0100)]
Merge branch 'docker' of https://github.com/CendioOssman/tigervnc

5 years agoUse Ubuntu 16.04 for general builds 788/head
Pierre Ossman [Tue, 22 Jan 2019 09:14:25 +0000 (10:14 +0100)]
Use Ubuntu 16.04 for general builds

It has a current GnuTLS and FLTK which simplifies the build.

5 years agoDo parallel builds for Ubuntu packages
Pierre Ossman [Mon, 21 Jan 2019 15:29:20 +0000 (16:29 +0100)]
Do parallel builds for Ubuntu packages

Make the builds faster as we now run them often via Travis.

5 years agoBuild Ubuntu 14.04 (Trusty) packages in Travis
Pierre Ossman [Wed, 16 Jan 2019 12:43:05 +0000 (13:43 +0100)]
Build Ubuntu 14.04 (Trusty) packages in Travis

5 years agoBuild Ubuntu 16.04 (Xenial) package in Travis
Pierre Ossman [Tue, 15 Jan 2019 14:00:21 +0000 (15:00 +0100)]
Build Ubuntu 16.04 (Xenial) package in Travis

5 years agoBuild RHEL 6 packages in Travis
Pierre Ossman [Mon, 14 Jan 2019 17:55:13 +0000 (18:55 +0100)]
Build RHEL 6 packages in Travis

5 years agoBuild RHEL 7 packages in Travis
Pierre Ossman [Mon, 14 Jan 2019 17:55:13 +0000 (18:55 +0100)]
Build RHEL 7 packages in Travis

5 years agoClean up RPM spec files
Pierre Ossman [Tue, 15 Jan 2019 09:05:21 +0000 (10:05 +0100)]
Clean up RPM spec files

Remove the unused Java self sign variable, and make sure we don't
hard code a version as it needs to be adjusted before a build.

5 years agoAdd missing FLTK dependency
Pierre Ossman [Tue, 15 Jan 2019 11:29:38 +0000 (12:29 +0100)]
Add missing FLTK dependency

libXft is needed to build FLTK for the RHEL 6 RPM.

5 years agoClean up Ubuntu 14.04 FLTK build
Pierre Ossman [Fri, 18 Jan 2019 15:46:30 +0000 (16:46 +0100)]
Clean up Ubuntu 14.04 FLTK build

The supporting scripts weren't really up to date, so remove them
and just require the packager to include FLTK in the source
tarball.

5 years agoMake sure libXrandr is available in package builds
Pierre Ossman [Mon, 14 Jan 2019 17:53:48 +0000 (18:53 +0100)]
Make sure libXrandr is available in package builds

It is needed by x0vncserver.

5 years agoUse Xorg source from distribution
Pierre Ossman [Fri, 18 Jan 2019 14:42:46 +0000 (15:42 +0100)]
Use Xorg source from distribution

5 years agoAdd libXfont as a Debian package dependency
Pierre Ossman [Wed, 16 Jan 2019 12:05:16 +0000 (13:05 +0100)]
Add libXfont as a Debian package dependency

It is needed to build Xvnc.

5 years agoStop building FLTK for modern distributions
Pierre Ossman [Mon, 14 Jan 2019 17:53:16 +0000 (18:53 +0100)]
Stop building FLTK for modern distributions

They include a new enough version, so stop doing our own build.

5 years agoAdd x0vncserver option to only allow localhost connections
Pierre Ossman [Wed, 16 Jan 2019 15:35:32 +0000 (16:35 +0100)]
Add x0vncserver option to only allow localhost connections

Patch originally by @KenMilmore on GitHub.

5 years agoAdd Chinese (traditional) translation
pan93412 [Tue, 15 Jan 2019 11:48:00 +0000 (19:48 +0800)]
Add Chinese (traditional) translation

5 years agoRemove obsolete packages
Pierre Ossman [Fri, 11 Jan 2019 21:19:20 +0000 (22:19 +0100)]
Remove obsolete packages

Packages for RHEL 5 and Ubuntu 12.04 are no longer maintained, so
remove those files.

5 years agoRemove obsolete FLTK patches
Pierre Ossman [Fri, 11 Jan 2019 21:17:43 +0000 (22:17 +0100)]
Remove obsolete FLTK patches

These are for ancient versions of FLTK and are not needed in the
versions required by us.

5 years agoclarify shell dependencies
Ben Hildred [Fri, 28 Sep 2018 20:49:45 +0000 (14:49 -0600)]
clarify shell dependencies

The contributed script uses bash features extensively and does not work with ksh.

5 years agodead links and bitrot
Ben Hildred [Fri, 28 Sep 2018 20:46:27 +0000 (14:46 -0600)]
dead links and bitrot

Two minor issues:

This script is written in python two which is depreciated, and should be rewritten in python three, but I have so far been successful in not learning python. :-) to simplify debugging I have clarified that it needs a python two interpreter.

This script downloads an old version of mesa (an update may be appropriate),  unfortunately the release candidate previously specified is no longer available, so an update to the next released version was made.

5 years agoInclude libuuid in static builds
Pierre Ossman [Wed, 9 Jan 2019 09:30:26 +0000 (10:30 +0100)]
Include libuuid in static builds

Modern fontconfig needs it, so make sure it is included.

5 years agoAdd Github issue templates
Pierre Ossman [Fri, 28 Dec 2018 12:12:12 +0000 (13:12 +0100)]
Add Github issue templates

Add basic templates for users to follow so that we get the information
we need directly in the initial report.

5 years agoMerge branch 'rpm' of https://github.com/MarkMielke/tigervnc
Pierre Ossman [Thu, 13 Dec 2018 12:26:25 +0000 (13:26 +0100)]
Merge branch 'rpm' of https://github.com/MarkMielke/tigervnc

5 years agoUpdate RPM package dependencies to require version alignment between packages. 774/head
Mark Mielke [Sun, 9 Dec 2018 14:09:27 +0000 (09:09 -0500)]
Update RPM package dependencies to require version alignment between packages.

5 years agoMerge branch 'vmware' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Mon, 10 Dec 2018 20:25:18 +0000 (21:25 +0100)]
Merge branch 'vmware' of https://github.com/CendioOssman/tigervnc

5 years agoAdd support for VMware LED status 775/head
Pierre Ossman [Mon, 5 Nov 2018 15:28:57 +0000 (16:28 +0100)]
Add support for VMware LED status

5 years agoAdd support for VMware cursors
Pierre Ossman [Mon, 5 Nov 2018 15:28:18 +0000 (16:28 +0100)]
Add support for VMware cursors

5 years agoMerge branch 'connparams' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Mon, 10 Dec 2018 20:16:07 +0000 (21:16 +0100)]
Merge branch 'connparams' of https://github.com/CendioOssman/tigervnc

5 years agoMake sure we always have a valid screen layout 761/head
Pierre Ossman [Thu, 1 Nov 2018 15:10:19 +0000 (16:10 +0100)]
Make sure we always have a valid screen layout

Add more checks and fix some callers to make sure that the server
core always has a valid screen layout configured.

5 years agoHandle line breaks in log messages
Pierre Ossman [Thu, 1 Nov 2018 15:04:30 +0000 (16:04 +0100)]
Handle line breaks in log messages

5 years agoRequire all SMsgWriter caller to check capabilities
Pierre Ossman [Mon, 29 Oct 2018 09:03:37 +0000 (10:03 +0100)]
Require all SMsgWriter caller to check capabilities

Make the API consisitent by requiring the caller to check what the client
supports before calling any of the write* functions. This avoids the
confusion that the functions might not always do anything.

5 years agoAbstract sending cursor and resizing the desktop
Pierre Ossman [Mon, 29 Oct 2018 09:03:37 +0000 (10:03 +0100)]
Abstract sending cursor and resizing the desktop

Avoid having the callers need to know about the different variants
of these functions and instead have the writer pick the most appropriate
extension.

5 years agoAlways send current screen layout to client
Pierre Ossman [Mon, 10 Dec 2018 19:16:12 +0000 (20:16 +0100)]
Always send current screen layout to client

This is what the protocol requires, rather than sending what the
client specified in the request. This should be the same in practice
except for failures and possibly some races.

5 years agoIncrease range of ComparingUpdateTracker statistics
Pierre Ossman [Fri, 30 Nov 2018 14:59:43 +0000 (15:59 +0100)]
Increase range of ComparingUpdateTracker statistics

32 bits are not enough to keep track of all the pixels that might
flow through the system. Expand things to 64 bits, which should cover
all reasonable uses.

5 years agoMerge branch 'altgr' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 30 Nov 2018 14:44:54 +0000 (15:44 +0100)]
Merge branch 'altgr' of https://github.com/CendioOssman/tigervnc

5 years agoAvoid using "fake" key codes 772/head
Pierre Ossman [Mon, 26 Nov 2018 14:40:30 +0000 (15:40 +0100)]
Avoid using "fake" key codes

There is a range of key codes that are never sent by a real keyboard
and are therefore used by layouts to hide "fake" mappings. Make sure
to only use these as a fallback as some applications get confused
when they see these codes.

5 years agoMerge pull request #765 from bmwiedemann/timestamp
Brian Hinz [Tue, 27 Nov 2018 16:22:34 +0000 (11:22 -0500)]
Merge pull request #765 from bmwiedemann/timestamp

Use cmake TIMESTAMP function

5 years agoDocument -AcceptSetDesktopSize in x0vncserver.man
Pierre Ossman [Mon, 26 Nov 2018 14:44:55 +0000 (15:44 +0100)]
Document -AcceptSetDesktopSize in x0vncserver.man

It now accepts this parameter, so make sure it is documented.

5 years agoAllow -AcceptSetDesktopSize in x0vncserver
Pierre Ossman [Mon, 26 Nov 2018 13:58:59 +0000 (14:58 +0100)]
Allow -AcceptSetDesktopSize in x0vncserver

We disabled it in 0a0e582 since it didn't have support for resizing.
But it got that support in 242c5b2, yet we forgot to allow this
setting again.

5 years agoEL7 with Xorg 1.2.0 needs --disable-dri3
Brian P. Hinz [Mon, 26 Nov 2018 05:17:59 +0000 (00:17 -0500)]
EL7 with Xorg 1.2.0 needs --disable-dri3

5 years agoel7 bumped version of xorg to 1.20
Brian P. Hinz [Mon, 26 Nov 2018 03:30:52 +0000 (22:30 -0500)]
el7 bumped version of xorg to 1.20

5 years agoRemove Java viewer from debian packages (4a4453f broke nightly builds)
Brian P. Hinz [Mon, 26 Nov 2018 03:22:29 +0000 (22:22 -0500)]
Remove Java viewer from debian packages (4a4453f broke nightly builds)

6 years agoAbort unsafe lossless refresh early
Pierre Ossman [Fri, 23 Nov 2018 16:48:02 +0000 (17:48 +0100)]
Abort unsafe lossless refresh early

We need to check earlier if we are going to send this refresh or
not. Otherwise we send out pings pointlessly, and we also stall
the request loop with a client as we clear the requested region
without actually sending an update message.

6 years agoMove lossless refresh handling to separate method
Pierre Ossman [Fri, 23 Nov 2018 16:45:04 +0000 (17:45 +0100)]
Move lossless refresh handling to separate method

It makes the logic a bit easier to follow, and also fixes the
case where just a fake update is needed.

6 years agoFix bad size check in Tight decoder
Pierre Ossman [Fri, 23 Nov 2018 16:35:04 +0000 (17:35 +0100)]
Fix bad size check in Tight decoder

Fallout from beb59a43.

6 years agoUse larger integers for the cursor dithering
Pierre Ossman [Fri, 23 Nov 2018 15:12:17 +0000 (16:12 +0100)]
Use larger integers for the cursor dithering

We need a larger range to handle the temporary overflow caused by
the Floyd-Steinberg dithering.

6 years agoMerge branch 'vla' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Wed, 21 Nov 2018 16:14:15 +0000 (17:14 +0100)]
Merge branch 'vla' of https://github.com/CendioOssman/tigervnc

6 years agoDo debug build in Travis 766/head
Pierre Ossman [Wed, 21 Nov 2018 15:23:42 +0000 (16:23 +0100)]
Do debug build in Travis

The debug builds do extra check, so chose that mode for Travis so we
get early warnings for problems.

6 years agoMerge branch 'covscan' of https://github.com/grulja/tigervnc
Pierre Ossman [Wed, 21 Nov 2018 15:02:31 +0000 (16:02 +0100)]
Merge branch 'covscan' of https://github.com/grulja/tigervnc

6 years agoFix memory leaks 729/head
Jan Grulich [Tue, 20 Nov 2018 09:44:39 +0000 (10:44 +0100)]
Fix memory leaks

6 years agoCheck correct return code
Jan Grulich [Tue, 20 Nov 2018 09:44:26 +0000 (10:44 +0100)]
Check correct return code

6 years agoUse cmake TIMESTAMP function 765/head
Bernhard M. Wiedemann [Sun, 18 Nov 2018 07:14:50 +0000 (08:14 +0100)]
Use cmake TIMESTAMP function

because it is not only platform independent
but also allows to override the build date
This helps to make tigervnc builds reproducible

See https://reproducible-builds.org/ for why this is good

Also adds UTC flag, to be independent of timezone.
Also changes JAVA_DATE format to ISO-8601 date format.

Requires cmake-2.8.11+ from 2013

6 years agoSave a few X11 server roundtrips by ignoring empty damage regions. 763/head
Christian Authmann [Sun, 11 Nov 2018 10:14:40 +0000 (11:14 +0100)]
Save a few X11 server roundtrips by ignoring empty damage regions.

Logging revealed that a few empty damage regions are emitted on startup. Those don't need to be rendered to the Surface pixmap.

6 years agoPrevent rendering uninitialized Pixmap contents on X11
Christian Authmann [Sun, 11 Nov 2018 09:40:48 +0000 (10:40 +0100)]
Prevent rendering uninitialized Pixmap contents on X11

The Pixmap is filled in as updates from the server arrive. Before the first full update, it would contain undefined contents, which would be rendered onto the ViewPort.
Clearing the Pixmap is only done on startup and when changing the server resolution, so it's not performance critical.

6 years agoMerge branch 'exittimer' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 9 Nov 2018 16:28:44 +0000 (17:28 +0100)]
Merge branch 'exittimer' of https://github.com/CendioOssman/tigervnc

6 years agoGet rid of SocketServer::checkTimeouts() 762/head
Pierre Ossman [Fri, 26 Oct 2018 13:54:56 +0000 (15:54 +0200)]
Get rid of SocketServer::checkTimeouts()

It doesn't belong on each socket server object as timers are global.
Force implementations to call the Timer system directly instead,
avoiding any middle men.

6 years agoChange idle timeout to timer
Pierre Ossman [Fri, 26 Oct 2018 13:54:00 +0000 (15:54 +0200)]
Change idle timeout to timer

Get this timeout in to the timer system as well to make things
simpler and more robust.

6 years agoProperly terminate server on timeouts
Pierre Ossman [Sat, 29 Sep 2018 09:24:19 +0000 (11:24 +0200)]
Properly terminate server on timeouts

Do a proper cleanup when one of the termination timeouts trigger
rather than just exiting on the spot. This makes sure we don't leave
stray stuff around, e.g. unix socket files.

6 years agoChange exit timeouts to timers
Pierre Ossman [Fri, 26 Oct 2018 13:34:03 +0000 (15:34 +0200)]
Change exit timeouts to timers

This makes them more consistent with everything else, which makes
things clearer and also allows them to handle some corner cases
(e.g. only firing once).

6 years agoMerge branch 'vncserver' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 9 Nov 2018 16:21:35 +0000 (17:21 +0100)]
Merge branch 'vncserver' of https://github.com/CendioOssman/tigervnc

6 years agoClean up headers 755/head
Pierre Ossman [Thu, 11 Oct 2018 06:08:19 +0000 (08:08 +0200)]
Clean up headers

Add missing comments and clearly separate methods from attributes.

6 years agoRemove unused functions from server classes
Pierre Ossman [Thu, 11 Oct 2018 06:05:08 +0000 (08:05 +0200)]
Remove unused functions from server classes

6 years agoMake throwConnFailedException() protected
Pierre Ossman [Thu, 11 Oct 2018 05:54:12 +0000 (07:54 +0200)]
Make throwConnFailedException() protected

It is an internal function so it has no business being public.
Compare with CConnection where it is already private.

6 years agoRemove writeConnFailedFromScratch()
Pierre Ossman [Thu, 11 Oct 2018 05:52:50 +0000 (07:52 +0200)]
Remove writeConnFailedFromScratch()

It is static and only used from a single place, so let's inline it.

6 years agoRemove comments about self-deleting connections
Pierre Ossman [Mon, 8 Oct 2018 14:03:43 +0000 (16:03 +0200)]
Remove comments about self-deleting connections

It isn't true so remove those comments.

6 years agoStop trying to send ListConnInfo via WM_COPYDATA
Pierre Ossman [Fri, 9 Nov 2018 16:14:57 +0000 (17:14 +0100)]
Stop trying to send ListConnInfo via WM_COPYDATA

Windows tries to do a copy of it, and it is too complex to survive
that. Just reference the object directly as we know the source of
the message here.

6 years agoMove ListConnInfo to WinVNC directory
Pierre Ossman [Mon, 8 Oct 2018 14:03:01 +0000 (16:03 +0200)]
Move ListConnInfo to WinVNC directory

It is functionality specific to WinVNC, so move the code there
to make things more clear.

6 years agoRemove variable length arrays
Pierre Ossman [Wed, 7 Nov 2018 20:36:05 +0000 (21:36 +0100)]
Remove variable length arrays

These are not allowed in C++, and have been made optional in C11.
So let's just get rid of them and any issues they may cause.

6 years agoUpdate gettext.h to latest version
Pierre Ossman [Wed, 7 Nov 2018 20:31:25 +0000 (21:31 +0100)]
Update gettext.h to latest version

6 years agoFixed handling of AltGr from Windows' touch keyboard
Pierre Ossman [Tue, 6 Nov 2018 16:31:11 +0000 (17:31 +0100)]
Fixed handling of AltGr from Windows' touch keyboard

We need to test this always in order to catch Ctrl+AltGr, and to
handle release of the key properly. Hopefully there isn't any other
case where VK_MENU is sent without a scan code.

6 years agoHandle AltGr from Windows' touch keyboard
Pierre Ossman [Tue, 6 Nov 2018 11:40:53 +0000 (12:40 +0100)]
Handle AltGr from Windows' touch keyboard

6 years agoAdjust XDamage tracking to geometry
Pierre Ossman [Mon, 5 Nov 2018 15:49:47 +0000 (16:49 +0100)]
Adjust XDamage tracking to geometry

We might have an offset in the area of the screen we're tracking,
so make sure that offset is included in the changes we report.

6 years agoMove client attributes out of ServerParams
Pierre Ossman [Wed, 20 Jun 2018 14:03:23 +0000 (16:03 +0200)]
Move client attributes out of ServerParams

ServerParams should contain the server state and not information about
client settings or capabilities. Move those things up a level to the
CConnection object.

6 years agoMerge client resize capabilities
Pierre Ossman [Wed, 20 Jun 2018 13:47:49 +0000 (15:47 +0200)]
Merge client resize capabilities

No need to have one setting for each extension. All the client code
needs to indicate is if it supports resize. The common code can then
map this to relevant extensions.

6 years agoDon't update screen layout directly on incoming client request
Pierre Ossman [Wed, 20 Jun 2018 13:33:22 +0000 (15:33 +0200)]
Don't update screen layout directly on incoming client request

It needs to be validated and take effect in the server first.

6 years agoRemove unused flags from ServerParams
Pierre Ossman [Wed, 20 Jun 2018 09:48:17 +0000 (11:48 +0200)]
Remove unused flags from ServerParams

These were either completely unused, or always true.

6 years agoSimplify encoding list generator
Pierre Ossman [Wed, 20 Jun 2018 09:42:36 +0000 (11:42 +0200)]
Simplify encoding list generator

Tight is the default preferred encoding, so we don't really need
special handling for it to be first in the list.

6 years agoUse STL list for encoding list
Pierre Ossman [Wed, 20 Jun 2018 09:40:37 +0000 (11:40 +0200)]
Use STL list for encoding list

This is a lot safer and cleaner. The old code had a fixed size that
we didn't properly keep track of.

6 years agoMake arguments explicit in all message writer methods
Pierre Ossman [Wed, 20 Jun 2018 09:35:05 +0000 (11:35 +0200)]
Make arguments explicit in all message writer methods

Make sure all methods only write what is given as arguments, and
avoid side effects by getting data from parameter objects. This keeps
things readable in the calling code.

6 years agoMove update request handling in to CConnection
Pierre Ossman [Wed, 20 Jun 2018 09:26:18 +0000 (11:26 +0200)]
Move update request handling in to CConnection

It's a generic client thing, so abstract it in to the common library.
Makes it easier to integrate with other common code.

6 years agoLet CMsgHandler::serverInit() handle initial set up
Pierre Ossman [Wed, 31 Oct 2018 16:08:59 +0000 (17:08 +0100)]
Let CMsgHandler::serverInit() handle initial set up

Avoid using the callbacks used for runtime changes for the initial
setup. They weren't really useful anyway as you could not allocate
a framebuffer without also knowing the pixel format. So make things
more clear by letting serverInit() get the initial settings.

6 years agoStop requiring CConnection::serverInit() to be overridden
Pierre Ossman [Wed, 20 Jun 2018 05:03:10 +0000 (07:03 +0200)]
Stop requiring CConnection::serverInit() to be overridden

Add an explicit callback for subclasses to do their startup in. This
makes it easier to do proper ordering, and avoids mistakes.

6 years agoRemove unused CConnection::getIdentityVerifier()
Pierre Ossman [Wed, 20 Jun 2018 04:48:43 +0000 (06:48 +0200)]
Remove unused CConnection::getIdentityVerifier()

6 years agoStop using fences for pixel format switch
Pierre Ossman [Tue, 19 Jun 2018 08:42:24 +0000 (10:42 +0200)]
Stop using fences for pixel format switch

This method was only really useful when continuous updates was active,
so let's rely on a single extension rather than two.

6 years agoRemove indirect capability attributes
Pierre Ossman [Mon, 18 Jun 2018 14:34:16 +0000 (16:34 +0200)]
Remove indirect capability attributes

Better to check the actual list of supported encodings directly.
Makes parts more readable, and no risk of getting out of sync.