| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| | |
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.
|
| |
|
|\
| |
| | |
Added missing dependency for Complie error on RHEL7
|
| |
| |
| |
| | |
Complie error on RHEL7 for missing depency libos.
|
| |
| |
| |
| |
| | |
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.
|
|
|
|
|
|
| |
It was previously controlled by vncconfig which had no restrictions,
so at least include the relevant settings in the default list of
overrides.
|
|\ |
|
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| | |
GetMaster() wasn't exported until Xorg 1.18 so it is unsafe to use
from libvnc.so for older versions.
|
| |
| |
| |
| | |
xserver118.patch is identical to xserver117.patch by content.
|
| | |
|
| |
| |
| |
| | |
Allows to specify which configuration parameters can be modified on runtime.
|
|/ |
|
|
|
|
|
|
| |
The check for visible drawables didn't account for compositing
which can place a window off-screen. Put all of these checks in
a common place and make sure it detects things properly.
|
|
|
|
|
|
| |
The previous detection would fail if the socket closed before we
had time to inspect it, which got us stuck in a loop as we would
try (and fail) to do accept() on a non-listening socket.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Xvnc does not understand -i as an alias to -interface anymore (since commit f8e3b34c69)
but it is still listed in the man page.
Fix man accordingly
Signed-off-by: Kir Kolyshkin <kir@openvz.org>
|
| |
|
| |
|
|
|
|
|
|
| |
It is easier to control object life time and avoid magical socket
duplication by having a single TcpListener object to pass around.
We have to be more careful about deleting the object though.
|
|
|
|
|
|
| |
Commit f8e3b34 introduced a regression where the fallback write block
handler would cease working after the first time it was called,
potentially stalling writes.
|
|
|
|
|
| |
REGION_INIT() does not handle an empty or invalid BoxRec, so this
method makes sure we don't feed bad rects further in to the process.
|
|
|
|
| |
They should never have been global symbols to begin with.
|
|
|
|
|
| |
It's been in the Xorg code base for ages. Any version that lacks it is
too old for the rest of our code to work anyway.
|
|
|
|
|
|
| |
Starting Xvnc without having any VNC functionality is pretty much
pointless. So terminate when that happens, making the situation easier
to detect for startup scripts.
|
|
|
|
|
| |
Patch by Jay Kulpinski. Prevents -inetd mode from automatically
finding a free X11 display number.
|
|
|
|
|
|
|
|
|
|
| |
Desktop environments like to change to the monitor's preferred
mode, especially at login. Lacking one, they pick the highest
resolution they can find. This tends to override what the user
has picked, so try to work around the desktop environments by
setting the preferred mode to what the user has chosen.
Credit goes to Michal Srb who figured out the problem.
|
| |
|
|
|
|
|
|
| |
We cannot handle a reset properly right now and are forced to terminate
instead. Avoid surprising people with a dying Xvnc by changing the default
to -noreset.
|
|\ \ |
|
| | | |
|
| |/
| |
| |
| |
| | |
VNC prevents X server restarting even when -reset is explicitly given. Print
out message with explanation and terminate instead.
|