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.
Refuse to start Xvnc if we failed to initialise a screen
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.
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.
The TcpListener constructor now takes a 'struct sockaddr*' instead of
a string, and the createTcpListeners function creates TcpListener
instances for an address based on the results from getaddrinfo().
The XserverDesktop class now takes a list of TcpListener instances for
each of the RFB and HTTP sockets.
The TcpListener::closeFd member variable is not used and has been
removed.
Check for out-of-memory when installing color map.
Also remove Xalloc/Xfree definitions, using malloc/free directly
instead. Note that vfbAllocateFramebufferMemory() does not need to
check for failed allocations as it is the caller's responsibility to
do so (and they do).
Fixes for build issues caused by recent restructuring
* Add typedef for XF86OptionPtr for Xorg < 112
* Include stddef.h to prevent missing size_t definition errors
* Workaround for libtool convenience library issue
Avoid complaints about unused variable in argument less requests
The REQUEST macro is used to access variables in the request data,
and if we don't then the compiler complains that the macro sets up
variables that we never use.