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)


Reply via email to