]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
3 days agoCapitalize first letter in log, exception & error 1865/head
Madeleine Nilsson [Mon, 4 Nov 2024 14:00:43 +0000 (15:00 +0100)]
Capitalize first letter in log, exception & error

The reason for this is to keep a consistency through out the project.

13 days agoStandardize log message prefix format
Madeleine Nilsson [Mon, 4 Nov 2024 13:59:46 +0000 (14:59 +0100)]
Standardize log message prefix format

The reason for this is to keep a consistency through out the project.

13 days agoStandardize on sentence case in titles
Madeleine (ThinLinc team) [Mon, 4 Nov 2024 12:28:48 +0000 (13:28 +0100)]
Standardize on sentence case in titles

The reason for this is to keep a consistency through out the project.

2 weeks agoKeep saved username/password between connects
Pierre Ossman [Mon, 4 Nov 2024 12:03:43 +0000 (13:03 +0100)]
Keep saved username/password between connects

The UserDialog object is now only created for a single connection at a
time, which means we need to make sure the cached username and password
survive until the subsequent object.

3 weeks agoFudge library path to work around dependency loops
Pierre Ossman [Thu, 31 Oct 2024 11:50:04 +0000 (12:50 +0100)]
Fudge library path to work around dependency loops

3 weeks agoAvoid .la files getting removed on "make clean"
Pierre Ossman [Tue, 29 Oct 2024 14:57:29 +0000 (15:57 +0100)]
Avoid .la files getting removed on "make clean"

These are generated during the cmake stage, but cmake thinks they are
generated during the build stage because of our rule to update the
timestamp on them. As a result, it thinks they should be removed when
doing "make clean".

There doesn't seems to be an easy way to tell cmake to leave these
alone. So instead, point cmake to a different marker file when updating
the timestamps. We don't care if that gets removed as it has no valuable
contents.

4 weeks agoDo proper top level window setup for selection window
Pierre Ossman [Tue, 22 Oct 2024 07:59:30 +0000 (09:59 +0200)]
Do proper top level window setup for selection window

4 weeks agoAvoid invalid XFree for XClassHint
Pierre Ossman [Tue, 22 Oct 2024 07:58:27 +0000 (09:58 +0200)]
Avoid invalid XFree for XClassHint

It seems XGetClassHint() doesn't set the pointers to NULL if there is no
name, so we need to make sure it is cleared beforehand. Otherwise we can
get an invalid pointer given to XFree().

5 weeks agoUse getHostAndPort() to handle -via
Pierre Ossman [Thu, 17 Oct 2024 13:45:34 +0000 (15:45 +0200)]
Use getHostAndPort() to handle -via

Avoid duplicating this parsing as that will just increase the risk for
bugs. And in fact, this duplicated code already does not handle all
cases properly.

5 weeks agoExplicitly tag getHostAndPort() as inline
Pierre Ossman [Thu, 17 Oct 2024 13:34:37 +0000 (15:34 +0200)]
Explicitly tag getHostAndPort() as inline

Otherwise the compiler will complain about a defined but unused static
function.

5 weeks agoExplicity install missing deps GitHub Actions
Pierre Ossman [Mon, 14 Oct 2024 14:12:20 +0000 (16:12 +0200)]
Explicity install missing deps GitHub Actions

We seem to have gotten this implicitly before, but now that GitHub has
switched to Ubuntu 24.04 we have to be explicit about it.

6 weeks agoAllow empty value for config values
Linn Mattsson [Wed, 9 Oct 2024 14:16:55 +0000 (16:16 +0200)]
Allow empty value for config values

Fixed so config variables can pass an empty argument.

Solves issue #1791.

6 weeks agoMerge branch 'errno' of github.com:CendioOssman/tigervnc
Pierre Ossman [Wed, 9 Oct 2024 11:42:03 +0000 (13:42 +0200)]
Merge branch 'errno' of github.com:CendioOssman/tigervnc

6 weeks agoSplit SystemException to handle Windows 1833/head
Pierre Ossman [Tue, 10 Sep 2024 14:55:32 +0000 (16:55 +0200)]
Split SystemException to handle Windows

Windows has (at least) two error namespaces, both errno and
GetLastResult(). These overlap, so it is important we keep track of
which one we are dealing with.

To make things extra problematic, the BSD socket API normally uses
errno, but on Windows it has been mapped in to the GetLastResult()
namespace.

Try to keep better control of this by using separate classes for the
namespaces.

6 weeks agoConsistently use SocketException for socket errors
Pierre Ossman [Tue, 10 Sep 2024 14:57:24 +0000 (16:57 +0200)]
Consistently use SocketException for socket errors

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.

6 weeks agoMove SocketException to rdr
Pierre Ossman [Tue, 10 Sep 2024 15:05:39 +0000 (17:05 +0200)]
Move SocketException to rdr

Socket APIs are used in more places than the abstraction in
common/network. Make it easier to use this exception class by putting
it in a more common place.

7 weeks agoUpdate Friulian translation
Fabio T. [Thu, 3 Oct 2024 17:59:00 +0000 (17:59 +0000)]
Update Friulian translation

7 weeks agoClear clipboard state when its not plain text
Samuel Mannehed [Wed, 2 Oct 2024 08:18:22 +0000 (10:18 +0200)]
Clear clipboard state when its not plain text

Commit 8a80c906b9f7c08b1c664569a97d327d62c6d8ae added a check to prevent
announcing clipboard when it's not plain text data. When this check
triggers and we want to ignore the non-plain text clipboard, we should
reset the state by no longer indicating pending clipboard, and by asking
the server to clear its clipboard. This ensures we don't end up in a
state where the server thinks the viewer has useful clipboard data, but
it doesn't.

7 weeks agoMerge branch 'clipboard_contains' of https://github.com/samhed/TigerVNC
Samuel Mannehed (ThinLinc team) [Tue, 1 Oct 2024 11:44:25 +0000 (13:44 +0200)]
Merge branch 'clipboard_contains' of https://github.com/samhed/TigerVNC

Only announce clipboard for plain text data

7 weeks agoOnly announce clipboard for plain text data 1840/head
Samuel Mannehed [Tue, 1 Oct 2024 10:49:40 +0000 (12:49 +0200)]
Only announce clipboard for plain text data

FLTK has support for both image and plain text clipboard data, we don't.
This means we only send plain text clipboard from the viewer to the
server. Some applications can get confused when we announce that
clipboard is available and later don't send anything. An example of such
an application is QGIS, in the remote session it froze when an image was
copied on the client side.

This fix means we only call announceClipboard() when the clipboard
contains plain text. That means TigerVNC is now more robust and doesn't
trigger freezes in buggy applications.

8 weeks agoMerge branch 'x0vncserver-clipboard' of https://github.com/gujjwal00/tigervnc
Pierre Ossman [Fri, 27 Sep 2024 14:55:40 +0000 (16:55 +0200)]
Merge branch 'x0vncserver-clipboard' of https://github.com/gujjwal00/tigervnc

8 weeks agoAdd clipboard support to x0vncserver 1831/head
Gaurav Ujjwal [Wed, 25 Sep 2024 15:51:26 +0000 (21:21 +0530)]
Add clipboard support to x0vncserver

2 months agoMore carefully release mouse buttons on close
Pierre Ossman [Tue, 24 Sep 2024 07:03:53 +0000 (09:03 +0200)]
More carefully release mouse buttons on close

Only the client that currently has buttons pressed should actually send
a release event as the client might not be currently in control of the
pointer state. This is most clearly seen in a client that hasn't event
authenticated properly yet.

Approximate this from the server by using the last known server cursor
position. It should hopefully not differ much from the last client
provided position.

Follow-up to 986280b382d57ef4f68d2d4afb13b26772e5acb0.

2 months agoExplicitly clean up grabs on disconnect
Pierre Ossman [Mon, 23 Sep 2024 14:17:39 +0000 (16:17 +0200)]
Explicitly clean up grabs on disconnect

They are not automatically cleaned up with the window on Windows, and we
might want to reconnect so we cannot rely on the process cleanup either.

2 months agoFilter duplicate server history entries
Pierre Ossman [Fri, 6 Sep 2024 15:14:52 +0000 (17:14 +0200)]
Filter duplicate server history entries

A server can be specified in many different ways, so it is easy to get
multiple entries in the history for the same thing.

Get rid of these by parsing each entry and comparing with existing
entries.

2 months agoMove recent server to top of history
Pierre Ossman [Fri, 6 Sep 2024 14:30:02 +0000 (16:30 +0200)]
Move recent server to top of history

It's easier for the user if the most recently used entries are at the
top.

2 months agoUse std::list for server history
Pierre Ossman [Fri, 6 Sep 2024 14:29:25 +0000 (16:29 +0200)]
Use std::list for server history

We don't need random access to the entries, so a list fits just as well.
It also has better accessors we need.

2 months agoHandle server history with '/' in entries
Pierre Ossman [Fri, 6 Sep 2024 10:55:08 +0000 (12:55 +0200)]
Handle server history with '/' in entries

This happens if you've connected to a server using a Unix socket.

2 months agoAdd more usage of SystemException
Pierre Ossman [Tue, 3 Sep 2024 07:10:14 +0000 (09:10 +0200)]
Add more usage of SystemException

Prefer this exception for failures involving errno as it gives a better
error description.

2 months agoFix reporting of some TLS errors
Pierre Ossman [Tue, 3 Sep 2024 06:07:11 +0000 (08:07 +0200)]
Fix reporting of some TLS errors

These functions return a GnuTLS status, so we should use the correct
exception for that so we get the proper error messages.

2 months agoCorrectly handling rejecting server key
Pierre Ossman [Tue, 3 Sep 2024 06:03:41 +0000 (08:03 +0200)]
Correctly handling rejecting server key

This is the user actively rejecting the connection, and should be
signalled as such for correct behaviour.

2 months agoAdd missing config.h includes
Pierre Ossman [Tue, 3 Sep 2024 06:02:48 +0000 (08:02 +0200)]
Add missing config.h includes

2 months agoRemove ConnFailedException
Pierre Ossman [Mon, 2 Sep 2024 18:41:47 +0000 (20:41 +0200)]
Remove ConnFailedException

There were more unclear usage of this exception class, and since nothing
catches it it is very unclear what the purpose is. Go ahead and just
remove it.

Follow-up to bcaaea7.

2 months agoUpdate Chinese (simplified) translation
Mingye Wang (Artoria2e5) [Mon, 2 Sep 2024 04:19:00 +0000 (12:19 +0800)]
Update Chinese (simplified) translation

2 months agoMerge branch 'master' of https://github.com/0-wiz-0/tigervnc
Pierre Ossman [Fri, 30 Aug 2024 14:47:02 +0000 (16:47 +0200)]
Merge branch 'master' of https://github.com/0-wiz-0/tigervnc

2 months agovncviewer: add missing include for struct timeval 1824/head
Thomas Klausner [Tue, 27 Aug 2024 07:31:42 +0000 (09:31 +0200)]
vncviewer: add missing include for struct timeval

2 months agoCorrectly handle ZRLE cursors
Pierre Ossman [Fri, 30 Aug 2024 14:15:09 +0000 (16:15 +0200)]
Correctly handle ZRLE cursors

Cursor data has a depth of 32 bits and hence cannot use CPIXELs.

This is a regression from baca73d.

2 months agoOnly read first password from file
Pierre Ossman [Fri, 30 Aug 2024 14:09:38 +0000 (16:09 +0200)]
Only read first password from file

Read just the first password and ignore anything else in the password
file. This allows you to reuse a password file from the server that also
includes a view-only password.

This fixes a regression introduced in b99daad.

2 months agoMove getUserPasswd()/showMsgBox() to CConnection
Kang Lin [Tue, 30 Jul 2024 04:53:52 +0000 (12:53 +0800)]
Move getUserPasswd()/showMsgBox() to CConnection

Problems with the original code: A process can only establish one connection.
After modification, multiple connections can be supported.

2 months agoImprove error messages for base directory creation
Pierre Ossman [Thu, 29 Aug 2024 15:22:51 +0000 (17:22 +0200)]
Improve error messages for base directory creation

2 months agoHandle failure getting VNC directories
Pierre Ossman [Thu, 29 Aug 2024 15:19:40 +0000 (17:19 +0200)]
Handle failure getting VNC directories

Although rare, there are cases where we might fail to determine our base
directories. Make sure the code can handle it.

2 months agoMove base directory creation to helper function
Pierre Ossman [Thu, 29 Aug 2024 15:16:43 +0000 (17:16 +0200)]
Move base directory creation to helper function

This is non-trivial now, so let's modularize this a bit.

2 months agoMerge pull request #1825 from LMattsson/macos-minimize-fixme
linma (ThinLinc team) [Tue, 27 Aug 2024 09:15:57 +0000 (11:15 +0200)]
Merge pull request #1825 from LMattsson/macos-minimize-fixme

Add FIXME comment regarding macOS minimise fix

2 months agoAdd FIXME comment regarding macOS minimise fix 1825/head
Linn Mattsson [Tue, 27 Aug 2024 08:39:10 +0000 (10:39 +0200)]
Add FIXME comment regarding macOS minimise fix

An issue with minimise not working when in fullscreen on macOS was
workaround in Pull Request #1813. The underlaying issue is currently
unknown.

macOS native fullscreen mode was looked into, but no clear answer was
given. See #1813 for details.

3 months agoMerge pull request #1813 from rudironsonijr/fix/macos-not-minimizing
linma (ThinLinc team) [Fri, 23 Aug 2024 15:11:01 +0000 (17:11 +0200)]
Merge pull request #1813 from rudironsonijr/fix/macos-not-minimizing

Apple only: exit FL_Window fullscreen if active in order to minimize.

3 months agoMerge branch 'h264-colour-spaces' of https://github.com/any1/tigervnc
Pierre Ossman [Fri, 23 Aug 2024 14:49:10 +0000 (16:49 +0200)]
Merge branch 'h264-colour-spaces' of https://github.com/any1/tigervnc

3 months agoH264Libav: Use nearest-neighbour sampling in scaler 1814/head
Andri Yngvason [Thu, 22 Aug 2024 21:26:59 +0000 (21:26 +0000)]
H264Libav: Use nearest-neighbour sampling in scaler

sws_getCachedContext will set a default sampling method if 0 is passed
to the flags argument. This means that when it is called again, the
flags argument will not match the flags in the context, so a new one
will be allocated every time.

To get around this problem, we assign an explicit sampling method, one
that also happens to be more efficient and just as good for this
use-case as the default one, which is bicubic interpolation.

3 months agoH264Libav: Handle colour space conversion
Andri Yngvason [Mon, 19 Aug 2024 22:34:37 +0000 (22:34 +0000)]
H264Libav: Handle colour space conversion

The scaler is now informed of the colour space encoded into the stream
so that it may do the proper conversion.

3 months agoApple only: exit FL_Window fullscreen if active in order to minimize. 1813/head
Rudimar Ronsoni Jr [Mon, 19 Aug 2024 19:08:01 +0000 (21:08 +0200)]
Apple only: exit FL_Window fullscreen if active in order to minimize.

3 months agoMerge branch 'h264-buffer-size-fix' of https://github.com/any1/tigervnc
Pierre Ossman [Mon, 19 Aug 2024 09:16:59 +0000 (11:16 +0200)]
Merge branch 'h264-buffer-size-fix' of https://github.com/any1/tigervnc

3 months agoH264Libav: Clean up sws context 1785/head
Andri Yngvason [Fri, 2 Aug 2024 09:20:24 +0000 (09:20 +0000)]
H264Libav: Clean up sws context

This fixes a memory leak

3 months agoH264Libav: Use AVFrame for pixel format conversion buffer
Andri Yngvason [Wed, 24 Jul 2024 20:50:14 +0000 (20:50 +0000)]
H264Libav: Use AVFrame for pixel format conversion buffer

This ensures that the buffer is allocated with the correct alignment and
padding for use with sws_scale.

This fixes out-of-bounds writes which would in some cases cause
segmentation faults and/or heap corruption.

3 months agoHandle existing config directory in vncpasswd
Pierre Ossman [Thu, 15 Aug 2024 12:24:42 +0000 (14:24 +0200)]
Handle existing config directory in vncpasswd

This fixes commit a79c33d.

3 months agoLet pwquality check minimum length
Pierre Ossman [Thu, 15 Aug 2024 12:21:41 +0000 (14:21 +0200)]
Let pwquality check minimum length

This is a policy decision, so let's not enforce something on our own if
there is a system policy to rely on.

3 months agoOnly show pwquality setting where relevant
Pierre Ossman [Thu, 15 Aug 2024 12:21:06 +0000 (14:21 +0200)]
Only show pwquality setting where relevant

It's not used for Windows or macOS builds, so don't show the setting
there.

3 months agoMerge branch 'master' of https://github.com/prownd/tigervnc
Pierre Ossman [Thu, 15 Aug 2024 12:14:59 +0000 (14:14 +0200)]
Merge branch 'master' of https://github.com/prownd/tigervnc

3 months agoMerge branch 'old-log' of https://github.com/jcpunk/tigervnc
Pierre Ossman [Wed, 14 Aug 2024 08:56:38 +0000 (10:56 +0200)]
Merge branch 'old-log' of https://github.com/jcpunk/tigervnc

3 months agovncsession: Move existing log to log.old if present 1801/head
Pat Riehecky [Wed, 31 Jul 2024 19:43:46 +0000 (14:43 -0500)]
vncsession: Move existing log to log.old if present

3 months agoLimit the maximum length of a password to 8 characters 1762/head
hanjinpeng [Tue, 13 Aug 2024 16:56:10 +0000 (00:56 +0800)]
Limit the maximum length of a password to 8 characters

Password should not be greater than 8 characters.
Because only 8 valid characters are used.

3 months agovncpasswd add password complexity rule check to enhance security
hanjinpeng [Sun, 2 Jun 2024 09:42:17 +0000 (17:42 +0800)]
vncpasswd add password complexity rule check to enhance security

Use the library pwquality to check password complexity and improve security.
Additionally, optional enable support is also set in CMake.

3 months agoUse proper gnutls_free() on Windows
Pierre Ossman [Tue, 13 Aug 2024 13:53:07 +0000 (15:53 +0200)]
Use proper gnutls_free() on Windows

The underlying issue requiring this hack was fixed ages ago.
Unfortunately, the fixed GnuTLS doesn't consider static linking. So we
need to add a new hack that permits that.

3 months agoAvoid using excessive namespaces
Pierre Ossman [Tue, 13 Aug 2024 13:36:10 +0000 (15:36 +0200)]
Avoid using excessive namespaces

Try to be more clear about what things are external to the current
context, and what aren't.

3 months agoAvoid connection failed exception
Pierre Ossman [Tue, 13 Aug 2024 13:31:05 +0000 (15:31 +0200)]
Avoid connection failed exception

The usage of this is unclear as it is never caught. Use the general
exception class, to stay consistent with all other protocol handling.

3 months agoFix typos 1807/head
Andrew Kreimer [Mon, 12 Aug 2024 16:59:40 +0000 (19:59 +0300)]
Fix typos

3 months agoDon't adjust manually sized window
Pierre Ossman [Tue, 3 Jan 2023 10:02:36 +0000 (11:02 +0100)]
Don't adjust manually sized window

It's unclear why this code was ever added, and it can be very confusing
that the window partially adjusts itself. The code is also in conflict
with the earlier comment that states we'll leave the window size alone
if it didn't perfectly match before the resize.

3 months agoRemove unused setPixelFormat() callback
Pierre Ossman [Thu, 28 Dec 2023 12:40:09 +0000 (13:40 +0100)]
Remove unused setPixelFormat() callback

This was made obsolete in dd45b44 when we extended the serverInit()
callback.

3 months agoRemove fake framebuffer update request call
Pierre Ossman [Thu, 28 Dec 2023 08:33:07 +0000 (09:33 +0100)]
Remove fake framebuffer update request call

This method should only be called when the client actually sends a
framebuffer update request, otherwise we might send data the client is
not ready for.

It's unclear what the purpose of this call is, so we have no better fix
than to just remove it.

3 months agoUpdate processMsg() description
Pierre Ossman [Wed, 27 Dec 2023 15:32:36 +0000 (16:32 +0100)]
Update processMsg() description

This method is no longer blocking, so the description needed to be
adjusted.

3 months agoInclude key code for fake key events
Pierre Ossman [Sat, 25 Feb 2023 14:32:24 +0000 (15:32 +0100)]
Include key code for fake key events

Let's try to mimic a real event as much as possible to avoid bugs.

3 months agoBetter type for pointer button mask
Pierre Ossman [Sat, 25 Feb 2023 14:16:18 +0000 (15:16 +0100)]
Better type for pointer button mask

This is a very limited bit field, so use an 8 bit type to clearly show
how many bits are available.

3 months agoRemove InputHandler interface
Pierre Ossman [Mon, 30 Jan 2023 06:51:51 +0000 (07:51 +0100)]
Remove InputHandler interface

The different uses of this interface are not that closely related and
there is no need for them to have a common interface class.

3 months agoRemove ScaleFilters
Pierre Ossman [Tue, 3 Jan 2023 10:02:01 +0000 (11:02 +0100)]
Remove ScaleFilters

This has been unused since 9fe3479.

3 months agoRemove IdentityVerifier forward declaration
Pierre Ossman [Mon, 30 Jan 2023 09:50:32 +0000 (10:50 +0100)]
Remove IdentityVerifier forward declaration

This class has been removed since ages.

3 months agoDon't parse empty fence messages
Pierre Ossman [Thu, 23 Feb 2023 06:19:09 +0000 (07:19 +0100)]
Don't parse empty fence messages

We need to return here or we'll do an out-of-bounds access on the data
array.

3 months agoDon't ask for login data when reconnecting
Johannes [Sat, 24 Jul 2021 14:02:29 +0000 (16:02 +0200)]
Don't ask for login data when reconnecting

3 months agoBetter error message for authentication failure
Pierre Ossman [Wed, 7 Aug 2024 09:05:47 +0000 (11:05 +0200)]
Better error message for authentication failure

3 months agoDon't abuse auth failure exception
Pierre Ossman [Wed, 7 Aug 2024 08:35:51 +0000 (10:35 +0200)]
Don't abuse auth failure exception

This exception is for when the user fails to authenticate, not all
possible errors that might occur during the authentication phase.

Use more appropriate exception types for the various other problems that
might occur, so that we can present things more accurately to the user.

3 months agoRemove auth exception prefix
Pierre Ossman [Wed, 7 Aug 2024 08:08:43 +0000 (10:08 +0200)]
Remove auth exception prefix

This prefix often just added noise, and could sometimes be added
multiple times. It's better that user interface catch the specific
exception type and give a more descriptive presentation to the user.

This is partially a revert of 1922550.

3 months agoCorrectly handle cancelled authentication
Pierre Ossman [Wed, 7 Aug 2024 07:49:22 +0000 (09:49 +0200)]
Correctly handle cancelled authentication

We should not be throwing up error messages, or asking to reconnect, if
the user has actively cancelled the authentication attempt.

3 months agoImprove x0vncserver key allocation log line
Pierre Ossman [Tue, 6 Aug 2024 12:55:37 +0000 (14:55 +0200)]
Improve x0vncserver key allocation log line

Follow the standard XK_ prefix, and also include the hex value for
easier debugging.

3 months agoAvoid XKeysymToString() conflict with libX11
Pierre Ossman [Tue, 6 Aug 2024 12:53:30 +0000 (14:53 +0200)]
Avoid XKeysymToString() conflict with libX11

We implement our own version of this, and because of this we carry our
lookup table generated by the same tool that libX11 uses. Unfortunately,
that table is a global symbol and as such there might be a mismatch of
which table should be used.

Make sure we get our own copy by changing the name of it. We use a
define rather than modifying ks_tables.h as that file is automatically
generated.

3 months agoMerge branch 'fix-unknown-keysym' of https://github.com/gujjwal00/tigervnc
Pierre Ossman [Tue, 6 Aug 2024 12:17:40 +0000 (14:17 +0200)]
Merge branch 'fix-unknown-keysym' of https://github.com/gujjwal00/tigervnc

3 months agoMerge branch 'min' of https://github.com/KangLin/tigervnc
Pierre Ossman [Tue, 6 Aug 2024 11:22:30 +0000 (13:22 +0200)]
Merge branch 'min' of https://github.com/KangLin/tigervnc

3 months agoAdd missing comma in default security type list
Pierre Ossman [Mon, 29 Jul 2024 14:16:08 +0000 (16:16 +0200)]
Add missing comma in default security type list

Otherwise it merges with the next entry, removing both of them from the
default list.

4 months agovncsession: use /bin/sh if the user shell is not set 1787/head
Carlos Santos [Thu, 25 Jul 2024 21:39:59 +0000 (18:39 -0300)]
vncsession: use /bin/sh if the user shell is not set

An empty shell field in the password file is valid, although not common.
Use /bin/sh in this case, as documented in the passwd(5) man page, since
the vncserver script requires a non-empty SHELL environment variable.

Fixes issue #1786.

Signed-off-by: Carlos Santos <casantos@redhat.com>
4 months agoUse std::min replace min 1783/head
Kang Lin [Thu, 25 Jul 2024 03:32:48 +0000 (11:32 +0800)]
Use std::min replace min

4 months agoMerge branch 'h264-fix-context-reset' of https://github.com/any1/tigervnc
Pierre Ossman [Wed, 24 Jul 2024 11:47:58 +0000 (13:47 +0200)]
Merge branch 'h264-fix-context-reset' of https://github.com/any1/tigervnc

4 months agoGenerate better (fake) modelines
Pierre Ossman [Tue, 23 Jul 2024 14:06:14 +0000 (16:06 +0200)]
Generate better (fake) modelines

This is what Xwayland does, so let's try to do the same to avoid any
incompatibilites with applications.

4 months agoH264Decoder: Fix context reset 1784/head
Andri Yngvason [Mon, 22 Jul 2024 22:34:12 +0000 (22:34 +0000)]
H264Decoder: Fix context reset

This fixes a regression introduced by
12b3f4021641537b90727b23d42de5dff59006cd.

4 months agoFix overflow; "Timer: gettimeofday is broken"
Pierre Ossman [Fri, 19 Jul 2024 15:37:04 +0000 (17:37 +0200)]
Fix overflow; "Timer: gettimeofday is broken"

The rounding misbehaved when the tv_usec calculation overflows.

Fixes issue #1782.

4 months agoBe more careful with ComparingUpdateTracker pointer
Pierre Ossman [Fri, 5 Jul 2024 12:05:45 +0000 (14:05 +0200)]
Be more careful with ComparingUpdateTracker pointer

As of 28c3f12, we might now be running the frame clock even without a
framebuffer present. This means we need to be more careful accessing the
ComparingUpdateTracker, as it might be NULL.

4 months agoRound up expiration time for timers
Pierre Ossman [Fri, 5 Jul 2024 11:48:14 +0000 (13:48 +0200)]
Round up expiration time for timers

Otherwise we won't properly guarantee that we'll wait *at least* as long
as the specified time.

4 months agoFix x0vncserver handling of timers
Pierre Ossman [Fri, 5 Jul 2024 11:24:52 +0000 (13:24 +0200)]
Fix x0vncserver handling of timers

Bug fix for bf28683.

4 months agoImprove unknown keysym handling 1734/head
Gaurav Ujjwal [Mon, 8 Apr 2024 11:18:11 +0000 (16:48 +0530)]
Improve unknown keysym handling

Instead of giving up after all free keycodes have been used, Keycodes from previously added keysyms will be reused.

Re: #93

4 months agoUpdate Slovak translation
Marián Haburaj [Tue, 25 Jun 2024 09:04:00 +0000 (11:04 +0200)]
Update Slovak translation

5 months agoMerge branch 'c++11' of github.com:CendioOssman/tigervnc
Pierre Ossman [Mon, 24 Jun 2024 12:35:43 +0000 (14:35 +0200)]
Merge branch 'c++11' of github.com:CendioOssman/tigervnc

5 months agoEnforce not shadowing variables 1774/head
Pierre Ossman [Sat, 20 Apr 2024 08:53:18 +0000 (10:53 +0200)]
Enforce not shadowing variables

Shadowing variable can easily lead to bugs, so let's enforce that this
is not allowed.

5 months agoAvoid shadowing variables
Pierre Ossman [Sun, 21 Apr 2024 00:18:22 +0000 (02:18 +0200)]
Avoid shadowing variables

It's a source of confusion and possibly bugs to reuse the same variable
name for multiple things.

5 months agoUse "static" for helper functions
Pierre Ossman [Sun, 21 Apr 2024 00:23:46 +0000 (02:23 +0200)]
Use "static" for helper functions

These functions act only on the input parameters, so let's make them
static to more clearly indicate that they do not act upon any object.

5 months agoSimplify RandR output name handling
Pierre Ossman [Sun, 21 Apr 2024 00:22:38 +0000 (02:22 +0200)]
Simplify RandR output name handling

Store the name in a std::string to make things less complex as we don't
need to be as careful about making sure the data is free():d.