Hello community,

here is the log from the commit of package syslogd for openSUSE:Factory checked 
in at 2012-02-24 12:06:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/syslogd (Old)
 and      /work/SRC/openSUSE:Factory/.syslogd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "syslogd", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/syslogd/syslogd.changes  2012-02-08 
15:35:02.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.syslogd.new/syslogd.changes     2012-02-24 
12:06:52.000000000 +0100
@@ -1,0 +2,16 @@
+Mon Feb 20 19:43:28 UTC 2012 - [email protected]
+
+- Detect if we have to use the new /run/systemd/journal/syslog
+  socket instead of the /dev/log under newer systemd versions.
+
+-------------------------------------------------------------------
+Mon Feb 20 12:25:12 UTC 2012 - [email protected]
+
+- syslog-service: Added SYSLOG_REQUIRES_NETWORK variable allowing
+  the user to configure (override) whether the syslog daemon config
+  requires network or can be started early. Default is to detect
+  it for syslogd and syslog-ng and to just start rsyslogd early
+  with its normal config. Removed the rsyslog.early.conf use as it
+  is usually not needed [enable on-disk queues] (bnc#728565).
+
+-------------------------------------------------------------------

New:
----
  sysklogd-1.4.1-systemd-sock-name.patch

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

Other differences:
------------------
++++++ syslogd.spec ++++++
--- /var/tmp/diff_new_pack.kxTOFB/_old  2012-02-24 12:06:54.000000000 +0100
+++ /var/tmp/diff_new_pack.kxTOFB/_new  2012-02-24 12:06:54.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package syslogd
 #
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -71,6 +71,7 @@
 Patch23:        sysklogd-1.4.1-reload.dif
 Patch24:        sysklogd-1.4.1-systemd.dif
 Patch25:        sysklogd-1.4.1-systemd-multi.dif
+Patch26:        sysklogd-1.4.1-systemd-sock-name.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 %{expand: %%global sysdsysunitdir %(pkg-config systemd 
--variable=systemdsystemunitdir)}
 %{expand: %%global sysdsysconfdir %(pkg-config systemd 
--variable=systemdsystemconfdir)}
@@ -162,6 +163,7 @@
 %patch23 -p0 -b .reload
 %patch24 -p0 -b .sd
 %patch25 -p0 -b .sd2
+%patch26 -p0 -b .sd3
 %patch0  -p0
 
 %build

++++++ rc.earlysyslog ++++++
--- /var/tmp/diff_new_pack.kxTOFB/_old  2012-02-24 12:06:54.000000000 +0100
+++ /var/tmp/diff_new_pack.kxTOFB/_new  2012-02-24 12:06:54.000000000 +0100
@@ -41,7 +41,7 @@
 case "$SYSLOG_DAEMON" in
     rsyslogd)
        syslog=rsyslogd
-       config=/etc/rsyslog.early.conf
+       config=/etc/rsyslog.conf
        ;;
     syslog-ng)
        syslog=syslog-ng
@@ -71,22 +71,41 @@
 
 case "$SYSLOG_DAEMON" in
     syslog-ng)
-       while read line ; do
-           case "$line" in
-               \#*|"") continue ;;
-               *udp\ *|*udp\(*) exit 0 ;;
-               *tcp\ *|*tcp\(*) exit 0 ;;
-           esac
-       done < ${config}
+       case ${SYSLOG_REQUIRES_NETWORK} in
+       yes)    exit 0 ;;
+       no)            ;;
+       "")
+           while read line ; do
+               case "$line" in
+                   \#*|"")     continue ;;
+                   *udp\ *|*udp\(*) exit 0 ;;
+                   *tcp\ *|*tcp\(*) exit 0 ;;
+               esac
+           done < ${config}
+           ;;
+       esac
+       ;;
+    rsyslogd)
+       # Network is usually not required for properly configured
+       # rsyslogd with enabled on-disk queues for remote logging,
+       # so we just start it with its normal configuration.
+       # "yes" allows the user to disable the early start.
+       case ${SYSLOG_REQUIRES_NETWORK} in
+       yes)    exit 0 ;;
+       no|"")         ;;
+       esac
        ;;
     *)
-       # in hope this works with the rsyslog.early.conf file
-       # (hard to implement for rsyslog with its includes/if
-       # statements)...
-       while read select action ; do
-           case "$select" in \#*|"") continue ;; esac
-           case "$action" in *@*)    exit 0   ;; esac
-       done < ${config}
+       case ${SYSLOG_REQUIRES_NETWORK} in
+       yes)    exit 0 ;;
+       no)            ;;
+       "")
+           while read select action ; do
+               case "$select" in \#*|"") continue ;; esac
+               case "$action" in *@*)    exit 0   ;; esac
+           done < ${config}
+           ;;
+       esac
        ;;
 esac
 

++++++ rc.syslog ++++++
--- /var/tmp/diff_new_pack.kxTOFB/_old  2012-02-24 12:06:54.000000000 +0100
+++ /var/tmp/diff_new_pack.kxTOFB/_new  2012-02-24 12:06:54.000000000 +0100
@@ -40,15 +40,11 @@
 case "$SYSLOG_DAEMON" in
     rsyslogd)
        syslog=rsyslogd
-       mkdir -p -m 0755 /var/run/rsyslog
-       if test "$2" = "early" ; then
-           config=/etc/rsyslog.early.conf
-       else
-           config=/etc/rsyslog.conf
-       fi
+       config=/etc/rsyslog.conf
        compat=${RSYSLOGD_COMPAT_VERSION:-${RSYSLOGD_NATIVE_VERSION}}
        params="-c ${compat:-3} -f $config $RSYSLOGD_PARAMS"
        rsocks="/var/run/rsyslog/additional-log-sockets.conf"
+       mkdir -p -m 0755 /var/run/rsyslog
        test -r "$config" && \
        while read one two rest ; do
            test "x$one" = 'x$ModLoad'  && \

++++++ sysconfig.syslog ++++++
--- /var/tmp/diff_new_pack.kxTOFB/_old  2012-02-24 12:06:54.000000000 +0100
+++ /var/tmp/diff_new_pack.kxTOFB/_new  2012-02-24 12:06:54.000000000 +0100
@@ -10,3 +10,21 @@
 # "syslogd", "syslog-ng", "rsyslogd" or "" for autodetect.
 #
 SYSLOG_DAEMON=""
+
+## Type:                list(yes,no,"")
+## Default:             ""
+## Config:              ""
+## ServiceRestart:      syslog
+#
+# Specify whether the syslog configuration requires network.
+# Set to "yes" to delay the syslog daemon start until network
+# is already started, set to "no" to start it earlier.
+#
+# The behavior of the default setting "" depends on the daemon
+# specified in the SYSLOG_DAEMON variable and on the current
+# implementation of the init / systemd scripts. It may cause
+# a try to detect whether network is required for the config
+# or choose one of the above modi.
+#
+SYSLOG_REQUIRES_NETWORK=""
+

++++++ sysklogd-1.4.1-systemd-sock-name.patch ++++++
--- syslogd.c
+++ syslogd.c   2012/02/20 19:41:22
@@ -558,6 +558,10 @@ static char sccsid[]  __attribute__ ((un
 #define _PATH_LOG      "/dev/log"
 #endif
 
+#ifndef SYSTEMD_PATH_LOG
+#define SYSTEMD_PATH_LOG "/run/systemd/journal/syslog"
+#endif
+
 char   *ConfFile = _PATH_LOGCONF;
 char   *PidFile = _PATH_LOGPID;
 char   ctty[] = _PATH_CONSOLE;
@@ -889,6 +893,15 @@ int main(argc, argv)
                funix[i]  = -1;
        }
 
+       /* systemd >= 38 wants we use /run/systemd/journal/syslog,
+        * instead of /dev/log, but allow to override it using -p */
+       if(sd_booted()) {
+               struct stat st;
+               if(stat(SYSTEMD_PATH_LOG, &st) != -1 && S_ISSOCK(st.st_mode)) {
+                       funixn[0] = SYSTEMD_PATH_LOG;
+               }
+       }
+
        while ((ch = getopt(argc, argv, "a:dhf:l:m:np:rs:tvS")) != EOF)
                switch((char)ch) {
                case 'a':
++++++ syslog-service-generator ++++++
--- /var/tmp/diff_new_pack.kxTOFB/_old  2012-02-24 12:06:54.000000000 +0100
+++ /var/tmp/diff_new_pack.kxTOFB/_new  2012-02-24 12:06:54.000000000 +0100
@@ -86,15 +86,22 @@
     config=/etc/syslog-ng/syslog-ng.conf
     socksdir=/var/run/syslog-ng
     socks=$socksdir/additional-log-sockets.conf
-    if test -s "$config" ; then
-       while read line ; do
-           case "$line" in
-           \#*|"") continue ;;
-           *udp\ *|*udp\(*) network=network.target ;;
-           *tcp\ *|*tcp\(*) network=network.target ;;
-           esac
-       done < ${config}
-    fi
+    case ${SYSLOG_REQUIRES_NETWORK} in
+       yes) network=network.target ;;
+       no)                         ;;
+       "") # OK, try to detect it; does not
+           # work with include files ...
+           if test -s "$config" ; then
+               while read line ; do
+                   case "$line" in
+                   \#*|"") continue ;;
+                   *udp\ *|*udp\(*) network=network.target ;;
+                   *tcp\ *|*tcp\(*) network=network.target ;;
+                   esac
+               done < ${config}
+           fi
+       ;;
+    esac
     if test -r "$config" ; then
        while read line; do
            case $line in
@@ -113,26 +120,13 @@
     config=/etc/rsyslog.conf
     socksdir=/var/run/rsyslog
     socks=$socksdir/additional-log-sockets.conf
-    #
-    # In hope this works with the rsyslog.early.conf file
-    # (hard to implement for rsyslog with its includes/if
-    # statements)...
-    #
-    if test -s "$config" ; then
-       while read select action ; do
-           case "$select" in
-           \#*|"")
-               continue
-           esac
-           case "$action" in
-           *@*)
-               network=network.target
-               break
-           esac
-       done < ${config}
-    else
-       config=/etc/rsyslog.early.conf
-    fi
+    # Network is usually not required for properly configured
+    # rsyslogd with enabled on-disk queues for remote logging,
+    # so we just start it with its normal configuration.
+    # "yes" allows the user to disable the early start.
+    case ${SYSLOG_REQUIRES_NETWORK} in
+       yes) network=network.target ;;
+    esac
     if test -r "$config" ; then
        while read one two rest ; do
            if test "$one" = '$ModLoad' -a "$two" = 'imklog.so' ; then
@@ -151,12 +145,19 @@
     config=/etc/syslog.conf
     socksdir=/var/run/syslog
     socks=$socksdir/additional-log-sockets.env
-    if test -s "$config" ; then
-       while read select action ; do
-           case "$select" in \#*|"") continue ;; esac
-           case "$action" in *@*)    network=network.target ;; esac
-       done < ${config}
-    fi
+    network=
+    case ${SYSLOG_REQUIRES_NETWORK} in
+       yes) network=network.target ;;
+       no)                         ;;
+       "") # Try to detect it
+           if test -s "$config" ; then
+               while read select action ; do
+                   case "$select" in \#*|"") continue ;; esac
+                   case "$action" in *@*)    network=network.target ;; esac
+               done < ${config}
+           fi
+       ;;
+    esac
     /bin/mkdir -p -m 0755 ${socksdir#/var}
     touch ${socks#/var}
     params="$SYSLOGD_PARAMS"


-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to