Hello community, here is the log from the commit of package util-linux for openSUSE:Factory checked in at 2020-04-15 20:03:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/util-linux (Old) and /work/SRC/openSUSE:Factory/.util-linux.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "util-linux" Wed Apr 15 20:03:55 2020 rev:243 rq:791866 version:2.35.1 Changes: -------- --- /work/SRC/openSUSE:Factory/util-linux/python3-libmount.changes 2019-11-01 15:12:38.100637443 +0100 +++ /work/SRC/openSUSE:Factory/.util-linux.new.2738/python3-libmount.changes 2020-04-15 20:06:26.566102997 +0200 @@ -1,0 +2,32 @@ +Mon Apr 6 23:07:48 CEST 2020 - Stanislav Brabec <[email protected]> + +- Update to version 2.35.1: + * agetty: add --show-issue, support for /run/issue and + * fdisk: Correct handling of hybrid MBR, cleanup wipe warning, + use 'r' to return from MBR to GPT. + * lsblk: FSVER column, + drop e3bb9bfb76c17b1d05814436ced62c05c4011f48.patch. + * lscpu: Add HiSilicon aarch64 tsv110 cpupart, add a new columns + to --cache. + * mount: add --target-prefix. + * mountpoint: add --nofollow option. + * script: add --echo, --log-in, --logging-format, --log-out and + --log-timing. + * scriptlive: new command. + * scriptreplay: add --log-* options, --cr-mode, --stream, + --summary, -T --log-timing. + * sfdisk: add progress bars. + * unshare: add --keep-caps and --map-current-user options. + * Many other fixes and improvements, see: + https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.35/v2.35-ReleaseNotes + https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.35/v2.35.1-ReleaseNotes +- Refresh libeconf.patch. + +------------------------------------------------------------------- +Mon Apr 6 14:47:56 UTC 2020 - Ignaz Forster <[email protected]> + +- Add libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch: + Avoid triggering autofs in lookup_umount_fs_by_statfs + (boo#1168389) + +------------------------------------------------------------------- util-linux-systemd.changes: same change util-linux.changes: same change Old: ---- e3bb9bfb76c17b1d05814436ced62c05c4011f48.patch util-linux-2.34.tar.sign util-linux-2.34.tar.xz New: ---- libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch util-linux-2.35.1.tar.sign util-linux-2.35.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python3-libmount.spec ++++++ --- /var/tmp/diff_new_pack.JbiEA8/_old 2020-04-15 20:06:37.682110561 +0200 +++ /var/tmp/diff_new_pack.JbiEA8/_new 2020-04-15 20:06:37.686110563 +0200 @@ -1,7 +1,7 @@ # # spec file for package python3-libmount # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -79,7 +79,7 @@ %endif Summary: %main_summary License: GPL-2.0-or-later -Group: %group_pl +Group: %main_group BuildRequires: audit-devel BuildRequires: binutils-devel BuildRequires: fdupes @@ -122,10 +122,10 @@ %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.34 +Version: 2.35.1 Release: 0 -Url: https://www.kernel.org/pub/linux/utils/util-linux/ -Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.xz +URL: https://www.kernel.org/pub/linux/utils/util-linux/ +Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.xz Source1: util-linux-rpmlintrc Source2: util-linux-login_defs-check.sh Source4: raw.service @@ -136,7 +136,7 @@ Source9: remote.pamd Source10: su.pamd Source11: su.default -Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.sign +Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.sign Source13: %{_name}.keyring Source14: runuser.pamd Source15: runuser-l.pamd @@ -147,7 +147,7 @@ Patch1: libmount-print-a-blacklist-hint-for-unknown-filesyst.patch Patch2: Add-documentation-on-blacklisted-modules-to-mount-8-.patch Patch3: libeconf.patch -Patch813: e3bb9bfb76c17b1d05814436ced62c05c4011f48.patch +Patch4: libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -413,7 +413,7 @@ %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch813 -p1 +%patch4 -p1 %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects @@ -605,6 +605,8 @@ # may segfault on qemu-user-space export TS_OPT_misc_setarch_known_fail="yes" %endif +# This does not work with a chroot build: / is not a mountpoint +export TS_OPT_misc_mountpoint_known_fail="yes" # # hacks export PATH="$PATH:/sbin:/usr/sbin" @@ -996,6 +998,7 @@ %{_bindir}/renice %{_bindir}/rev %{_bindir}/script +%{_bindir}/scriptlive %{_bindir}/scriptreplay %{_bindir}/setarch %{_bindir}/setpriv @@ -1096,6 +1099,7 @@ %{_mandir}/man1/setpriv.1.gz %{_mandir}/man1/setsid.1.gz %{_mandir}/man1/script.1.gz +%{_mandir}/man1/scriptlive.1.gz %{_mandir}/man1/scriptreplay.1.gz %{_mandir}/man1/setterm.1.gz %{_mandir}/man1/taskset.1.gz ++++++ util-linux-systemd.spec ++++++ --- /var/tmp/diff_new_pack.JbiEA8/_old 2020-04-15 20:06:37.726110590 +0200 +++ /var/tmp/diff_new_pack.JbiEA8/_new 2020-04-15 20:06:37.726110590 +0200 @@ -1,7 +1,7 @@ # # spec file for package util-linux-systemd # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -122,10 +122,10 @@ %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.34 +Version: 2.35.1 Release: 0 -Url: https://www.kernel.org/pub/linux/utils/util-linux/ -Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.xz +URL: https://www.kernel.org/pub/linux/utils/util-linux/ +Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.xz Source1: util-linux-rpmlintrc Source2: util-linux-login_defs-check.sh Source4: raw.service @@ -136,7 +136,7 @@ Source9: remote.pamd Source10: su.pamd Source11: su.default -Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.sign +Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.sign Source13: %{_name}.keyring Source14: runuser.pamd Source15: runuser-l.pamd @@ -147,7 +147,7 @@ Patch1: libmount-print-a-blacklist-hint-for-unknown-filesyst.patch Patch2: Add-documentation-on-blacklisted-modules-to-mount-8-.patch Patch3: libeconf.patch -Patch813: e3bb9bfb76c17b1d05814436ced62c05c4011f48.patch +Patch4: libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -413,7 +413,7 @@ %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch813 -p1 +%patch4 -p1 %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects @@ -605,6 +605,8 @@ # may segfault on qemu-user-space export TS_OPT_misc_setarch_known_fail="yes" %endif +# This does not work with a chroot build: / is not a mountpoint +export TS_OPT_misc_mountpoint_known_fail="yes" # # hacks export PATH="$PATH:/sbin:/usr/sbin" @@ -996,6 +998,7 @@ %{_bindir}/renice %{_bindir}/rev %{_bindir}/script +%{_bindir}/scriptlive %{_bindir}/scriptreplay %{_bindir}/setarch %{_bindir}/setpriv @@ -1096,6 +1099,7 @@ %{_mandir}/man1/setpriv.1.gz %{_mandir}/man1/setsid.1.gz %{_mandir}/man1/script.1.gz +%{_mandir}/man1/scriptlive.1.gz %{_mandir}/man1/scriptreplay.1.gz %{_mandir}/man1/setterm.1.gz %{_mandir}/man1/taskset.1.gz ++++++ util-linux.spec ++++++ --- /var/tmp/diff_new_pack.JbiEA8/_old 2020-04-15 20:06:37.750110607 +0200 +++ /var/tmp/diff_new_pack.JbiEA8/_new 2020-04-15 20:06:37.754110609 +0200 @@ -1,7 +1,7 @@ # # spec file for package util-linux # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -122,10 +122,10 @@ %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.34 +Version: 2.35.1 Release: 0 -Url: https://www.kernel.org/pub/linux/utils/util-linux/ -Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.xz +URL: https://www.kernel.org/pub/linux/utils/util-linux/ +Source: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.xz Source1: util-linux-rpmlintrc Source2: util-linux-login_defs-check.sh Source4: raw.service @@ -136,7 +136,7 @@ Source9: remote.pamd Source10: su.pamd Source11: su.default -Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.34/util-linux-%{version}.tar.sign +Source12: https://www.kernel.org/pub/linux/utils/util-linux/v2.35/util-linux-%{version}.tar.sign Source13: %{_name}.keyring Source14: runuser.pamd Source15: runuser-l.pamd @@ -147,7 +147,7 @@ Patch1: libmount-print-a-blacklist-hint-for-unknown-filesyst.patch Patch2: Add-documentation-on-blacklisted-modules-to-mount-8-.patch Patch3: libeconf.patch -Patch813: e3bb9bfb76c17b1d05814436ced62c05c4011f48.patch +Patch4: libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -413,7 +413,7 @@ %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch813 -p1 +%patch4 -p1 %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects @@ -605,6 +605,8 @@ # may segfault on qemu-user-space export TS_OPT_misc_setarch_known_fail="yes" %endif +# This does not work with a chroot build: / is not a mountpoint +export TS_OPT_misc_mountpoint_known_fail="yes" # # hacks export PATH="$PATH:/sbin:/usr/sbin" @@ -996,6 +998,7 @@ %{_bindir}/renice %{_bindir}/rev %{_bindir}/script +%{_bindir}/scriptlive %{_bindir}/scriptreplay %{_bindir}/setarch %{_bindir}/setpriv @@ -1096,6 +1099,7 @@ %{_mandir}/man1/setpriv.1.gz %{_mandir}/man1/setsid.1.gz %{_mandir}/man1/script.1.gz +%{_mandir}/man1/scriptlive.1.gz %{_mandir}/man1/scriptreplay.1.gz %{_mandir}/man1/setterm.1.gz %{_mandir}/man1/taskset.1.gz ++++++ libeconf.patch ++++++ --- /var/tmp/diff_new_pack.JbiEA8/_old 2020-04-15 20:06:37.830110661 +0200 +++ /var/tmp/diff_new_pack.JbiEA8/_new 2020-04-15 20:06:37.830110661 +0200 @@ -10,11 +10,11 @@ login-utils/su-common.c | 7 ++ 4 files changed, 254 insertions(+), 11 deletions(-) -diff --git a/configure.ac b/configure.ac -index d4cf46fea..a3881ab8c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -2232,6 +2232,31 @@ AS_IF([test "x$with_smack" = xyes], [ +Index: util-linux-2.35.1/configure.ac +=================================================================== +--- util-linux-2.35.1.orig/configure.ac ++++ util-linux-2.35.1/configure.ac +@@ -2274,6 +2274,31 @@ AS_IF([test "x$with_smack" = xyes], [ AC_DEFINE([HAVE_SMACK], [1], [Add SMACK support]) ]) @@ -46,7 +46,7 @@ AC_ARG_WITH([bashcompletiondir], AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]), -@@ -2461,6 +2486,7 @@ AC_MSG_RESULT([ +@@ -2527,6 +2552,7 @@ AC_MSG_RESULT([ usrbin_execdir: ${usrbin_execdir} usrsbin_execdir: ${usrsbin_execdir} usrlib_execdir: ${usrlib_execdir} @@ -54,7 +54,7 @@ compiler: ${CC} cflags: ${CFLAGS} -@@ -2476,6 +2502,7 @@ AC_MSG_RESULT([ +@@ -2542,6 +2568,7 @@ AC_MSG_RESULT([ Bash completions: ${with_bashcompletiondir} Systemd support: ${have_systemd} Systemd unitdir: ${with_systemdsystemunitdir} @@ -62,10 +62,10 @@ Btrfs support: ${have_btrfs} Wide-char support: ${build_widechar} -diff --git a/login-utils/Makemodule.am b/login-utils/Makemodule.am -index aafbea307..22a6c867e 100644 ---- a/login-utils/Makemodule.am -+++ b/login-utils/Makemodule.am +Index: util-linux-2.35.1/login-utils/Makemodule.am +=================================================================== +--- util-linux-2.35.1.orig/login-utils/Makemodule.am ++++ util-linux-2.35.1/login-utils/Makemodule.am @@ -44,6 +44,9 @@ login_SOURCES = \ login-utils/logindefs.c \ login-utils/logindefs.h @@ -111,9 +111,9 @@ su_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS) su_LDADD = $(LDADD) libcommon.la -lpam if HAVE_LINUXPAM -@@ -149,6 +164,9 @@ endif - if HAVE_UTIL - su_LDADD += -lutil +@@ -152,6 +167,9 @@ su_SOURCES += lib/pty-session.c \ + lib/monotonic.c + su_LDADD += -lutil $(REALTIME_LIBS) endif +if HAVE_ECONF +su_LDADD += -leconf @@ -121,9 +121,9 @@ endif # BUILD_SU -@@ -168,6 +186,12 @@ endif - if HAVE_UTIL - runuser_LDADD += -lutil +@@ -174,6 +192,12 @@ runuser_SOURCES += lib/pty-session.c \ + lib/monotonic.c + runuser_LDADD += -lutil $(REALTIME_LIBS) endif +if HAVE_ECONF +runuser_LDADD += -leconf @@ -134,7 +134,7 @@ endif # BUILD_RUNUSER -@@ -192,6 +216,9 @@ lslogins_SOURCES = \ +@@ -198,6 +222,9 @@ lslogins_SOURCES = \ login-utils/logindefs.h lslogins_LDADD = $(LDADD) libcommon.la libsmartcols.la lslogins_CFLAGS = $(AM_CFLAGS) -I$(ul_libsmartcols_incdir) @@ -144,7 +144,7 @@ if HAVE_SELINUX lslogins_LDADD += -lselinux endif -@@ -199,6 +226,9 @@ if HAVE_SYSTEMD +@@ -205,6 +232,9 @@ if HAVE_SYSTEMD lslogins_LDADD += $(SYSTEMD_LIBS) $(SYSTEMD_JOURNAL_LIBS) lslogins_CFLAGS += $(SYSTEMD_CFLAGS) $(SYSTEMD_JOURNAL_CFLAGS) endif @@ -154,7 +154,7 @@ endif # BUILD_LSLOGINS if BUILD_VIPW -@@ -231,6 +261,12 @@ test_logindefs_SOURCES = \ +@@ -237,6 +267,12 @@ test_logindefs_SOURCES = \ login-utils/logindefs.c \ login-utils/logindefs.h test_logindefs_CPPFLAGS = -DTEST_PROGRAM $(AM_CPPFLAGS) @@ -167,10 +167,10 @@ install-exec-hook: -diff --git a/login-utils/logindefs.c b/login-utils/logindefs.c -index 2b505d255..9075ad9e7 100644 ---- a/login-utils/logindefs.c -+++ b/login-utils/logindefs.c +Index: util-linux-2.35.1/login-utils/logindefs.c +=================================================================== +--- util-linux-2.35.1.orig/login-utils/logindefs.c ++++ util-linux-2.35.1/login-utils/logindefs.c @@ -38,6 +38,18 @@ #include "pathnames.h" #include "xalloc.h" @@ -200,7 +200,7 @@ void free_getlogindefs_data(void) { struct item *ptr; -@@ -145,12 +154,6 @@ void logindefs_load_file(const char *filename) +@@ -145,12 +154,6 @@ void logindefs_load_file(const char *fil fclose(f); } @@ -213,7 +213,7 @@ static void load_defaults(void) { if (logindefs_loader) -@@ -232,6 +235,156 @@ const char *getlogindefs_str(const char *name, const char *dflt) +@@ -232,6 +235,156 @@ const char *getlogindefs_str(const char return ptr->value; } @@ -252,7 +252,7 @@ + +void logindefs_load_file(const char *filename) +{ -+ econf_file *file_l, *file_m; ++ econf_file *file_l = NULL, *file_m = NULL; + char *path; + + logindefs_loader = NULL; /* No recursion */ @@ -314,10 +314,7 @@ + econf_errString(error)); + return dflt; + } -+ if (value == true) -+ return 0; -+ else -+ return 1; ++ return value; +} + +unsigned long getlogindefs_num(const char *name, unsigned long dflt) @@ -363,14 +360,17 @@ + econf_errString(error)); + return dflt; + } -+ return value; ++ if (value) ++ return value; ++ else ++ return strdup(""); +} +#endif /* !HAVE_LIBECONF */ + /* * For compatibility with shadow-utils we have to support additional * syntax for environment variables in login.defs(5) file. The standard -@@ -283,7 +436,6 @@ int effective_access(const char *path, int mode) +@@ -283,7 +436,6 @@ int effective_access(const char *path, i return fd == -1 ? -1 : 0; } @@ -378,28 +378,23 @@ /* * Check the per-account or the global hush-login setting. * -@@ -412,12 +564,33 @@ int main(int argc, char *argv[]) +@@ -412,12 +564,28 @@ int main(int argc, char *argv[]) logindefs_load_file(argv[1]); if (argc != 4) { /* list all */ +#ifdef HAVE_LIBECONF -+ econf_err error; -+ size_t key_number; -+ char **keys; -+ -+ if ((error = econf_getKeys(file, NULL, &key_number, &keys))) -+ errx(EXIT_FAILURE, "Couldn't list all keys: %s", -+ econf_errString(error)); ++ int i; ++ char *keys[] = {"END", "EMPTY", "CRAZY3", "CRAZY2", "CRAZY1", ++ "BOOLEAN", "NUMBER", "STRING", "HELLO_WORLD", ++ NULL}; + -+ for (size_t i = 0; i < key_number; i++) { ++ for (i = 0; keys[i] != NULL; i++) { + char *value = NULL; + + econf_getStringValue(file, NULL, keys[i], &value); -+ printf ("%s: $%s: '%s'\n", "logindefs.data", -+ keys[i], value); ++ printf ("%s: $%s: '%s'\n", argv[1], keys[i], value); + } + -+ econf_free (keys); + econf_free (file); + +#else @@ -413,11 +408,11 @@ return EXIT_SUCCESS; } -diff --git a/login-utils/su-common.c b/login-utils/su-common.c -index 4d91b22e4..57d584e55 100644 ---- a/login-utils/su-common.c -+++ b/login-utils/su-common.c -@@ -90,8 +90,13 @@ UL_DEBUG_DEFINE_MASKNAMES(su) = UL_DEBUG_EMPTY_MASKNAMES; +Index: util-linux-2.35.1/login-utils/su-common.c +=================================================================== +--- util-linux-2.35.1.orig/login-utils/su-common.c ++++ util-linux-2.35.1/login-utils/su-common.c +@@ -90,8 +90,13 @@ UL_DEBUG_DEFINE_MASKNAMES(su) = UL_DEBUG #define PAM_SRVNAME_RUNUSER "runuser" #define PAM_SRVNAME_RUNUSER_L "runuser-l" @@ -431,7 +426,7 @@ #define is_pam_failure(_rc) ((_rc) != PAM_SUCCESS) -@@ -1231,7 +1236,9 @@ static void load_config(void *data) +@@ -1038,7 +1043,9 @@ static void load_config(void *data) struct su_context *su = (struct su_context *) data; DBG(MISC, ul_debug("loading logindefs")); @@ -441,80 +436,3 @@ logindefs_load_file(su->runuser ? _PATH_LOGINDEFS_RUNUSER : _PATH_LOGINDEFS_SU); } - -From 8c8aaa3e022913fbfc54bae3a26fcd13ce3412bf Mon Sep 17 00:00:00 2001 -From: Thorsten Kukuk <[email protected]> -Date: Wed, 4 Sep 2019 14:59:25 +0200 -Subject: [PATCH 2/2] Adjust test output to pass test suite - ---- - login-utils/logindefs.c | 29 ++++++++++++----------------- - 1 file changed, 12 insertions(+), 17 deletions(-) - -diff --git a/login-utils/logindefs.c b/login-utils/logindefs.c -index 9075ad9e7..4fa2e9488 100644 ---- a/login-utils/logindefs.c -+++ b/login-utils/logindefs.c -@@ -270,7 +270,7 @@ static void load_defaults(void) - - void logindefs_load_file(const char *filename) - { -- econf_file *file_l, *file_m; -+ econf_file *file_l = NULL, *file_m = NULL; - char *path; - - logindefs_loader = NULL; /* No recursion */ -@@ -332,10 +332,7 @@ int getlogindefs_bool(const char *name, int dflt) - econf_errString(error)); - return dflt; - } -- if (value == true) -- return 0; -- else -- return 1; -+ return value; - } - - unsigned long getlogindefs_num(const char *name, unsigned long dflt) -@@ -381,7 +378,10 @@ const char *getlogindefs_str(const char *name, const char *dflt) - econf_errString(error)); - return dflt; - } -- return value; -+ if (value) -+ return value; -+ else -+ return strdup(""); - } - #endif /* !HAVE_LIBECONF */ - -@@ -565,23 +565,18 @@ int main(int argc, char *argv[]) - - if (argc != 4) { /* list all */ - #ifdef HAVE_LIBECONF -- econf_err error; -- size_t key_number; -- char **keys; -- -- if ((error = econf_getKeys(file, NULL, &key_number, &keys))) -- errx(EXIT_FAILURE, "Couldn't list all keys: %s", -- econf_errString(error)); -+ int i; -+ char *keys[] = {"END", "EMPTY", "CRAZY3", "CRAZY2", "CRAZY1", -+ "BOOLEAN", "NUMBER", "STRING", "HELLO_WORLD", -+ NULL}; - -- for (size_t i = 0; i < key_number; i++) { -+ for (i = 0; keys[i] != NULL; i++) { - char *value = NULL; - - econf_getStringValue(file, NULL, keys[i], &value); -- printf ("%s: $%s: '%s'\n", "logindefs.data", -- keys[i], value); -+ printf ("%s: $%s: '%s'\n", argv[1], keys[i], value); - } - -- econf_free (keys); - econf_free (file); - - #else ++++++ libmount-Avoid-triggering-autofs-in-lookup_umount_fs.patch ++++++ >From 7065cc0e5312cafc5ae3e4c342f78f264300fb5f Mon Sep 17 00:00:00 2001 From: Fabian Vogt <[email protected]> Date: Wed, 1 Apr 2020 13:15:13 +0200 Subject: [PATCH 1/4] libmount: Avoid triggering autofs in lookup_umount_fs_by_statfs References: boo#1168389 Upstream: merged (gh#karelzak/util-linux#1002) Currently, umount /foo results in a statfs("/foo") call, which triggers autofs. This can create another mountpoint on /foo, which is then unmounted later instead of the actual /foo at the time umount was called. This is especially an issue for umount -R /bar, which just fails with -EBUSY as the accidental mountpoint is never accounted for and so it tries to umount /bar before /bar/someautofs. Replace the direct statfs call with open(path, O_PATH) + fstatfs, which sees the autofs mount directly, without triggering it. --- libmount/src/context_umount.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) Index: util-linux-2.34/libmount/src/context_umount.c =================================================================== --- util-linux-2.34.orig/libmount/src/context_umount.c +++ util-linux-2.34/libmount/src/context_umount.c @@ -283,9 +283,13 @@ static int lookup_umount_fs(struct libmn if (!type) { struct statfs vfs; - DBG(CXT, ul_debugobj(cxt, "umount: trying statfs()")); - if (statfs(tgt, &vfs) == 0) + DBG(CXT, ul_debugobj(cxt, "umount: trying fstatfs()")); + /* O_PATH avoids triggering automount points. */ + int pathfd = open(tgt, O_PATH); + if (pathfd >= 0 && fstatfs(pathfd, &vfs) == 0) { type = mnt_statfs_get_fstype(&vfs); + close(pathfd); + } if (type) { rc = mnt_fs_set_fstype(cxt->fs, type); if (rc) ++++++ util-linux-2.34.tar.xz -> util-linux-2.35.1.tar.xz ++++++ ++++ 407086 lines of diff (skipped)
