| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
We used the same signal (session-start-failed) when we had both session
starting and opening failures.
This may lead to wrong behaviors, so let's introduce another signal to
notify such state.
(cherry picked from commit 2f9afacd494311b8b7393848fec59bc8df7520b7)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We're currently emitting verification-complete signal as soon as we
got a positive authentication callback from the worker, however at this
point we've not opened the session yet, and if that fails we'll end up
in a scenario where gdm assumed that we're logging in, and so its
greeter is shut down and never restarted on its VT until we manually
switch back and forth from it. Meanwhile the session opening failure is
never exposed to the user.
So, do not emit verification-completed on logins, until we've opened
the session.
However, re-order the session-opened callback events so that we keep
notifying verification-complete before than session-opened.
This basically reverts commit c4292870 (again).
Fixes: https://gitlab.gnome.org/GNOME/gdm/-/issues/712
(cherry picked from commit f65c681a469a2675d96012a77a563e50369b9e54)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Given not having users may make GDM to launch initial setup, that
allows to create new users (potentially with sudo capabilities), it's
better to make look_for_existing_users() to return its status and only
if it didn't fail continue the gdm execution.
GHSL-2020-202
CVE-2020-16125
Fixes #642
(cherry picked from commit dc8235128c3a1fcd5da8f30ab6839d413d353f28)
|
|\
| |
| |
| |
| | |
Backport patches for crash when using Xvfb
See merge request GNOME/gdm!119
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
These days we always want the login screen on VT 1, even
when it's created by user switching.
Unfortunately, since commit f843233ad the login screen
won't naturally pick VT 1 when user switching.
This commit forces it to make the right choice.
|
| |
|
| |
|
|\
| |
| |
| |
| | |
gdm-manager: Make sure the Plymouth client exist before we use it.
See merge request GNOME/gdm!89
|
|/
|
|
| |
distributions' directory architecture.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
We disable Wayland on Cirrus since f15e6451, but the cirrus driver was
reimplemented in kernel v5.2 or later. This commit will enable Wayland
on Cirrus chipset.
Closes #586
|
|\ \
| | |
| | |
| | |
| | | |
manager: Try looking up session based on PID first
See merge request GNOME/gdm!90
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is a workaround for the fact that we currently need to run multiple
greeter sessions in multi-seat environments that use the same user. We
should not be doing this in the first place. Doing this effectively
prevents GNOME from using a systemd startup, which would cause relevant
processes to be outside of the session scope preventing lookups of the
logind session from the PID.
Instead, we really should be running each of the greeter session as a
separate (dynamic) user. But lacking that, this workaround should get
multi-seat support up and running again for the time being.
See: #526
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unfortunately, GDM may be running multiple greeters, and each greeter is
currently using the same user. So while in a lot of setups each user
should only have one graphical session and also only one DBus session
bus, this is not true for the gdm greeter.
Lacking another solution (e.g. separate users), we need to be able to
correctly lookup the session information for all greeter instances. We
can do so by using sd_pid_get_session and using this information is safe
if it does return something.
See: #526
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
session-worker: ensure initial vt is never picked for !is_initial displays
See merge request GNOME/gdm!95
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Normally, a !is_initial display would never "get" tty1, since the system
boots to tty1. But if, for some reason, the user booted to runlevel 3,
then switched to runlevel 5, the login screen could get started when
tty1 is free.
That means, e.g., an autologin user can end up getting allocated tty1,
which is bad, since we assume tty1 is used for the login screen.
This commit opens up /dev/tty1 when querying for available VTs, so that
it never gets returned by the kernel as available.
|
|/ |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
configure: Use pkg-config to look for keyutils
See merge request GNOME/gdm!91
|
|/
|
|
|
|
|
|
|
|
|
| |
Support for pkg-config was added to keyutils somewhat recently in
November 2018 [1], whereas the keyutils dependency was originally added
in August 2016 in commit 31ed6f2b3f1ab45ae07aad41c13a51ba91fd159d.
[1] Keyutils commit d4d758a04616b770
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/commit/?id=d4d758a04616b770
https://gitlab.gnome.org/GNOME/gdm/merge_requests/91
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
libgdm: Remove duplicate sessions when on Xorg
See merge request GNOME/gdm!84
|
|/
|
|
|
| |
When gdm works on Xorg it's possible to have duplicate sessions, we need
to remove them.
|