| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Fixed so config variables can pass an empty argument.
Solves issue #1791.
(cherry picked from commit dbb6ee4d70ce080b452791a5a6d0f7ec3ac78f91)
|
|
|
|
|
|
|
|
|
|
|
| |
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>
(cherry picked from commit 4db34f73d461b973867ddaf18bf690219229cd7a)
|
|
|
|
|
|
|
| |
Avoid duplicating this complexity in too many places.
At the same time make the interface more identical to regular mkdir(),
for familiarity.
|
|
|
|
|
| |
This is only needed because of an historical type change of the legacy
directory, so avoid doing it anywhere else.
|
|
|
|
|
|
|
|
|
| |
The syslog file descriptor will be closed when we are cleaning up in
preparation for running the vncserver script, so we need to explicitly
reopen things in case we need to log errors.
At the same time, try to be polite and explicitly close the log when
appropriate.
|
|
|
|
|
| |
E.g. pam_env.so might modify this variable, so we should see what we get
out of PAM when building a log file path.
|
|
|
|
|
|
| |
There is too much variation between distributions for us to have a good
PAM configuration that works everywhere. Try to make this more obvious
by having a comment at the top of the file.
|
|\
| |
| | |
Allow for alternative user config locations, deprecate `~/.vnc` in favour of XDG Base Directory Specification paths
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The norm is that the install target is read only from the point of view
of the source and build directory, so avoid accidentally triggering any
build.
|
| | |
|
|/
|
|
|
| |
Make it easier to work iteratively by not having to remove the output
file each time.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Option is -D, which is what sshd uses for the same option.
Also add description of the new option to the vncsession
man page.
Tested on Void Linux using the new option, also tested on
Fedora without using the new option.
Resolves #1649
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Addresses the following AVC denial:
type=PROCTITLE msg=audit(01/12/2023 02:58:12.648:696) : proctitle=/usr/sbin/vncsession fedora :1
type=PATH msg=audit(01/12/2023 02:58:12.648:696) : item=1 name=/home/fedora/.vnc nametype=CREATE cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 cap_frootid=0
type=PATH msg=audit(01/12/2023 02:58:12.648:696) : item=0 name=/home/fedora/ inode=262145 dev=fc:02 mode=dir,700 ouid=fedora ogid=fedora rdev=00:00 obj=unconfined_u:object_r:user_home_dir_t:s0 nametype=PARENT cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 cap_frootid=0
type=CWD msg=audit(01/12/2023 02:58:12.648:696) : cwd=/home/fedora
type=SYSCALL msg=audit(01/12/2023 02:58:12.648:696) : arch=x86_64 syscall=mkdir success=no exit=EACCES(Permission denied) a0=0x7fff47d52540 a1=0755 a2=0x0 a3=0x0 items=2 ppid=2869 pid=2880 auid=fedora uid=fedora gid=fedora euid=fedora suid=fedora fsuid=fedora egid=fedora sgid=fedora fsgid=fedora tty=(none) ses=8 comm=vncsession exe=/usr/sbin/vncsession subj=system_u:system_r:vnc_session_t:s0 key=(null)
type=AVC msg=audit(01/12/2023 02:58:12.648:696) : avc: denied { create } for pid=2880 comm=vncsession name=.vnc scontext=system_u:system_r:vnc_session_t:s0 tcontext=system_u:object_r:vnc_home_t:s0 tclass=dir permissive=0
Resolves: rhbz#2143704
|
|
|
|
|
| |
These types caused an incorrect signed/unsigned behaviour, so let's make
sure we use the appropriate type.
|
|
|
|
| |
gcc can get upset if they aren't in this order.
|
|
|
|
|
| |
This allows us to separate accidentally unused, from explicitly unused
parameters, which allows us to turn on such checks in the compiler.
|
| |
|
|
|
|
|
|
| |
Delay startup of VNC sessions until user databases are up and running.
This is the same ordering that GDM imposes to make sure users can
actually log in.
|
|
|
|
|
|
|
| |
We need to get to the point of starting the session script before we
consider things a success. So this can fail in many different ways, not
just the daemonization. Adjust the error message to something more
generic to reflect this.
|
|
|
|
|
|
| |
Instead of HOME_ROOT/.vnc, /root/.vnc should be used
for user root's home to specify default file context
as HOME_ROOT actually means base for home dirs (usually /home).
|
|\ |
|
| | |
|
|/
|
|
| |
There is no such thing as XDG_DESKTOP_NAMES.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
The new vnc_home_t type for HOME/.vnc directory was added to the policy,
backed by a name transition. The vnc_session_t domain can manage files
and directories of this type.
|
| |
| |
| |
| |
| |
| |
| | |
The permissions set to manage directories and files with the nfs_t type
is allowed when the use_nfs_home_dirs boolean is turned on.
Resolves: https://github.com/TigerVNC/tigervnc/issues/1189
|
| |
| |
| |
| |
| |
| | |
Sections and rules blocks reordered according to the Style guide.
https://github.com/TresysTechnology/refpolicy/wiki/StyleGuide
|
| |
| |
| |
| |
| |
| | |
Style guide [1] issues only. No impact on policy functionality.
[1] - https://github.com/TresysTechnology/refpolicy/wiki/StyleGuide
|
| |
| |
| |
| |
| |
| | |
Some operating systems such as FreeBSD don't define a HOST_NAME_MAX
macro. The portable approach to determine the real host name limit is
calling sysconf(_SC_HOST_NAME_MAX) so do that instead.
|
| |
| |
| |
| | |
Give people a chance to know about the documentation.
|
| |
| |
| |
| |
| |
| | |
It's almost mandatory to specify "session", but fairly rare to need to
set "desktop", so let's tweak the examples to avoid confusion and
mistakes.
|
|/ |
|
|
|
|
|
| |
Build flags control where this file ends up, so avoid assuming a
specific path in the HOWTO.
|
|
|
|
|
| |
The line width was very inconsitent in this file, so standardise on the
common 72 characters.
|
|
|
|
|
| |
stderr has been redirected to /dev/null so all logging needs to go to
syslog.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Major restructuring of how streams work. Neither input nor output
streams are now blocking. This avoids stalling the rest of the client or
server when a peer is slow or unresponsive.
Note that this puts an extra burden on users of streams to make sure
they are allowed to do their work once the underlying transports are
ready (e.g. monitoring fds).
|
| |
| |
| |
| |
| | |
This is what display managers do, so it is expected by many
environments.
|
| |
| |
| |
| |
| |
| | |
We terminated the child instead of the parent after fork().
Reported by Jan Grulich from Red Hat.
|
| |
| |
| |
| |
| | |
It is now dynamically generated, so it will be in the build directory
and not in the source directory.
|
|\ \ |
|
| | | |
|
|\ \ \
| |/ /
|/| | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Refer @CMAKE_INSTALL_FULL_SYSCONF@ instead.
|
|/ /
| |
| |
| |
| |
| | |
This is needed by vncserver which doesn't know which parameters are
boolean, and it cannot use the -Param=Value form as that isn't tolerated
by the Xorg code.
|