| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| | |
|
|/ |
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
This will allow us to use better formats that preserve the entire
alpha channel.
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|/
|
|
|
|
| |
ChangeWindowProperty() was removed upstream because it was redundant,
and dixChangeWindowProperty() has been around since 1.5 so we can
safely use that.
|
| |
|
|
|
|
|
| |
Use the new X server API as the reference system and emulate it on
the older API. Avoids a lot of code duplication.
|
| |
|
|
|
|
|
|
|
|
| |
for operating systems other than GNU/Linux.
mcookie is a part of util-linux. Usually only GNU/Linux systems have it.
Do not die even if mcookie is not found. Use the previous pure perl code
to generate cookie as fallback.
|
| |
|
|
|
|
| |
INITARGS isn't used since Xorg 1.13, so remove it from our patches.
|
|\
| |
| | |
Added missing dependency for Complie error on RHEL7
|
| |
| |
| |
| | |
Complie error on RHEL7 for missing depency libos.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit introduces support for optional basic system-wide
configuration of vncserver.
The format and syntax of /etc/tigervnc/vncserver* match
that of $HOME/.vnc/config exactly.
Allows /etc/tigervnc/vncserver-config-defaults as well as
/etc/tigervnc/vncserver-config-mandatory. The former is optional
and sets user-overrideable vncserver settings. The latter is
optional, but if it exists takes precedence over all user
$HOME/.vnc/config settings of the same setting name. In the
case where /etc/tigervnc/vncserver-config-mandatory overrides
a setting in $HOME/.vnc/config, the user will be warned that
it has happened.
WARNING: Settings in /etc/tigervnc/vncserver-config-mandatory
are easily subverted by passing args to vncserver on the CLI.
The man page indicates this warning.
This commit also introduces (should have been separate) examination
of all config file settings (not just @ARGV!) when determining
whether or not $HOME/.vnc/passwd needs to be created. That is,
if /etc/tigervnc/vncserver* or $HOME/.vnc/config indicate that
we are NOT using VNC-native authentication, then we don't need
a $HOME/.vnc/passwd created.
Code cleanup:
$xstartup was renamed $xstartupFile for consistency with other
"file" variable names.
For VNC-auth checking, to determine if $HOME/.vnc/passwd needed
creation, the 3-string check against lc($arg2) was in 2 places
and was changed to a simple grep against the new @vncAuthStrings
|
| | |
| | |
| | |
| | |
| | | |
Xvnc didn't handle multiple screens properly as it forgot to place
them without overlap and didn't handle cursor movement between them.
|
| | |
| | |
| | |
| | |
| | | |
Pointer are global, not screen specific. Hence so is also the cursor
sprite.
|
| | |
| | |
| | |
| | |
| | |
| | | |
The client is not aware of where the screen is placed so it will give
us screen relative coordinates. Convert to and from these and absolute
coordinates before interacting with the input layer.
|
| |/
|/|
| |
| |
| |
| | |
It is possible to set pointer coordinate using absolute numbers, but
getting them back will always give us screen relative ones. Do the
necessary calculations manually so we return sane values to the caller.
|
| |
| |
| |
| |
| | |
They were lost when the mechanism moved from vncconfig in to Xvnc.
Restore the UI by having them reconfigure Xvnc instead.
|
| |
| |
| |
| |
| |
| | |
It was previously controlled by vncconfig which had no restrictions,
so at least include the relevant settings in the default list of
overrides.
|
|\ \ |
|
| | |
| | |
| | |
| | | |
The helper is no longer needed for clipboard support.
|
| | |
| | |
| | |
| | |
| | | |
The protocol still only supports 8859-1 though, so we need to
convert things to and from UTF-8.
|
| | | |
|
| | |
| | |
| | |
| | | |
Makes it easier to do requests from different parts of the code.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
The clipboard is handled internally in the server now, so the
code in vncconfig is no longer useful.
|
| | |
| | |
| | |
| | |
| | | |
Also handle clipboard transactions from the server to the client
directly in the server without the help of vncconfig.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Handle the clipboard directly in the server, avoiding the
dependency on vncconfig. This commit adds support for clipboard
from the client to the server. Handling of the other direction
will follow.
|
| | | |
|
| |/
|/|
| | |
Old harmless copy/paste from code above left code confusing as it was reusing the filehandle "XSTARTUP" to write out $vncUserDir/config. This new small change uses a more topical filehandle name for the task at hand.
|
| | |
|
|\ \ |
|
| | | |
|
|/ / |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
We need to proper respect the timeouts set up by the core RFB code
and not just the polling scheduler.
|
| |
| |
| |
| |
| |
| | |
What to do when a socket is writeable should be handled in the
RFB core code as there may be other events we want to fire off
when this happens.
|