import gdm-40.0-17.el8

This commit is contained in:
CentOS Sources 2021-10-19 04:21:08 +00:00 committed by Stepan Oksanichenko
parent 7e699ea069
commit a119e6a8fe
2 changed files with 92 additions and 1 deletions

View File

@ -0,0 +1,84 @@
From 56d12ad9697d5695c780a5be0065d23fec6bd1a5 Mon Sep 17 00:00:00 2001
From: Chingkai Chu <3013329+chuchingkai@users.noreply.github.com>
Date: Thu, 12 Aug 2021 10:34:01 +0800
Subject: [PATCH] session-worker: Set session_vt=0 out of pam uninitialization
MR GNOME/gdm!123 moved jump_to_vt and session_vt reseting to a
separate function, so we don't need to reset session_vt in pam
uninitialization.
https://gitlab.gnome.org/GNOME/gdm/-/issues/719
---
daemon/gdm-session-worker.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/daemon/gdm-session-worker.c b/daemon/gdm-session-worker.c
index c1201b70..9cff53a5 100644
--- a/daemon/gdm-session-worker.c
+++ b/daemon/gdm-session-worker.c
@@ -1076,62 +1076,60 @@ gdm_session_worker_set_state (GdmSessionWorker *worker,
static void
gdm_session_worker_uninitialize_pam (GdmSessionWorker *worker,
int status)
{
g_debug ("GdmSessionWorker: uninitializing PAM");
if (worker->priv->pam_handle == NULL)
return;
gdm_session_worker_get_username (worker, NULL);
if (worker->priv->state >= GDM_SESSION_WORKER_STATE_SESSION_OPENED) {
pam_close_session (worker->priv->pam_handle, 0);
gdm_session_auditor_report_logout (worker->priv->auditor);
} else {
gdm_session_auditor_report_login_failure (worker->priv->auditor,
status,
pam_strerror (worker->priv->pam_handle, status));
}
if (worker->priv->state >= GDM_SESSION_WORKER_STATE_ACCREDITED) {
pam_setcred (worker->priv->pam_handle, PAM_DELETE_CRED);
}
pam_end (worker->priv->pam_handle, status);
worker->priv->pam_handle = NULL;
gdm_session_worker_stop_auditor (worker);
- worker->priv->session_vt = 0;
-
g_debug ("GdmSessionWorker: state NONE");
gdm_session_worker_set_state (worker, GDM_SESSION_WORKER_STATE_NONE);
}
static char *
_get_tty_for_pam (const char *x11_display_name,
const char *display_device)
{
#ifdef __sun
return g_strdup (display_device);
#else
return g_strdup (x11_display_name);
#endif
}
#ifdef PAM_XAUTHDATA
static struct pam_xauth_data *
_get_xauth_for_pam (const char *x11_authority_file)
{
FILE *fh;
Xauth *auth = NULL;
struct pam_xauth_data *retval = NULL;
gsize len = sizeof (*retval) + 1;
fh = fopen (x11_authority_file, "r");
if (fh) {
auth = XauReadAuth (fh);
fclose (fh);
}
if (auth) {
--
2.31.1

View File

@ -12,7 +12,7 @@
Name: gdm Name: gdm
Epoch: 1 Epoch: 1
Version: 40.0 Version: 40.0
Release: 16%{?dist} Release: 17%{?dist}
Summary: The GNOME Display Manager Summary: The GNOME Display Manager
License: GPLv2+ License: GPLv2+
@ -42,6 +42,9 @@ Patch70001: 0001-Revert-gdm-wayland-x-session-don-t-overwrite-user-en.patch
# Crash fix # Crash fix
Patch80001: 0001-local-display-factory-Don-t-try-to-respawn-displays-.patch Patch80001: 0001-local-display-factory-Don-t-try-to-respawn-displays-.patch
# VT handling fix from upstream
Patch90001: 0001-session-worker-Set-session_vt-0-out-of-pam-uninitial.patch
# Non-upstreamable workarounds # Non-upstreamable workarounds
Patch66610001: 0001-local-display-factory-pause-for-a-few-seconds-before.patch Patch66610001: 0001-local-display-factory-pause-for-a-few-seconds-before.patch
Patch66620001: 0001-data-reap-gdm-sessions-on-shutdown.patch Patch66620001: 0001-data-reap-gdm-sessions-on-shutdown.patch
@ -364,6 +367,10 @@ fi
%{_libdir}/pkgconfig/gdm-pam-extensions.pc %{_libdir}/pkgconfig/gdm-pam-extensions.pc
%changelog %changelog
* Wed Oct 13 2021 Ray Strode <rstrode@redhat.com> - 40.0-17
- Properly switch VTs when jumping to multi-user target
Related: #1988958
* Wed Sep 15 2021 Ray Strode <rstrode@redhat.com> - 40.0-16 * Wed Sep 15 2021 Ray Strode <rstrode@redhat.com> - 40.0-16
- Fix XDMCP - Fix XDMCP
Resolves: #2005011 Resolves: #2005011