r53743 - in /desktop/unstable/gdm3/debian: changelog patches/01_gdm-session-Calculate-fallback-session-name-without-.patch patches/92_systemd_unit.patch patches/series
laney at users.alioth.debian.org
laney at users.alioth.debian.org
Tue Sep 12 17:02:29 UTC 2017
Author: laney
Date: Tue Sep 12 17:02:28 2017
New Revision: 53743
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=53743
Log:
* New upstream stable release
- Fix for unauthenticated unlock when autologin is enabled
(CVE-2017-12164)
- Fix for going to normal mode after classic
- crasher fix when user switching
- make sure reauthentication is run in right context
* debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch:
Cherry-pick from upstream. Calculate the default (`fallback') session in
the same way as gnome-shell does, fixing an out-of-sync issue between the
greeter and gdm's idea of the first session. (LP: #1705157)
* debian/patches/92_systemd_unit.patch: No need to patch to send HUP - this
is done upstream now.
Added:
desktop/unstable/gdm3/debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch
Modified:
desktop/unstable/gdm3/debian/changelog
desktop/unstable/gdm3/debian/patches/92_systemd_unit.patch
desktop/unstable/gdm3/debian/patches/series
Modified: desktop/unstable/gdm3/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm3/debian/changelog?rev=53743&op=diff
==============================================================================
--- desktop/unstable/gdm3/debian/changelog [utf-8] (original)
+++ desktop/unstable/gdm3/debian/changelog [utf-8] Tue Sep 12 17:02:28 2017
@@ -1,3 +1,20 @@
+gdm3 (3.26.0-1) UNRELEASED; urgency=medium
+
+ * New upstream stable release
+ - Fix for unauthenticated unlock when autologin is enabled
+ (CVE-2017-12164)
+ - Fix for going to normal mode after classic
+ - crasher fix when user switching
+ - make sure reauthentication is run in right context
+ * debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch:
+ Cherry-pick from upstream. Calculate the default (`fallback') session in
+ the same way as gnome-shell does, fixing an out-of-sync issue between the
+ greeter and gdm's idea of the first session. (LP: #1705157)
+ * debian/patches/92_systemd_unit.patch: No need to patch to send HUP - this
+ is done upstream now.
+
+ -- Iain Lane <laney at debian.org> Tue, 12 Sep 2017 17:30:57 +0100
+
gdm3 (3.25.90.1-2) unstable; urgency=medium
* New upstream release
Added: desktop/unstable/gdm3/debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm3/debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch?rev=53743&op=file
==============================================================================
--- desktop/unstable/gdm3/debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch (added)
+++ desktop/unstable/gdm3/debian/patches/01_gdm-session-Calculate-fallback-session-name-without-.patch [utf-8] Tue Sep 12 17:02:28 2017
@@ -0,0 +1,82 @@
+From 9606bf42d179dde4fd913fcb9304e01560fd855e Mon Sep 17 00:00:00 2001
+From: Iain Lane <iain at orangesquash.org.uk>
+Date: Tue, 12 Sep 2017 13:28:39 +0100
+Subject: [PATCH] gdm-session: Calculate fallback session name without
+ ".desktop"
+
+When the user has not ever selected a session from the selector, we will
+log them into the `fallback' session, which is calculated by looking at
+all installed sessions and picking the first one in the list.
+
+There is a bug that the visually selected session presented in the
+greeter can be different from the fallback session calculated inside
+GDM. This happens because the two sort sessions differently.
+
+Inside GDM we calculate the fallback session by comparing the full
+basename of the file:
+
+>>> GLib.strcmp0("gnome-xorg.desktop", "gnome.desktop")
+-1
+
+Whereas gnome-shell calls gdm_get_session_ids(), which returns IDs
+without the ".desktop" extension. Those are then sorted:
+
+>>> GLib.strcmp0("gnome-xorg", "gnome")
+45
+
+which gives a different ordering.
+
+Fix this bug by calculating the fallback session in the same way, by
+removing ".desktop" from the filename.
+
+https://bugs.launchpad.net/ubuntu/+source/gnome-session/+bug/1705157
+
+https://bugzilla.gnome.org/show_bug.cgi?id=787304
+---
+ daemon/gdm-session.c | 17 +++++------------
+ 1 file changed, 5 insertions(+), 12 deletions(-)
+
+diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
+index 0b832231..063c5a2d 100644
+--- a/daemon/gdm-session.c
++++ b/daemon/gdm-session.c
+@@ -573,8 +573,8 @@ get_fallback_session_name (GdmSession *self)
+ }
+
+ if (get_session_command_for_file (self, base_name, NULL)) {
+-
+- g_sequence_insert_sorted (sessions, g_strdup (base_name), (GCompareDataFunc) g_strcmp0, NULL);
++ name = g_strndup (base_name, strlen (base_name) - strlen (".desktop"));
++ g_sequence_insert_sorted (sessions, name, (GCompareDataFunc) g_strcmp0, NULL);
+ }
+ } while (base_name != NULL);
+
+@@ -589,22 +589,15 @@ get_fallback_session_name (GdmSession *self)
+ g_error ("GdmSession: no session desktop files installed, aborting...");
+
+ do {
+- if (g_sequence_get (session)) {
+- char *base_name;
+-
+- g_free (name);
+- base_name = g_sequence_get (session);
+- name = g_strndup (base_name,
+- strlen (base_name) -
+- strlen (".desktop"));
+-
++ name = g_sequence_get (session);
++ if (name) {
+ break;
+ }
+ session = g_sequence_iter_next (session);
+ } while (!g_sequence_iter_is_end (session));
+
+ g_free (self->priv->fallback_session_name);
+- self->priv->fallback_session_name = name;
++ self->priv->fallback_session_name = g_strdup (name);
+
+ g_sequence_free (sessions);
+
+--
+2.11.0
+
Modified: desktop/unstable/gdm3/debian/patches/92_systemd_unit.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm3/debian/patches/92_systemd_unit.patch?rev=53743&op=diff
==============================================================================
--- desktop/unstable/gdm3/debian/patches/92_systemd_unit.patch [utf-8] (original)
+++ desktop/unstable/gdm3/debian/patches/92_systemd_unit.patch [utf-8] Tue Sep 12 17:02:28 2017
@@ -1,6 +1,8 @@
+Index: b/data/gdm.service.in
+===================================================================
--- a/data/gdm.service.in
+++ b/data/gdm.service.in
-@@ -20,14 +20,16 @@ After=rc-local.service plymouth-start.se
+@@ -20,15 +20,16 @@
OnFailure=plymouth-quit.service
[Service]
@@ -8,8 +10,6 @@
+ExecStartPre=/bin/sh -c '[ "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/sbin/gdm3" ]'
+ExecStartPre=/usr/share/gdm/generate-config
+ExecStart=@sbindir@/gdm3
-+ExecReload=/bin/kill -HUP $MAINPID
-+ExecReload=/usr/share/gdm/generate-config
KillMode=mixed
Restart=always
+RestartSec=1s
@@ -18,6 +18,8 @@
StandardOutput=syslog
StandardError=inherit
EnvironmentFile=- at LANG_CONFIG_FILE@
+ ExecReload=/bin/kill -SIGHUP $MAINPID
-
-[Install]
-Alias=display-manager.service
++ExecReload=/usr/share/gdm/generate-config
Modified: desktop/unstable/gdm3/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gdm3/debian/patches/series?rev=53743&op=diff
==============================================================================
--- desktop/unstable/gdm3/debian/patches/series [utf-8] (original)
+++ desktop/unstable/gdm3/debian/patches/series [utf-8] Tue Sep 12 17:02:28 2017
@@ -1,3 +1,4 @@
+01_gdm-session-Calculate-fallback-session-name-without-.patch
16_xserver_path.patch
90_config_comments.patch
91_dconf_database_path.patch
More information about the pkg-gnome-commits
mailing list