From 4bff293a124ebc944728a6c6bea3452d14696832 Mon Sep 17 00:00:00 2001 From: Tomas Heinrich Date: Wed, 23 May 2012 18:50:31 +0200 Subject: [PATCH] upgrade to new upstream version 5.8.11 - add impstats and imptcp modules - include new license text files - consider lock file in 'status' action - add patch to update information on debugging in the man page - add patch to prevent debug output to stdout after forking - add patch to support ssl certificates with domain names longer than 128 chars --- .gitignore | 1 + rsyslog-5.8.11-close-fd1-when-forking.patch | 45 +++++++++++++++++ rsyslog-5.8.11-enlarge-cert-info-bufs.patch | 14 ++++++ rsyslog-5.8.11-manpage-dbg-mode.patch | 56 +++++++++++++++++++++ rsyslog.init | 2 +- rsyslog.spec | 26 ++++++++-- sources | 2 +- 7 files changed, 141 insertions(+), 5 deletions(-) create mode 100644 rsyslog-5.8.11-close-fd1-when-forking.patch create mode 100644 rsyslog-5.8.11-enlarge-cert-info-bufs.patch create mode 100644 rsyslog-5.8.11-manpage-dbg-mode.patch diff --git a/.gitignore b/.gitignore index 6a085af..affddc5 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ rsyslog-4.6.3.tar.gz /rsyslog-5.8.5.tar.gz /rsyslog-5.8.6.tar.gz /rsyslog-5.8.7.tar.gz +/rsyslog-5.8.11.tar.gz diff --git a/rsyslog-5.8.11-close-fd1-when-forking.patch b/rsyslog-5.8.11-close-fd1-when-forking.patch new file mode 100644 index 0000000..fecc945 --- /dev/null +++ b/rsyslog-5.8.11-close-fd1-when-forking.patch @@ -0,0 +1,45 @@ +diff -up rsyslog-5.8.11/runtime/debug.c.orig rsyslog-5.8.11/runtime/debug.c +--- rsyslog-5.8.11/runtime/debug.c.orig 2012-05-23 17:41:49.442845286 +0200 ++++ rsyslog-5.8.11/runtime/debug.c 2012-05-23 17:42:34.202282641 +0200 +@@ -68,7 +68,7 @@ static int bPrintAllDebugOnExit = 0; + static int bAbortTrace = 1; /* print a trace after SIGABRT or SIGSEGV */ + static char *pszAltDbgFileName = NULL; /* if set, debug output is *also* sent to here */ + static int altdbg = -1; /* and the handle for alternate debug output */ +-static int stddbg; ++int stddbg = 1; /* the handle for regular debug output, set to stdout if not forking, -1 otherwise */ + + /* list of files/objects that should be printed */ + typedef struct dbgPrintName_s { +@@ -1297,8 +1297,6 @@ dbgGetRuntimeOptions(void) + uchar *optname; + + /* set some defaults */ +- stddbg = 1; +- + if((pszOpts = (uchar*) getenv("RSYSLOG_DEBUG")) != NULL) { + /* we have options set, so let's process them */ + while(dbgGetRTOptNamVal(&pszOpts, &optname, &optval)) { +diff -up rsyslog-5.8.11/runtime/debug.h.orig rsyslog-5.8.11/runtime/debug.h +--- rsyslog-5.8.11/runtime/debug.h.orig 2012-05-23 17:41:53.392795633 +0200 ++++ rsyslog-5.8.11/runtime/debug.h 2012-05-23 17:42:34.203282628 +0200 +@@ -35,6 +35,7 @@ + /* external static data elements (some time to be replaced) */ + extern int Debug; /* debug flag - read-only after startup */ + extern int debugging_on; /* read-only, except on sig USR1 */ ++extern int stddbg; /* the handle for regular debug output, set to stdout if not forking, -1 otherwise */ + + /* data types */ + +diff -up rsyslog-5.8.11/tools/syslogd.c.orig rsyslog-5.8.11/tools/syslogd.c +--- rsyslog-5.8.11/tools/syslogd.c.orig 2012-05-03 13:52:27.000000000 +0200 ++++ rsyslog-5.8.11/tools/syslogd.c 2012-05-23 17:42:34.210282540 +0200 +@@ -2514,6 +2514,9 @@ doGlblProcessInit(void) + sigAct.sa_handler = doexit; + sigaction(SIGTERM, &sigAct, NULL); + ++ /* stop writing debug messages to stdout (if debugging is on) */ ++ stddbg = -1; ++ + if (fork()) { + /* Parent process + */ diff --git a/rsyslog-5.8.11-enlarge-cert-info-bufs.patch b/rsyslog-5.8.11-enlarge-cert-info-bufs.patch new file mode 100644 index 0000000..a53e272 --- /dev/null +++ b/rsyslog-5.8.11-enlarge-cert-info-bufs.patch @@ -0,0 +1,14 @@ +diff -up rsyslog-5.8.11/runtime/nsd_gtls.c.orig rsyslog-5.8.11/runtime/nsd_gtls.c +--- rsyslog-5.8.11/runtime/nsd_gtls.c.orig 2012-05-23 17:45:55.088757411 +0200 ++++ rsyslog-5.8.11/runtime/nsd_gtls.c 2012-05-23 17:46:34.949256350 +0200 +@@ -257,8 +257,8 @@ gtlsClientCertCallback(gnutls_session se + static rsRetVal + gtlsGetCertInfo(nsd_gtls_t *pThis, cstr_t **ppStr) + { +- char dn[128]; +- uchar lnBuf[256]; ++ char dn[256]; ++ uchar lnBuf[512]; + size_t size; + unsigned int algo, bits; + time_t expiration_time, activation_time; diff --git a/rsyslog-5.8.11-manpage-dbg-mode.patch b/rsyslog-5.8.11-manpage-dbg-mode.patch new file mode 100644 index 0000000..84dbae6 --- /dev/null +++ b/rsyslog-5.8.11-manpage-dbg-mode.patch @@ -0,0 +1,56 @@ +diff -up rsyslog-5.8.11/tools/rsyslogd.8.orig rsyslog-5.8.11/tools/rsyslogd.8 +--- rsyslog-5.8.11/tools/rsyslogd.8.orig 2012-05-23 17:40:17.370002681 +0200 ++++ rsyslog-5.8.11/tools/rsyslogd.8 2012-05-23 17:40:28.875858047 +0200 +@@ -145,11 +145,7 @@ compatibility-mode config file directive + simply copy them from your logfile and paste them to the config. + .TP + .B "\-d" +-Turns on debug mode. Using this the daemon will not proceed a +-.BR fork (2) +-to set itself in the background, but opposite to that stay in the +-foreground and write much debug information on the current tty. See the +-DEBUGGING section for more information. ++Turns on debug mode. See the DEBUGGING section for more information. + .TP + .BI "\-f " "config file" + Specify an alternative configuration file instead of +@@ -308,11 +304,17 @@ be prevented by using GSS-API authentica + to think about syslog network security before enabling it. + .LP + .SH DEBUGGING +-When debugging is turned on using ++When debugging is turned on using the + .B "\-d" +-option then ++option, + .B rsyslogd +-will be very verbose by writing much of what it does on stdout. ++produces debugging information according to the ++.B RSYSLOG_DEBUG ++environment variable and the signals received. When run in foreground, ++the information is written to stdout. An additional output file can be ++specified using the ++.B RSYSLOG_DEBUGLOG ++environment variable. + .SH FILES + .PD 0 + .TP +@@ -339,10 +341,17 @@ is specified during compilation (e.g. /u + .SH ENVIRONMENT + .TP + .B RSYSLOG_DEBUG +-Controls runtime debug support.It contains an option string with the ++Controls runtime debug support. It contains an option string with the + following options possible (all are case insensitive): + + .RS ++.IP Debug ++Turns on debugging and prevents forking. This is processed earlier ++in the startup than command line options (i.e. -d) and as such ++enables earlier debugging output. Mutually exclusive with DebugOnDemand. ++.IP DebugOnDemand ++Enables debugging but turns off debug output. The output can be toggled ++by sending SIGUSR1. Mutually exclusive with Debug. + .IP LogFuncFlow + Print out the logical flow of functions (entering and exiting them) + .IP FileTrace diff --git a/rsyslog.init b/rsyslog.init index 81fbceb..8a39add 100644 --- a/rsyslog.init +++ b/rsyslog.init @@ -55,7 +55,7 @@ stop() { return $RETVAL } rhstatus() { - status -p "${PIDFILE}" $exec + status -p "${PIDFILE}" -l $prog $exec } restart() { stop diff --git a/rsyslog.spec b/rsyslog.spec index 9c241c1..9a2e4fb 100644 --- a/rsyslog.spec +++ b/rsyslog.spec @@ -5,8 +5,8 @@ Summary: Enhanced system logging and kernel message trapping daemon Name: rsyslog -Version: 5.8.7 -Release: 2%{?dist} +Version: 5.8.11 +Release: 1%{?dist} License: (GPLv3+ and ASL 2.0) Group: System Environment/Daemons URL: http://www.rsyslog.com/ @@ -19,6 +19,9 @@ Source4: rsyslog.log Patch0: rsyslog-5.8.5-systemd.patch Patch1: rsyslog-5.8.7-sysklogd-compat-1-template.patch Patch2: rsyslog-5.8.7-sysklogd-compat-2-option.patch +Patch3: rsyslog-5.8.11-manpage-dbg-mode.patch +Patch4: rsyslog-5.8.11-close-fd1-when-forking.patch +Patch5: rsyslog-5.8.11-enlarge-cert-info-bufs.patch BuildRequires: zlib-devel BuildRequires: systemd-units >= 18 @@ -143,6 +146,9 @@ of source ports. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build %ifarch sparc64 @@ -158,6 +164,8 @@ export LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now" --enable-gnutls \ --enable-gssapi-krb5 \ --enable-imfile \ + --enable-impstats \ + --enable-imptcp \ --enable-libdbi \ --enable-mail \ --enable-mysql \ @@ -242,11 +250,13 @@ mv /var/lock/subsys/rsyslogd /var/lock/subsys/rsyslog %files %defattr(-,root,root,-) -%doc AUTHORS COPYING NEWS README ChangeLog doc/*html +%doc AUTHORS COPYING* NEWS README ChangeLog doc/*html %dir %{_libdir}/rsyslog %{_libdir}/rsyslog/imfile.so %{_libdir}/rsyslog/imklog.so %{_libdir}/rsyslog/immark.so +%{_libdir}/rsyslog/impstats.so +%{_libdir}/rsyslog/imptcp.so %{_libdir}/rsyslog/imtcp.so %{_libdir}/rsyslog/imudp.so %{_libdir}/rsyslog/imuxsock.so @@ -316,6 +326,16 @@ mv /var/lock/subsys/rsyslogd /var/lock/subsys/rsyslog %{_libdir}/rsyslog/omudpspoof.so %changelog + +* Wed May 23 2012 Tomas Heinrich 5.8.11-1 +- upgrade to new upstream stable version 5.8.11 +- add impstats and imptcp modules +- include new license text files +- consider lock file in 'status' action +- add patch to update information on debugging in the man page +- add patch to prevent debug output to stdout after forking +- add patch to support ssl certificates with domain names longer than 128 chars + * Fri Mar 30 2012 Jon Ciesla 5.8.7-2 - libnet rebuild. diff --git a/sources b/sources index 0fa6de8..eefb40b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d806a91de534d6e33d7d1c1138cfdd37 rsyslog-5.8.7.tar.gz +0e5ea5228310bebc0f9f6ddf0c3f5a84 rsyslog-5.8.11.tar.gz