| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
It creates an invalid region if given an empty rect. Fortunately
RegionInitBoxes() handles that just fine, so use that instead.
|
|
|
|
|
| |
We no longer support such old X servers so start using the current
functions.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
We now require at least 1.16, so remove all code that handled older
versions than that.
|
|
|
|
|
| |
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.
|
|
|
|
| |
No current distribution ship anything this ancient anyway.
|
|
|
|
|
| |
This makes our builds directly compatible with most distributions
without packagers/users having to specify extra flags.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Assume we are part of a complete and proper installation and encode the
full expected path in to the vncserver script.
|
|
|
|
|
| |
It keeps much better track of the X server and startup files than
we can do.
|
|
|
|
|
|
| |
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).
|
|
|
|
|
| |
This is how display managers (e.g. gdm or lightdm) start sessions
and is necessary to get the proper set of environment variables.
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
We now have config files for more fine grained control of these
things, so avoid duplicating the functionality.
|
|
|
|
|
| |
These might contain values we want if we are start from a proper
environment.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Install some example files to make things more easily discoverable.
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Don't allow subclasses to just override dimensions or buffer details
directly and instead force them to go via methods. This allows us
to do sanity checks on the new values and catch bugs and attacks.
|
|/
|
|
|
|
| |
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 &.
|
| |
|
| |
|
|
|
|
|
| |
In prepartion for better clipboard extensions that can send Unicode
data between the client and server.
|
|
|
|
|
| |
Change the internal clipboard API to use a request based model in
order to be prepared for more advanced clipboard transfers.
|
|
|
|
|
| |
We convert between UTF-8 and ISO 8859-1 (latin 1) in several places
so create some common routines for this.
|
|
|
|
|
|
| |
We now filter incoming data, which means we can start assuming the
clipboard data is always null terminated. This allows us to clean
up a lot of the internal handling.
|
|
|
|
|
|
| |
This is required by the protocol so we should make sure it is
enforced. We are tolerant of clients that violate this though and
convert incoming clipboard data.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Patch originally by @KenMilmore on GitHub.
|
|\ |
|
| |
| |
| |
| |
| | |
Add more checks and fix some callers to make sure that the server
core always has a valid screen layout configured.
|
| |
| |
| |
| |
| | |
We might only be using part of the X server's screen, so make sure
the layout we calculate is contained within this part.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|/ /
| |
| |
| | |
It now accepts this parameter, so make sure it is documented.
|
| |
| |
| |
| |
| |
| | |
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.
|
|\ \ |
|
| | | |
|
| | | |
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
|\| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This makes VNCServer a sufficiently complete interface that callers
don't need to know about the specific implementation (VNCServerST
currently). And assuming that all servers will use sockets is not
that outrageous.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Removed the last parts of VNCSConnectionST's back door in to
VNCServerST and let the parent class fully handle coordination of
clients, and access to the desktop.
|