Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package coreutils for openSUSE:Factory checked in at 2023-09-22 21:46:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/coreutils (Old) and /work/SRC/openSUSE:Factory/.coreutils.new.1770 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "coreutils" Fri Sep 22 21:46:30 2023 rev:153 rq:1112462 version:9.4 Changes: -------- --- /work/SRC/openSUSE:Factory/coreutils/coreutils.changes 2023-09-08 21:15:48.619048034 +0200 +++ /work/SRC/openSUSE:Factory/.coreutils.new.1770/coreutils.changes 2023-09-22 21:46:34.379028222 +0200 @@ -1,0 +2,7 @@ +Sun Sep 17 16:15:24 UTC 2023 - Bernhard Voelker <m...@bernhard-voelker.de> + +- gnulib-readutmp-under-gdm.patch: Add upstream gnulib patch to fix crash + of who/uptime when gdm is in use. [bsc#1215361] +- gnulib-readutmp.patch: Update with upstream patch. + +------------------------------------------------------------------- New: ---- gnulib-readutmp-under-gdm.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ coreutils.spec ++++++ --- /var/tmp/diff_new_pack.5wnjFV/_old 2023-09-22 21:46:37.267133069 +0200 +++ /var/tmp/diff_new_pack.5wnjFV/_new 2023-09-22 21:46:37.271133214 +0200 @@ -50,9 +50,12 @@ Patch112: coreutils-getaddrinfo.patch # Assorted fixes Patch113: coreutils-misc.patch -# gnulib seg.faults if there is no session +# Upstream gnulib commits (squashed) to fix gnulib seg.faults +# if there is no session: # https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65617 Patch114: gnulib-readutmp.patch +# Upstream gnulib patch to fix crash when gdm is in use. [bsc#1215361] +Patch115: gnulib-readutmp-under-gdm.patch # Skip 2 valgrind'ed sort tests on ppc/ppc64 which would fail due to # a glibc issue in mkstemp. Patch300: coreutils-skip-some-sort-tests-on-ppc.patch @@ -155,6 +158,7 @@ %patch112 %patch113 %patch114 -p1 +%patch115 -p1 %patch300 ++++++ gnulib-readutmp-under-gdm.patch ++++++ Upstream gnulib patch to fix crash when gdm is in use. [bsc#1215361] >From 579f2d6f3d1d817c2f7e2c603c9a3ded63dcaa92 Mon Sep 17 00:00:00 2001 From: Bruno Haible <br...@clisp.org> Date: Fri, 15 Sep 2023 17:40:10 +0200 Subject: [PATCH] readutmp: Fix crash when gdm is in use. Reported by Thorsten Kukuk <ku...@suse.com> in <https://lists.gnu.org/archive/html/bug-gnulib/2023-09/msg00093.html>. * lib/readutmp.c (read_utmp_from_systemd): Don't use the value returned by sd_session_get_display if it is NULL. --- lib/readutmp.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/readutmp.c b/lib/readutmp.c index ec09feb59b..d8213e7ad5 100644 --- a/lib/readutmp.c +++ b/lib/readutmp.c @@ -873,7 +873,10 @@ read_utmp_from_systemd (idx_t *n_entries, STRUCT_UTMP **utmp_buf, int options) char *display; if (sd_session_get_display (session, &display) < 0) display = NULL; - host = display; + /* Workaround: gdm "forgets" to pass the display to + systemd, thus display may be NULL here. */ + if (display != NULL) + host = display; } } else -- 2.42.0 ++++++ gnulib-readutmp.patch ++++++ --- /var/tmp/diff_new_pack.5wnjFV/_old 2023-09-22 21:46:37.443139459 +0200 +++ /var/tmp/diff_new_pack.5wnjFV/_new 2023-09-22 21:46:37.447139603 +0200 @@ -1,3 +1,30 @@ +This squashes 2 consecutive upstream gnulib commits +to fix gnulib seg.faults if there is no session: + +https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65617 + +Upstream gnulib commit 3af1d7b0ce3a8e3ae565e7cea10cee6fd7cb8109 + +2023-08-31 Bruno Haible <br...@clisp.org> + + readutmp: Fix memory leak introduced by last commit. + * lib/readutmp.c (read_utmp_from_systemd): If num_sessions == 0 and + sessions != NULL, do call free (sessions). + +Upstream gnulib commit 1e6a26f9312bb47e070f94b17b14dc1a6ffbb74f + +2023-08-30 Paul Eggert <egg...@cs.ucla.edu> + + readutmp: fix core dump if --enable-systemd + Problem reported by Thorsten Kukuk <https://bugs.gnu.org/65617>. + * lib/readutmp.c (read_utmp_from_systemd): + Donât assume session_ptr != NULL if num_sessions == 0. + In practice it can be null, and the man page OKs this behavior. + +--- + lib/readutmp.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletion(-) + diff --git a/lib/readutmp.c b/lib/readutmp.c index 0173b7e0c1..e99158677c 100644 --- a/lib/readutmp.c @@ -7,8 +34,11 @@ char **sessions; int num_sessions = sd_get_sessions (&sessions); - if (num_sessions >= 0) -+ if (num_sessions > 0) ++ if (num_sessions >= 0 && sessions != NULL) { char **session_ptr; for (session_ptr = sessions; *session_ptr != NULL; session_ptr++) +-- +2.42.0 +