| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
The XDMCP disply factory examines the sessions of its displays'
launch environments when the displays change status.
Unfortunately it leaks a reference to the launch environment when
doing that.
This commit fixes the reference leak which leads to an fd leak.
|
|
|
|
|
|
|
|
|
|
|
|
| |
XDMCP login screens get a "Remote Geeter Interface" exported over
the bus connection (so the login window can provide a Disconnect
button).
This interface is getting leaked when the session object is disposed,
leaving the bus connection itself undisposed, which causes an fd
leak.
This commit plugs the interface leak, and thus the fd leak.
|
|
|
|
|
|
|
|
|
| |
The display object stores its associated user session with it
as object data. It never clears this session from its object
data when its done with it however, leading to the session leaking.
This commit plugs the leak and an associated file descriptor leak
at logout.
|
|
|
|
|
|
|
|
| |
The create_user_session_for_display function returns a new reference
to the GdmSession object it creates. The callers don't expect this,
and most of the callers don't even look at the return value at all.
This commit makes it return void instead.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
When GDM is configured as a standalone XDMCP server, the manager quits
Plymouth by running 'plymouth quit --retain-splash'. This is not ideal
because there is no transition to a local X server. The terminal can be
then left from the Plymouth run in the graphics mode with no getty
prompt and also disallowing switching to another VT. The patch fixes the
problem by instead running 'plymouth quit' which always switches the
terminal to the text mode.
https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/101
|
|\
| |
| |
| |
| |
| |
| | |
Benzea/fix unknown session crash
Closes #555
See merge request GNOME/gdm!106
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The get_display_and_details_for_bus_sender function does not return a
proper error value. Due to this, it makes sense to always write the out
parameters (though, I expect we have still more that we might need to
write).
This is just slightly safer, but the function probably isn't great as
is.
|
|/
|
|
|
|
|
|
|
|
|
| |
Some people insist on running sessions in ways where we cannot detect
them properly. In that case, we shouldn't find a display, but the
variable was not initialized and we could end up accessing random memory
resulting in a crash.
Fix it by adding the missing initializer.
Closes: #555
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
data: Remove deprecated StandardOutput=syslog
Closes #623
See merge request GNOME/gdm!108
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is now equivalent to StandardOutput=journal, and recent versions
of systemd log a warning for it. Instead of updating it to journal,
remove it: the default if not specified is to respect the
DefaultStandardOutput setting from /etc/systemd/system.conf, which
in turn defaults to journal. Removing the explicit setting here means
gdm is included if a sysadmin edits system.conf to change the logging
destination for (almost) all system services at the same time, which
seems desirable.
Similarly, StandardError defaults to DefaultStandardError, which
in turn defaults to inherit, so we don't need to override it here.
Resolves: https://gitlab.gnome.org/GNOME/gdm/-/issues/623
Signed-off-by: Simon McVittie <smcv@debian.org>
|
| |
|
|\
| |
| |
| |
| | |
Meson fixes
See merge request GNOME/gdm!107
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
GDM has a quite complex configuration and it might be hard to spot some
values from the log, so having a summary makes sense.
Meson introduced it starting from 0.53, but we can enable it without bumping
the dependency by using a dynamic version check.
|
| |
| |
| |
| |
| |
| |
| |
| | |
This was already the case in autotools, as it used to be a feature that was
set to auto and disabled only in the case there was no libsystemd.
Now, being systemd a required gdm component, there's no point to use it as
a feature, but still give the packagers the ability to toggle it.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Systemd journal library is provided by libsystemd, given that such API has
more than 8 years, is probably not needed to convert this into a feature and
check for a required systemd version in case it's enabled.
So, just set ENABLE_SYSTEMD_JOURNAL just reading the option.
|
| |
| |
| |
| |
| |
| | |
With meson 0.53 we can check whether a binary is in a specified path, as it
was possible with `AC_PATH_PROG`, so use it as we did before of meson switch
even if I'm not sure that this tool is shipped by most distros these days
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't leave to humans what machines can do, the gnome-login.session list
is filled with an hard-to-maintain single-line semicolon separated list of
components, that then are repeated in the gnome systemd session.conf.
And these are meant to be kept in sync.
Meson can help us in this, so let's just keep a single list in meson and
use it to generate the various formats we need.
|
| | |
|
| |
| |
| |
| |
| |
| | |
When udev is installed we compute the udevdir from pkg-config, however that
is only the parent folder of the rules.d, so in any case consider it a
prefix.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
No matter what parameter was passed to gdm, the custom.conf was always
installed in $gdmcomnfdir/custom.conf, even if the config.h was using the
configured path.
Ensure that we use the passed argument, setting its name as configure_file
output and its path as the install_dir.
Unfortunately we've to be hackish here, using coreutils tools until we
require meson 0.53 (and can use its FS module).
|
|/
|
|
|
| |
Keyutils includes a .pc file as mentioned in commit 141f8bc244, however its
name was wrongly changed from 'libkeyutils' during the meson port
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
GNOME 3.38 systemd session update
See merge request GNOME/gdm!88
|
|/
|
|
|
| |
GDM needs to ship the systemd definition for the custom GNOME session it
starts.
|
|\
| |
| |
| |
| | |
Replace deprecated macros from use
See merge request GNOME/gdm!105
|
|/
|
|
|
| |
Deprecated (atleast) from version 0.10.0.
Bug: https://bugs.gentoo.org/733708
|
|\
| |
| |
| |
| |
| |
| | |
local-display-factory: again don't require wayland support to kill X
Closes #614
See merge request GNOME/gdm!104
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit ac083ec2d3d663a48c4aa6693978669243880dd0 attempted fix killing
X in the background even when wayland support is disabled.
Unfortunately, it missed yet more places in the code that does
ifdef ENABLE_WAYLAND_SUPPORT
endif
This commit fixes that.
Closes: https://gitlab.gnome.org/GNOME/gdm/-/issues/614
|
|\
| |
| |
| |
| |
| |
| | |
local-display-factory: don't require wayland support to kill X
Closes #614
See merge request GNOME/gdm!103
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit d35805116113acbf1e112962c54785c604b13181 changed GDM to
kill X on login just like it does for wayland sessions.
Unfortunately, that commit neglected to pull the code out of the
ifdef ENABLE_WAYLAND_SUPPORT
endif
guards, so users who build without wayland support entirely, don't
get the feature.
This commit fixes that.
Closes: https://gitlab.gnome.org/GNOME/gdm/-/issues/614
|