From fb32b8065eaf867e387d4a116b7b291236c8a81db671d8ac9fae6b765495e922 Mon Sep 17 00:00:00 2001 From: OBS User buildservice-autocommit Date: Tue, 22 Jun 2010 08:11:19 +0000 Subject: [PATCH] Updating link to change in openSUSE:Factory/gdm revision 96.0 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=bdb3a1c00192dc953dae62fb320e0d47 --- gdm-xdmcp-uninitialized.patch | 34 ++++++++++++++++++++++++++++++++++ gdm.changes | 7 +++++++ gdm.spec | 5 ++++- 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 gdm-xdmcp-uninitialized.patch diff --git a/gdm-xdmcp-uninitialized.patch b/gdm-xdmcp-uninitialized.patch new file mode 100644 index 0000000..8dd3060 --- /dev/null +++ b/gdm-xdmcp-uninitialized.patch @@ -0,0 +1,34 @@ +From 34a3c576fd7a15721765a43939f44978a93d43f9 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Wed, 16 Jun 2010 16:33:20 +0000 +Subject: Call XdmcpFill with properly initialized length + +commit e533f4b72568cdc3d7f7ec6cec09d9392b11d54c cleaned +up various XDMCP issues, but it unfortunately also created +a bug making XDMCP fail a high percentage of the time. + +XdmcpFill takes an in-out length argument. This argument was getting +passed an uninitialized variable. +(cherry picked from commit 86ac166294f0fc8f662031167066acf1928cf139) +--- +diff --git a/daemon/gdm-xdmcp-display-factory.c b/daemon/gdm-xdmcp-display-factory.c +index 447833d..791bba3 100644 +--- a/daemon/gdm-xdmcp-display-factory.c ++++ b/daemon/gdm-xdmcp-display-factory.c +@@ -2879,12 +2879,13 @@ decode_packet (GIOChannel *source, + return TRUE; + } + ++ ss_len = (int)gdm_sockaddr_len (&clnt_ss); ++ + res = XdmcpFill (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)&clnt_ss, &ss_len); + if G_UNLIKELY (! res) { + g_debug ("GdmXdmcpDisplayFactory: Could not create XDMCP buffer!"); + return TRUE; + } +- ss_len = (int)gdm_sockaddr_len (&clnt_ss); + + res = XdmcpReadHeader (&factory->priv->buf, &header); + if G_UNLIKELY (! res) { +-- +cgit v0.8.3.1 diff --git a/gdm.changes b/gdm.changes index 325c09f..f3c1c5e 100644 --- a/gdm.changes +++ b/gdm.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Thu Jun 17 23:07:12 CEST 2010 - captain.magnus@opensuse.org + + - Add gdm-xdmcp-uninitialized.patch to fix an uninitialized + variable, which caused XDMCP to fail way too often. Patch taken + from upstream git. + ------------------------------------------------------------------- Thu Jun 17 14:41:01 CEST 2010 - vuntz@opensuse.org diff --git a/gdm.spec b/gdm.spec index 62a7eca..cf3803a 100644 --- a/gdm.spec +++ b/gdm.spec @@ -42,7 +42,7 @@ BuildRequires: zenity License: GPLv2+ Group: System/GUI/GNOME Version: 2.30.2 -Release: 3 +Release: 4 Summary: The GNOME 2.x Display Manager Source: %{name}-%{version}.tar.bz2 Source1: gdm.pamd @@ -85,6 +85,8 @@ Patch39: gdm-polkit-gnome-path.patch Patch40: gdm-look-at-runlevel.patch # PATCH-FIX-UPSTREAM gdm-add-missing-locale.patch captain.magnus@opensuse.org -- Add missing locale.alias file. This patch can be removed with the next version update Patch41: gdm-add-missing-locale.patch +# PATCH-FIX-UPSTREAM gdm-xdmcp-uninitialized.patch captain.magnus@opensuse.org -- Fix an uninitialized variable. Patch taken from git upstream and can be removed with the next update +Patch42: gdm-xdmcp-uninitialized.patch # PATCH-FIX-OPENSUSE gdm-selinux.patch -- Small changes to make it compile fine with SELinux Patch60: gdm-selinux.patch Url: http://www.gnome.org/ @@ -163,6 +165,7 @@ gnome-patch-translation-prepare %patch39 -p0 %patch40 -p1 %patch41 -p1 +%patch42 -p1 %patch60 gnome-patch-translation-update