Hello community,

here is the log from the commit of package systemd for openSUSE:Factory checked 
in at 2018-01-17 21:43:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
 and      /work/SRC/openSUSE:Factory/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "systemd"

Wed Jan 17 21:43:54 2018 rev:268 rq:566373 version:234

Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes     2018-01-13 
21:34:43.158235092 +0100
+++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes        
2018-01-17 21:43:55.951585177 +0100
@@ -1,0 +2,22 @@
+Tue Jan 16 10:23:22 UTC 2018 - [email protected]
+
+- Import commit cc94ce8513221061898c83f57862544b16021f0e
+
+  aa3eba828 delta: don't ignore PREFIX when the given argument is PREFIX/SUFFIX
+  b1ea0173a delta: extend skip logic to work on full directory paths 
(prefix+suffix) (bsc#1070428)
+  77c5065f9 delta: check if a prefix needs to be skipped only once
+  db32866d1 Fix parsing of features in detect_vm_xen_dom0 (#7890) (bsc#1048510)
+  11d40461a sd-bus: use -- when passing arguments to ssh (#6706)
+  1148d99f6 tmpfiles: consider /etc uninitialized also when /etc/machine-id is 
present but empty (#7849) (bsc#1075179)
+  3a95f69bf tmpfiles: downgrade warning about duplicate line
+
+-------------------------------------------------------------------
+Fri Jan 12 12:27:52 UTC 2018 - [email protected]
+
+- Edit scripts-systemd-fix-machines-btrfs-subvol.sh
+
+  We shouldn't be creating a /var/lib/machines subvolume if /var is
+  already a seperate partition or subvolume. /var/lib/machines will
+  already be excluded from snapper & similar tooling in this case.
+
+-------------------------------------------------------------------
systemd.changes: same change

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
systemd.spec: same change
++++++ scripts-systemd-fix-machines-btrfs-subvol.sh ++++++
--- /var/tmp/diff_new_pack.pn2f7t/_old  2018-01-17 21:43:57.183527512 +0100
+++ /var/tmp/diff_new_pack.pn2f7t/_new  2018-01-17 21:43:57.183527512 +0100
@@ -75,6 +75,18 @@
 fi
 
 #
+# If there is already an entry in fstab for /var, it means that:
+#
+#   - the system has a seperate /var subvolume (default from Feb 2018)
+#   - the system has a seperate /var partition
+#
+# In any case we should exit
+#
+if mount --fake /var 2>/dev/null; then
+       exit
+fi
+
+#
 # If something is already mounted don't try to fix anything, it's been
 # done manually by the sysadmin.
 #

++++++ systemd-234.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/systemd-234/src/basic/virt.c 
new/systemd-234/src/basic/virt.c
--- old/systemd-234/src/basic/virt.c    2018-01-10 12:03:54.000000000 +0100
+++ new/systemd-234/src/basic/virt.c    2018-01-16 11:22:50.000000000 +0100
@@ -239,8 +239,8 @@
         if (r == 0) {
                 unsigned long features;
 
-                r = safe_atolu(domcap, &features);
-                if (r == 0) {
+                r = sscanf(domcap, "%lx", &features);
+                if (r == 1) {
                         r = !!(features & (1U << XENFEAT_dom0));
                         log_debug("Virtualization XEN, found %s with value 
%08lx, "
                                   "XENFEAT_dom0 (indicating the 'hardware 
domain') is%s set.",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/systemd-234/src/delta/delta.c 
new/systemd-234/src/delta/delta.c
--- old/systemd-234/src/delta/delta.c   2018-01-10 12:03:54.000000000 +0100
+++ new/systemd-234/src/delta/delta.c   2018-01-16 11:22:50.000000000 +0100
@@ -391,19 +391,28 @@
         return 0;
 }
 
-static int should_skip_prefix(const char* p) {
+static bool should_skip_path(const char *prefix, const char *suffix) {
 #ifdef HAVE_SPLIT_USR
-        int r;
         _cleanup_free_ char *target = NULL;
+        const char *p;
+        char *dirname;
 
-        r = chase_symlinks(p, NULL, 0, &target);
-        if (r < 0)
-                return r;
+        dirname = strjoina(prefix, "/", suffix);
 
-        return !streq(p, target) && nulstr_contains(prefixes, target);
-#else
-        return 0;
+        if (chase_symlinks(dirname, NULL, 0, &target) < 0)
+                return false;
+
+        NULSTR_FOREACH(p, prefixes) {
+                if (path_startswith(dirname, p))
+                        continue;
+
+                if (path_equal(target, strjoina(p, "/", suffix))) {
+                        log_debug("%s redirects to %s, skipping.", dirname, 
target);
+                        return true;
+                }
+        }
 #endif
+        return false;
 }
 
 static int process_suffix(const char *suffix, const char *onlyprefix) {
@@ -433,14 +442,8 @@
 
         NULSTR_FOREACH(p, prefixes) {
                 _cleanup_free_ char *t = NULL;
-                int skip;
 
-                skip = should_skip_prefix(p);
-                if (skip < 0) {
-                        r = skip;
-                        goto finish;
-                }
-                if (skip)
+                if (should_skip_path(p, suffix))
                         continue;
 
                 t = strjoin(p, "/", suffix);
@@ -519,19 +522,12 @@
         /* Strip prefix from the suffix */
         NULSTR_FOREACH(p, prefixes) {
                 const char *suffix;
-                int skip;
-
-                skip = should_skip_prefix(p);
-                if (skip < 0)
-                        return skip;
-                if (skip)
-                        continue;
 
                 suffix = startswith(arg, p);
                 if (suffix) {
                         suffix += strspn(suffix, "/");
                         if (*suffix)
-                                return process_suffix(suffix, NULL);
+                                return process_suffix(suffix, p);
                         else
                                 return process_suffixes(arg);
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/systemd-234/src/libsystemd/sd-bus/sd-bus.c 
new/systemd-234/src/libsystemd/sd-bus/sd-bus.c
--- old/systemd-234/src/libsystemd/sd-bus/sd-bus.c      2018-01-10 
12:03:54.000000000 +0100
+++ new/systemd-234/src/libsystemd/sd-bus/sd-bus.c      2018-01-16 
11:22:50.000000000 +0100
@@ -1344,7 +1344,7 @@
                         if (!e)
                                 return -ENOMEM;
 
-                        c = strjoina(",argv4=--machine=", m);
+                        c = strjoina(",argv5=--machine=", m);
                 }
         }
 
@@ -1354,7 +1354,7 @@
                         return -ENOMEM;
         }
 
-        b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=", e, 
",argv3=systemd-stdio-bridge", c);
+        b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=--,argv3=", e, 
",argv4=systemd-stdio-bridge", c);
         if (!b->address)
                 return -ENOMEM;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/systemd-234/src/tmpfiles/tmpfiles.c 
new/systemd-234/src/tmpfiles/tmpfiles.c
--- old/systemd-234/src/tmpfiles/tmpfiles.c     2018-01-10 12:03:54.000000000 
+0100
+++ new/systemd-234/src/tmpfiles/tmpfiles.c     2018-01-16 11:22:50.000000000 
+0100
@@ -180,12 +180,12 @@
 static int specifier_machine_id_safe(char specifier, void *data, void 
*userdata, char **ret) {
         int r;
 
-        /* If /etc/machine_id is missing (e.g. in a chroot environment), 
returns
-         * a recognizable error so that the caller can skip the rule
+        /* If /etc/machine_id is missing or empty (e.g. in a chroot 
environment)
+         * return a recognizable error so that the caller can skip the rule
          * gracefully. */
 
         r = specifier_machine_id(specifier, data, userdata, ret);
-        if (r == -ENOENT)
+        if (IN_SET(r, -ENOENT, -ENOMEDIUM))
                 return -ENOKEY;
 
         return r;
@@ -2133,8 +2133,8 @@
 
                 for (n = 0; n < existing->count; n++) {
                         if (!item_compatible(existing->items + n, &i)) {
-                                log_warning("[%s:%u] Duplicate line for path 
\"%s\", ignoring.",
-                                            fname, line, i.path);
+                                log_notice("[%s:%u] Duplicate line for path 
\"%s\", ignoring.",
+                                           fname, line, i.path);
                                 return 0;
                         }
                 }


Reply via email to