aboutsummaryrefslogtreecommitdiffstats
path: root/unix/x0vncserver
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' of https://github.com/madnicendio/tigervncPierre Ossman2024-11-224-7/+7
|\
| * Capitalize first letter in log, exception & errorMadeleine Nilsson2024-11-211-2/+2
| | | | | | | | The reason for this is to keep a consistency through out the project.
| * Standardize on sentence case in titlesMadeleine (ThinLinc team)2024-11-113-5/+5
| | | | | | | | The reason for this is to keep a consistency through out the project.
* | Merge branch 'mouse-button-support' of https://github.com/CendioHalim/tigervncPierre Ossman2024-11-182-6/+6
|\ \
| * | Add server support for forward/back mouse buttonsAdam Halim2024-10-222-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the pseudo-encoding ExtendedMouseButtons in Xvnc and x0vncserver, which makes it possible to use to use the back/forward mouse buttons. This commit contains work originally done by PixelSmith <manny33@frontbuffer.com>.
* | | Merge branch 'stdexcept' of github.com:CendioOssman/tigervncPierre Ossman2024-11-072-7/+6
|\ \ \ | |_|/ |/| |
| * | Use standard library naming for exceptionsPierre Ossman2024-11-061-1/+1
| | | | | | | | | | | | | | | This makes things more consistent since we mix with the standard library exceptions so often.
| * | Use standard exception classesPierre Ossman2024-11-061-2/+1
| | | | | | | | | | | | | | | Use the more specific already included exception classes for common errors to keep things more understandable.
| * | Subclass exceptions from std::exceptionPierre Ossman2024-11-062-2/+2
| | | | | | | | | | | | | | | Make sure our exceptions are part of the standard exception class hierarchy.
| * | Use what() to access exception descriptionPierre Ossman2024-11-062-2/+2
| | | | | | | | | | | | Harmonize with the standard C++ exceptions.
| * | Use static string for exceptionsPierre Ossman2024-11-061-1/+1
| | | | | | | | | | | | | | | In preparation for using the built in C++ exception classes, which do not accept a format string.
* | | Do proper top level window setup for selection windowPierre Ossman2024-10-221-1/+1
|/ /
* | Merge branch 'errno' of github.com:CendioOssman/tigervncPierre Ossman2024-10-091-1/+1
|\ \
| * | Consistently use SocketException for socket errorsPierre Ossman2024-10-091-1/+1
| |/ | | | | | | | | | | The behaviour is not consistent as Windows doesn't use errno for socket errors, but Unix systems do. Always use the same exception to keep things somewhat sane.
* / Add clipboard support to x0vncserverGaurav Ujjwal2024-09-257-8/+334
|/
* Better type for pointer button maskPierre Ossman2024-08-122-3/+3
| | | | | This is a very limited bit field, so use an 8 bit type to clearly show how many bits are available.
* Remove InputHandler interfacePierre Ossman2024-08-122-4/+0
| | | | | The different uses of this interface are not that closely related and there is no need for them to have a common interface class.
* Improve x0vncserver key allocation log linePierre Ossman2024-08-061-1/+2
| | | | | Follow the standard XK_ prefix, and also include the hex value for easier debugging.
* Merge branch 'fix-unknown-keysym' of https://github.com/gujjwal00/tigervncPierre Ossman2024-08-062-16/+60
|\
| * Improve unknown keysym handlingGaurav Ujjwal2024-06-302-16/+60
| | | | | | | | | | | | Instead of giving up after all free keycodes have been used, Keycodes from previously added keysyms will be reused. Re: #93
* | Fix x0vncserver handling of timersPierre Ossman2024-07-051-3/+3
|/ | | | Bug fix for bf28683.
* Avoid redundant argumentsPierre Ossman2024-06-242-14/+14
| | | | | Remove redundant arguments where the method already has access to the relevant variable as an object attribute.
* Simplify code using range-based for loopsPierre Ossman2024-06-241-18/+9
| | | | | | | | | These are often more readable as they avoid a lot of the boilerplate of iterating over fixed arrays or STL containers. Note that this change is very conservative to avoid noise in "git blame". Only loops where this is a clear improvement have been converted.
* Prefer std::find() over manual searchPierre Ossman2024-06-241-6/+6
| | | | | Let's avoid reimplementing something basic that's available in the standard library. It also makes the code easier to read.
* Mark overridden virtual functionsPierre Ossman2024-06-244-21/+21
| | | | | Use the new "override" keyword to properly differentiate between new virtual methods, and existing virtual methods being overridden.
* Use nullptr in all C++ codePierre Ossman2024-06-246-53/+54
| | | | | It's more readable than 0, and a bit safer than NULL, so let's try to follow modern norms.
* Merge branch 'present' of github.com:CendioOssman/tigervncPierre Ossman2024-06-193-7/+13
|\
| * Maintain a constant VNCServer/SDesktop connectionPierre Ossman2024-06-192-5/+8
| | | | | | | | | | | | | | | | | | The desktop isn't completely paused just because there are no clients, so it might still need some support from the server object. This is primarily an issue for headless servers, where they need to continue emulating things even without clients. A scraping server can generally go completely passive if there are no clients.
| * Stop treating "0" as "no timeouts"Pierre Ossman2024-06-191-2/+5
| | | | | | | | | | It is much more sane to treat "0" as "a timer is ready NOW", so let's change to using -1 as the invalid timeout value.
* | Remove the network::SocketServer interface.Carlos Santos2024-04-261-0/+2
|/ | | | | | | Move these RFB specific things to rfb::VNCServer, for clarity. Signed-off-by: Pierre Ossman <ossman@cendio.se> Signed-off-by: Carlos Santos <casantos@redhat.com>
* Clarify AcceptPointerEvents settingPierre Ossman2024-02-061-1/+1
| | | | | It doesn't just control button events, but all types of pointer events, including movement.
* Fix shared memory leakAdam Halim2024-01-261-1/+1
| | | | | | | | The MIT-SHM documentation: https://www.x.org/releases/X11R7.7/doc/xextproto/shm.html says to run XShmDetach() first, and then to destroy the segment. (cherry picked from commit 585ee24d4cd81759ca7206d5d5181a491c2e8898)
* Set all HAVE_ macros on the top levelPierre Ossman2024-01-242-8/+3
| | | | This keep everything consistent.
* Remove superfluous X11_FOUND checkPierre Ossman2024-01-241-4/+4
| | | | It is REQUIRED in this context, so we can assume X11 has been found.
* Allow combining socket activation and extra portsPierre Ossman2024-01-242-36/+50
| | | | | | The common use case is probably to only listem to the systemd provided socket when using socket activation, but it might not be the only use case. Make sure things can be combined if explicitly requested.
* Log when sd_listen_fds() failsPierre Ossman2024-01-241-0/+5
|
* Use SD_LISTEN_FDS_START constantPierre Ossman2024-01-241-4/+2
| | | | Avoid magical numbers as it makes it hard to understand the code.
* x0vncserver: Add support for systemd socket activationMike Looijmans2024-01-123-29/+62
| | | | | | | | | | systemd can pass in sockets as file descriptors 3 and beyond. Allows the server to use socket activation. When triggered by systemd, no other listening sockets (e.g. rfbport) will be activated. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
* Merge branch 'zrlee-compression-level' of ↵Pierre Ossman2023-11-201-6/+0
|\ | | | | | | https://github.com/adamhalim/tigervnc-suite
| * Use compressionLevel in ZRLEEncoderAdam Halim2023-11-201-6/+0
| | | | | | | | | | | | This change makes the ZRLEEncoder respect a client's desired compressionLevel. The ZlibLevel option is marked deprecated and removed from the manpages.
* | Fix description of "%u" in manual pages.Carlos Santos2023-10-041-2/+1
| | | | | | | | | | | | | | | | | | We user the real, not the effective user ID, to check if the user is allowed to log in with the "Plain" security types. Otherwise it would be necessary to log in as root when Xvnc is installed with the set-user-id bit on. Signed-off-by: Carlos Santos <casantos@redhat.com>
* | Support the "%u" username alias in PlainUsersCarlos Santos2023-10-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | This permits to enable PAM for the effective user of the Xvnc process by adding this to ~/.vnc/config or /etc/tigervnc/vncserver-config-defaults: SecurityTypes=TLSPlain PlainUsers=%u Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2233204 Signed-off-by: Carlos Santos <casantos@redhat.com>
* | More graceful handling of disabled listenersPierre Ossman2023-09-081-5/+16
| | | | | | | | | | | | Don't assume a lack of TCP listeners means the server will be unreachable. There might be other methods of access, so let the higher levels do that sanity check instead.
* | Only set up TCP filter for TCP connectionsPierre Ossman2023-09-081-7/+7
|/ | | | This will not do the correct thing for Unix sockets.
* Fix missing XRandR buildPierre Ossman2023-06-141-1/+4
| | | | Make sure we can actually build without XRandR libraries.
* Fix missing XFixes buildPierre Ossman2023-06-142-0/+4
| | | | Make sure we can actually build without XFixes libraries.
* Fix missing XTest buildPierre Ossman2023-06-142-5/+18
| | | | Make sure we can actually build without XTest libraries.
* Remove unneeded "using namespace"Pierre Ossman2023-06-141-1/+0
| | | | The need for these must have got lost somewhere in the type cleanup.
* Prefer target_include_directories()Pierre Ossman2023-03-311-6/+5
| | | | | It is more specific, and it properly sets up propagation when include directories also need to be used further down a dependency chain.
* Merge branch 'types' of https://github.com/CendioOssman/tigervncPierre Ossman2023-03-026-21/+20
|\