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]
