Hello community,

here is the log from the commit of package systemd for openSUSE:Factory checked 
in at 2014-05-10 08:32:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
 and      /work/SRC/openSUSE:Factory/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "systemd"

Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes     2014-05-06 
13:39:47.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes        
2014-05-10 08:32:42.000000000 +0200
@@ -1,0 +2,15 @@
+Wed May  7 10:42:27 UTC 2014 - [email protected]
+
+- Add patch parse-crypttab-for-noauto-option.patch from Thomas Blume
+  to handle the option 'noauto' in /etc/crypttab (bnc#742774)
+
+-------------------------------------------------------------------
+Wed May  7 09:23:01 UTC 2014 - [email protected]
+
+- Modify and extend patch 
+  0001-On_s390_con3270_disable_ANSI_colour_esc.patch
+  to have the correct terminal type used with agetty
+- Add patch 0001-tmpfiles-fix-permissions-on-new-journal-files.patch
+  to allow users to access systemd user journal (bnc#876694) 
+
+-------------------------------------------------------------------
systemd.changes: same change

New:
----
  0001-tmpfiles-fix-permissions-on-new-journal-files.patch
  parse-crypttab-for-noauto-option.patch

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

Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.bU5GPs/_old  2014-05-10 08:32:44.000000000 +0200
+++ /var/tmp/diff_new_pack.bU5GPs/_new  2014-05-10 08:32:44.000000000 +0200
@@ -403,6 +403,10 @@
 Patch205:       keep-crypt-password-prompt.patch
 # PATCH-FIX-UPSTREAM Fix uninitialized memory
 Patch206:       0001-sd-rtnl-message-append-fix-uninitialized-memory.patch
+# PATCH-FIX-UPSTREAM Make systemd user journal accessible by users (bnc#876694)
+Patch207:       0001-tmpfiles-fix-permissions-on-new-journal-files.patch
+# PATCH-FIX-SUSE Do not ignores option 'noauto' in /etc/crypttab (bnc#742774)
+Patch208:       parse-crypttab-for-noauto-option.patch
 
 # UDEV PATCHES
 # ============
@@ -792,6 +796,8 @@
 %patch204 -p1
 %patch205 -p1
 %patch206 -p0
+%patch207 -p0
+%patch208 -p1
 
 # udev patches
 %patch1001 -p1

++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.bU5GPs/_old  2014-05-10 08:32:44.000000000 +0200
+++ /var/tmp/diff_new_pack.bU5GPs/_new  2014-05-10 08:32:44.000000000 +0200
@@ -398,6 +398,10 @@
 Patch205:       keep-crypt-password-prompt.patch
 # PATCH-FIX-UPSTREAM Fix uninitialized memory
 Patch206:       0001-sd-rtnl-message-append-fix-uninitialized-memory.patch
+# PATCH-FIX-UPSTREAM Make systemd user journal accessible by users (bnc#876694)
+Patch207:       0001-tmpfiles-fix-permissions-on-new-journal-files.patch
+# PATCH-FIX-SUSE Do not ignores option 'noauto' in /etc/crypttab (bnc#742774)
+Patch208:       parse-crypttab-for-noauto-option.patch
 
 # UDEV PATCHES
 # ============
@@ -787,6 +791,8 @@
 %patch204 -p1
 %patch205 -p1
 %patch206 -p0
+%patch207 -p0
+%patch208 -p1
 
 # udev patches
 %patch1001 -p1

++++++ 0001-On_s390_con3270_disable_ANSI_colour_esc.patch ++++++
--- /var/tmp/diff_new_pack.bU5GPs/_old  2014-05-10 08:32:44.000000000 +0200
+++ /var/tmp/diff_new_pack.bU5GPs/_new  2014-05-10 08:32:44.000000000 +0200
@@ -1,9 +1,10 @@
 ---
- rules/99-systemd.rules.in |    2 -
- src/core/manager.c        |   24 +++++++++++---
- src/shared/util.c         |   77 
++++++++++++++++++++++++++++++++++++++++++++--
+ rules/99-systemd.rules.in |    2 
+ src/core/manager.c        |   24 ++++++++--
+ src/shared/util.c         |  101 
++++++++++++++++++++++++++++++++++++++++++++--
  src/shared/util.h         |    1 
- 4 files changed, 95 insertions(+), 9 deletions(-)
+ 4 files changed, 118 insertions(+), 10 deletions(-)
+
 
 --- systemd-208/rules/99-systemd.rules.in
 +++ systemd-208/rules/99-systemd.rules.in      2014-02-05 10:34:17.346235540 
+0000
@@ -151,13 +152,14 @@
          prev_ephemeral = ephemeral;
  
          if (status) {
-@@ -3169,12 +3209,43 @@ void columns_lines_cache_reset(int signu
+@@ -3169,12 +3209,47 @@ void columns_lines_cache_reset(int signu
  bool on_tty(void) {
          static int cached_on_tty = -1;
  
 -        if (_unlikely_(cached_on_tty < 0))
 +        if (_unlikely_(cached_on_tty < 0)) {
                  cached_on_tty = isatty(STDOUT_FILENO) > 0;
++#if defined (__s390__) || defined (__s390x__)
 +                if (cached_on_tty) {
 +                        const char *e = getenv("TERM");
 +                        if (!e)
@@ -169,6 +171,7 @@
 +                                        cached_on_tty = 0;
 +                        }
 +                }
++#endif
 +        }
  
          return cached_on_tty;
@@ -179,6 +182,7 @@
 +
 +        if (_unlikely_(cached_ansi_console < 0)) {
 +                cached_ansi_console = isatty(fd) > 0;
++#if defined (__s390__) || defined (__s390x__)
 +                if (cached_ansi_console) {
 +                        const char *e = getenv("TERM");
 +                        if (e && (streq(e, "dumb") || strneq(e, "ibm3", 4))) {
@@ -188,6 +192,7 @@
 +                                        cached_ansi_console = 0;
 +                        }
 +                }
++#endif
 +        }
 +
 +        return cached_ansi_console;
@@ -196,6 +201,33 @@
  int running_in_chroot(void) {
          struct stat a = {}, b = {};
  
+@@ -3630,7 +3705,25 @@ bool tty_is_vc_resolve(const char *tty)
+ const char *default_term_for_tty(const char *tty) {
+         assert(tty);
+ 
+-        return tty_is_vc_resolve(tty) ? "TERM=linux" : "TERM=vt102";
++        if (tty_is_vc_resolve(tty))
++                return "TERM=linux";
++
++        if (startswith(tty, "/dev/"))
++                tty += 5;
++
++#if defined (__s390__) || defined (__s390x__)
++        if (streq(tty, "ttyS0")) {
++                char *mode = NULL;
++                int r = parse_env_file("/proc/cmdline", WHITESPACE, 
"conmode", &mode, NULL);
++                if (r < 0 || !mode || !streq(mode, "3270"))
++                        return "TERM=dumb";
++                if (streq(mode, "3270"))
++                        return "TERM=ibm327x";
++        }
++        if (streq(tty, "ttyS1"))
++                return "TERM=vt220";
++#endif
++        return "TERM=vt102";
+ }
+ 
+ bool dirent_is_file(const struct dirent *de) {
 --- systemd-210/src/shared/util.h
 +++ systemd-210/src/shared/util.h      2014-04-30 10:24:51.134235665 +0000
 @@ -418,6 +418,7 @@ unsigned lines(void);

++++++ 0001-tmpfiles-fix-permissions-on-new-journal-files.patch ++++++
>From a606871da508995f5ede113a8fc6538afd98966c Mon Sep 17 00:00:00 2001
From: Greg KH <[email protected]>
Date: Tue, 15 Apr 2014 14:12:01 -0700
Subject: [PATCH] tmpfiles: fix permissions on new journal files

When starting up journald on a new system, set the proper permissions on
the system.journal files, not only on the journal directory.
---
 tmpfiles.d/systemd.conf |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git tmpfiles.d/systemd.conf tmpfiles.d/systemd.conf
index 7c6d6b9..c470045 100644
--- tmpfiles.d/systemd.conf
+++ tmpfiles.d/systemd.conf
@@ -23,6 +23,6 @@ d /run/systemd/machines 0755 root root -
 d /run/systemd/shutdown 0755 root root -
 
 m /var/log/journal 2755 root systemd-journal - -
-m /var/log/journal/%m 2755 root systemd-journal - -
+Z /var/log/journal/%m 2755 root systemd-journal - -
 m /run/log/journal 2755 root systemd-journal - -
-m /run/log/journal/%m 2755 root systemd-journal - -
+Z /run/log/journal/%m 2755 root systemd-journal - -
-- 
1.7.9.2

++++++ parse-crypttab-for-noauto-option.patch ++++++
---
 src/fstab-generator/fstab-generator.c |   52 ++++++++++++++++++++++++++++++++--
 1 file changed, 50 insertions(+), 2 deletions(-)

--- systemd-210/src/fstab-generator/fstab-generator.c
+++ systemd-210/src/fstab-generator/fstab-generator.c   2014-05-07 
09:15:01.003911151 +0000
@@ -37,6 +37,53 @@
 static const char *arg_dest = "/tmp";
 static bool arg_enabled = true;
 
+static int check_crypttab(const char *what) {
+        _cleanup_fclose_ FILE *f = NULL;
+        unsigned n = 0;
+        int r;
+
+        f = fopen("/etc/crypttab", "re");
+        if (!f) {
+                if (errno == ENOENT)
+                        r = EXIT_SUCCESS;
+                else
+                        log_error("Failed to open /etc/crypttab: %m");
+
+                return 1;
+        }
+
+
+        for (;;) {
+                char line[LINE_MAX], *l;
+                _cleanup_free_ char *name = NULL, *device = NULL, *password = 
NULL, *options = NULL;
+                int k;
+
+                if (!fgets(line, sizeof(line), f))
+                        break;
+
+                n++;
+
+                l = strstrip(line);
+                if (*l == '#' || *l == 0)
+                        continue;
+
+                k = sscanf(l, "%ms %ms %ms %ms", &name, &device, &password, 
&options);
+                if (k < 2 || k > 4) {
+                        log_error("Failed to parse /etc/crypttab:%u, 
ignoring.", n);
+                        continue;
+                }
+
+                if (strcmp((what + 12), name) == 0) {
+                        if (strstr(options, "noauto"))
+                                return 0;
+
+                        return 1;
+                }
+        }
+        return 1;
+}
+
+
 static int mount_find_pri(struct mntent *me, int *ret) {
         char *end, *pri;
         unsigned long r;
@@ -212,7 +259,7 @@
                 *name = NULL, *unit = NULL, *lnk = NULL,
                 *automount_name = NULL, *automount_unit = NULL;
         _cleanup_fclose_ FILE *f = NULL;
-        int r;
+        int r, c;
 
         assert(what);
         assert(where);
@@ -286,7 +333,8 @@
                 return -errno;
         }
 
-        if (!noauto) {
+        c = check_crypttab(what);
+        if (!noauto && (c != 0)) {
                 if (post) {
                         lnk = strjoin(arg_dest, "/", post, nofail || automount 
? ".wants/" : ".requires/", name, NULL);
                         if (!lnk)
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to