From 39261fbb5903f57b19fae2257ee756ac6c123753 Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Wed, 11 Apr 2018 11:29:42 +0000 Subject: [PATCH] - merged 3.14.1 from PLD --- man-paths.patch | 142 +++++++++++++++++++--------- no_shared_ivykis.patch | 11 +++ syslog-ng-datadir.patch | 41 +++----- syslog-ng-link.patch | 52 +++++++++++ syslog-ng-nolibs.patch | 11 --- syslog-ng-simple.conf | 11 ++- syslog-ng.conf | 9 +- syslog-ng.spec | 200 ++++++++++++++++++++++++++++++---------- 8 files changed, 342 insertions(+), 135 deletions(-) create mode 100644 no_shared_ivykis.patch create mode 100644 syslog-ng-link.patch diff --git a/man-paths.patch b/man-paths.patch index 703a6c3..13f0b97 100644 --- a/man-paths.patch +++ b/man-paths.patch @@ -1,67 +1,117 @@ ---- syslog-ng-3.4.3/doc/man.bak/loggen.1.xml 2013-08-13 12:24:20.000000000 +0300 -+++ syslog-ng-3.4.3/doc/man/loggen.1.xml 2013-09-30 21:42:33.729604012 +0300 -@@ -264,7 +264,7 @@ - +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/dqtool.1.xml syslog-ng-syslog-ng-3.12.1/doc/man/dqtool.1.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/dqtool.1.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/dqtool.1.xml 2017-11-02 15:38:22.086100359 +0100 +@@ -83,7 +83,7 @@ + Files -- /opt/syslog-ng/bin/loggen -+ /usr/bin/loggen +- /opt/syslog-ng/bin/dqtool ++ /usr/bin/dqtool - - ---- syslog-ng-3.4.3/doc/man.bak/pdbtool.1.xml 2013-08-13 12:24:20.000000000 +0300 -+++ syslog-ng-3.4.3/doc/man/pdbtool.1.xml 2013-09-30 21:42:33.729604012 +0300 -@@ -302,10 +302,10 @@ - + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/loggen.1.xml syslog-ng-syslog-ng-3.12.1/doc/man/loggen.1.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/loggen.1.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/loggen.1.xml 2017-11-02 15:38:22.086100359 +0100 +@@ -249,7 +249,7 @@ + Files -- /opt/syslog-ng/bin/pdbtool -+ /usr/bin/pdbtool +- /opt/syslog-ng/bin/loggen ++ /usr/bin/loggen + + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/pdbtool.1.xml syslog-ng-syslog-ng-3.12.1/doc/man/pdbtool.1.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/pdbtool.1.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/pdbtool.1.xml 2017-11-02 15:38:22.089433782 +0100 +@@ -425,10 +425,10 @@ + + Files + +- /opt/syslog-ng/ ++ /usr/share/ -- /opt/syslog-ng/etc/syslog-ng/syslog-ng.conf -+ /etc/syslog-ng/syslog-ng.conf +- /opt/syslog-ng/etc/syslog-ng.conf ++ //etc/syslog-ng/syslog-ng.conf - - ---- syslog-ng-3.4.3/doc/man.bak/syslog-ng-ctl.1.xml 2013-08-13 12:24:20.000000000 +0300 -+++ syslog-ng-3.4.3/doc/man/syslog-ng-ctl.1.xml 2013-09-30 21:42:33.729604012 +0300 -@@ -120,7 +120,7 @@ - + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng.8.xml syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng.8.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng.8.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng.8.xml 2017-11-02 15:38:22.089433782 +0100 +@@ -51,9 +51,9 @@ + + + For example: +- /opt/syslog-ng/sbin/syslog-ng -Fv --caps cap_sys_admin,cap_chown,cap_dac_override,cap_net_bind_service,cap_fowner=pi ++ /sbin/syslog-ng -Fv --caps cap_sys_admin,cap_chown,cap_dac_override,cap_net_bind_service,cap_fowner=pi + Note that the capabilities are not case sensitive, the following command is also good: +-/opt/syslog-ng/sbin/syslog-ng -Fv --caps CAP_SYS_ADMIN,CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_NET_BIND_SERVICE,CAP_FOWNER=pi ++/sbin/syslog-ng -Fv --caps CAP_SYS_ADMIN,CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_NET_BIND_SERVICE,CAP_FOWNER=pi + For details on the capability flags, see the following man pages: cap_from_text(3) and capabilities(7) + + +@@ -306,10 +306,10 @@ + Files -- /opt/syslog-ng/sbin/syslog-ng-ctl -+ /sbin/syslog-ng-ctl +- /opt/syslog-ng/ ++ /usr/share/ - - ---- syslog-ng-3.4.3/doc/man.bak/syslog-ng.8.xml 2013-08-13 12:24:20.000000000 +0300 -+++ syslog-ng-3.4.3/doc/man/syslog-ng.8.xml 2013-09-30 21:42:33.729604012 +0300 -@@ -236,10 +236,10 @@ - + +- /opt/syslog-ng/etc/syslog-ng.conf ++ //etc/syslog-ng/syslog-ng.conf + + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng.conf.5.xml syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng.conf.5.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng.conf.5.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng.conf.5.xml 2017-11-02 15:38:22.089433782 +0100 +@@ -427,10 +427,10 @@ + Files -- /opt/syslog-ng/ -+ /usr/share/syslog-ng +- /opt/syslog-ng/ ++ /usr/share/ -- /opt/syslog-ng/etc/syslog-ng.conf -+ /etc/syslog-ng.conf +- /opt/syslog-ng/etc/syslog-ng.conf ++ //etc/syslog-ng/syslog-ng.conf - - ---- syslog-ng-3.4.3/doc/man.bak/syslog-ng.conf.5.xml 2013-08-13 12:24:20.000000000 +0300 -+++ syslog-ng-3.4.3/doc/man/syslog-ng.conf.5.xml 2013-09-30 21:42:33.729604012 +0300 -@@ -408,10 +408,10 @@ - + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng-ctl.1.xml syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng-ctl.1.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng-ctl.1.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng-ctl.1.xml 2017-11-02 15:38:22.089433782 +0100 +@@ -139,7 +139,7 @@ + Files -- /opt/syslog-ng/ -+ /usr/share/syslog-ng/ +- /opt/syslog-ng/sbin/syslog-ng-ctl ++ /sbin/syslog-ng-ctl + + +diff -urN syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng-debun.1.xml syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng-debun.1.xml +--- syslog-ng-syslog-ng-3.12.1.org/doc/man/syslog-ng-debun.1.xml 2017-09-20 19:52:33.000000000 +0200 ++++ syslog-ng-syslog-ng-3.12.1/doc/man/syslog-ng-debun.1.xml 2017-11-02 15:38:22.089433782 +0100 +@@ -59,7 +59,7 @@ + -R <directory> + + +- The directory where is installed instead of /opt/syslog-ng. ++ The directory where is installed instead of /usr/share. + + + +@@ -211,7 +211,7 @@ + + Files -- /opt/syslog-ng/etc/syslog-ng.conf -+ /etc/syslog-ng/syslog-ng.conf +- /opt/syslog-ng/bin/loggen ++ /usr/bin/loggen - - + + diff --git a/no_shared_ivykis.patch b/no_shared_ivykis.patch new file mode 100644 index 0000000..2f6f5c4 --- /dev/null +++ b/no_shared_ivykis.patch @@ -0,0 +1,11 @@ +--- syslog-ng-syslog-ng-3.14.1.orig/lib/ivykis/configure.ac 2017-10-18 01:42:59.000000000 +0200 ++++ syslog-ng-syslog-ng-3.14.1/lib/ivykis/configure.ac 2018-03-30 15:58:09.000000000 +0200 +@@ -22,7 +22,7 @@ + esac + + # Checks for programs. +-LT_INIT ++LT_INIT([disable-shared]) + AC_PROG_CC + AC_PROG_LIBTOOL + diff --git a/syslog-ng-datadir.patch b/syslog-ng-datadir.patch index f8e59df..efdcf86 100644 --- a/syslog-ng-datadir.patch +++ b/syslog-ng-datadir.patch @@ -1,37 +1,24 @@ -diff -urNp syslog-ng-3.6.2.orig/lib/syslog-ng.h syslog-ng-3.6.2/lib/syslog-ng.h ---- syslog-ng-3.6.2.orig/lib/syslog-ng.h 2014-12-15 14:48:45.000000000 +0000 -+++ syslog-ng-3.6.2/lib/syslog-ng.h 2015-01-28 21:25:42.469000000 +0000 +FIXME: drop this patch and just fix PATH_LOCALSTATEDIR ? + + +--- syslog-ng-3.6.2/lib/syslog-ng.h~ 2014-12-15 16:48:45.000000000 +0200 ++++ syslog-ng-3.6.2/lib/syslog-ng.h 2015-06-01 08:04:18.542588343 +0300 @@ -42,7 +42,7 @@ - #if ENABLE_ENV_WRAPPER - #define PATH_SYSLOGNG PATH_LIBEXECDIR "/syslog-ng" + #if SYSLOG_NG_ENABLE_ENV_WRAPPER + #define PATH_SYSLOGNG SYSLOG_NG_PATH_LIBEXECDIR "/syslog-ng" #endif --#define PATH_PERSIST_CONFIG PATH_LOCALSTATEDIR "/syslog-ng.persist" +-#define PATH_PERSIST_CONFIG SYSLOG_NG_PATH_LOCALSTATEDIR "/syslog-ng.persist" +#define PATH_PERSIST_CONFIG "/var/lib/syslog-ng/syslog-ng.persist" - #define SAFE_STRING(x) ((x) ? (x) : "NULL") - -diff -urNp syslog-ng-3.6.2.orig/modules/dbparser/dbparser.h syslog-ng-3.6.2/modules/dbparser/dbparser.h ---- syslog-ng-3.6.2.orig/modules/dbparser/dbparser.h 2014-12-15 14:48:45.000000000 +0000 -+++ syslog-ng-3.6.2/modules/dbparser/dbparser.h 2015-01-28 21:26:58.719000000 +0000 -@@ -27,8 +27,8 @@ - #include "parser/parser-expr.h" - #include "patterndb.h" - --#define PATH_PATTERNDB_FILE PATH_LOCALSTATEDIR "/patterndb.xml" --#define PATH_XSDDIR PATH_DATADIR "/xsd" -+#define PATH_PATTERNDB_FILE "/var/lib/syslog-ng/patterndb.xml" -+#define PATH_XSDDIR "/var/lib/syslog-ng/xsd" - - typedef struct _LogDBParser LogDBParser; - -diff -urNp syslog-ng-3.6.2.orig/scripts/update-patterndb.in syslog-ng-3.6.2/scripts/update-patterndb.in ---- syslog-ng-3.6.2.orig/scripts/update-patterndb.in 2014-12-15 14:48:45.000000000 +0000 -+++ syslog-ng-3.6.2/scripts/update-patterndb.in 2015-01-28 21:24:20.398000000 +0000 -@@ -3,6 +3,6 @@ prefix=@prefix@ + typedef struct _LogPipe LogPipe; + typedef struct _LogMessage LogMessage; +--- syslog-ng-3.2.2/scripts/update-patterndb.in~ 2010-11-20 09:47:33.000000000 +0100 ++++ syslog-ng-3.2.2/scripts/update-patterndb.in 2011-01-27 20:43:14.656000204 +0100 +@@ -3,6 +3,6 @@ exec_prefix=@exec_prefix@ bindir=@bindir@ sysconfdir=@sysconfdir@ -localstatedir=@localstatedir@ +localstatedir=/var/lib/syslog-ng - ${bindir}/pdbtool merge -r --glob \*.pdb -D ${sysconfdir}/patterndb.d -p ${localstatedir}/patterndb.xml + ${bindir}/pdbtool merge -r --glob *.pdb -D ${sysconfdir}/patterndb.d -p ${localstatedir}/patterndb.xml diff --git a/syslog-ng-link.patch b/syslog-ng-link.patch new file mode 100644 index 0000000..9ae4190 --- /dev/null +++ b/syslog-ng-link.patch @@ -0,0 +1,52 @@ +diff -dur -x '*.orig' syslog-ng-syslog-ng-3.14.1.orig/configure.ac syslog-ng-syslog-ng-3.14.1/configure.ac +--- syslog-ng-syslog-ng-3.14.1.orig/configure.ac 2018-04-03 09:50:19.000000000 +0200 ++++ syslog-ng-syslog-ng-3.14.1/configure.ac 2018-04-03 09:51:38.000000000 +0200 +@@ -1639,9 +1639,9 @@ + # syslog-ng binary is linked with the default link command (e.g. libtool) + SYSLOGNG_LINK='$(LINK)' + else +- SYSLOGNG_DEPS_LIBS="$LIBS $BASE_LIBS $RESOLV_LIBS $LD_START_STATIC -Wl,${WHOLE_ARCHIVE_OPT} $GLIB_LIBS $EVTLOG_NO_LIBTOOL_LIBS $PCRE_LIBS $REGEX_LIBS -Wl,${NO_WHOLE_ARCHIVE_OPT} $IVYKIS_NO_LIBTOOL_LIBS $LD_END_STATIC $LIBCAP_LIBS $DL_LIBS " ++ SYSLOGNG_DEPS_LIBS="$LIBS $BASE_LIBS $RESOLV_LIBS $LD_START_STATIC -Wl,${WHOLE_ARCHIVE_OPT} $GLIB_LIBS $EVTLOG_NO_LIBTOOL_LIBS $PCRE_LIBS $REGEX_LIBS -Wl,${NO_WHOLE_ARCHIVE_OPT} $LD_END_STATIC $IVYKIS_LIBS $LIBCAP_LIBS $DL_LIBS " + TOOL_DEPS_LIBS="$LIBS $BASE_LIBS $GLIB_LIBS $EVTLOG_LIBS $RESOLV_LIBS $LIBCAP_LIBS $PCRE_LIBS $REGEX_LIBS $IVYKIS_LIBS $DL_LIBS" +- CORE_DEPS_LIBS="" ++ CORE_DEPS_LIBS="$IVYKIS_LIBS" + + # bypass libtool in case we want to do mixed linking because it + # doesn't support -Wl,-Bstatic -Wl,-Bdynamic on a per-library basis. +diff -dur -x '*.orig' syslog-ng-syslog-ng-3.14.1.orig/lib/logproto/tests/Makefile.am syslog-ng-syslog-ng-3.14.1/lib/logproto/tests/Makefile.am +--- syslog-ng-syslog-ng-3.14.1.orig/lib/logproto/tests/Makefile.am 2018-02-26 15:32:28.000000000 +0100 ++++ syslog-ng-syslog-ng-3.14.1/lib/logproto/tests/Makefile.am 2018-04-03 09:50:43.000000000 +0200 +@@ -22,7 +22,7 @@ + $(TEST_CFLAGS) \ + -I${top_srcdir}/libtest + lib_logproto_tests_test_findeom_LDADD = \ +- ${top_builddir}/lib/libsyslog-ng.la \ ++ $(TEST_LDADD) \ + ${top_builddir}/libtest/libsyslog-ng-test.a + lib_logproto_tests_test_findeom_SOURCES = \ + lib/logproto/tests/test_findeom.c +diff -dur -x '*.orig' syslog-ng-syslog-ng-3.14.1.orig/modules/diskq/Makefile.am syslog-ng-syslog-ng-3.14.1/modules/diskq/Makefile.am +--- syslog-ng-syslog-ng-3.14.1.orig/modules/diskq/Makefile.am 2018-02-26 15:32:28.000000000 +0100 ++++ syslog-ng-syslog-ng-3.14.1/modules/diskq/Makefile.am 2018-04-03 09:50:43.000000000 +0200 +@@ -46,8 +46,8 @@ + + modules_diskq_dqtool_SOURCES = modules/diskq/dqtool.c + modules_diskq_dqtool_LDADD = \ +- $(TOOL_DEPS_LIBS) \ + $(MODULE_DEPS_LIBS) \ ++ $(TOOL_DEPS_LIBS) \ + $(LIBSYSLOG_NG_DISK_BUFFER) + + modules/diskq modules/diskq/ mod-diskq: modules/diskq/libdisk-buffer.la \ +diff -dur -x '*.orig' syslog-ng-syslog-ng-3.14.1.orig/syslog-ng-ctl/Makefile.am syslog-ng-syslog-ng-3.14.1/syslog-ng-ctl/Makefile.am +--- syslog-ng-syslog-ng-3.14.1.orig/syslog-ng-ctl/Makefile.am 2018-02-26 15:32:28.000000000 +0100 ++++ syslog-ng-syslog-ng-3.14.1/syslog-ng-ctl/Makefile.am 2018-04-03 09:50:43.000000000 +0200 +@@ -10,5 +10,6 @@ + EXTRA_DIST += \ + syslog-ng-ctl/control-client-unix.c + +-syslog_ng_ctl_syslog_ng_ctl_LDADD = lib/libsyslog-ng.la @BASE_LIBS@ @GLIB_LIBS@ @RESOLV_LIBS@ +- ++syslog_ng_ctl_syslog_ng_ctl_DEPENDENCIES = lib/libsyslog-ng.la ++syslog_ng_ctl_syslog_ng_ctl_LDADD = -L${top_builddir}/lib/.libs -lsyslog-ng @SYSLOGNG_DEPS_LIBS@ ++syslog_ng_ctl_syslog_ng_ctl_LINK = @SYSLOGNG_LINK@ diff --git a/syslog-ng-nolibs.patch b/syslog-ng-nolibs.patch index 9f97ac7..0906f47 100644 --- a/syslog-ng-nolibs.patch +++ b/syslog-ng-nolibs.patch @@ -15,14 +15,3 @@ if test "x$enable_linux_caps" = "xyes" -o "x$enable_linux_caps" = "xauto"; then ---- syslog-ng-3.5.2/configure.ac~ 2013-12-01 22:52:03.000000000 +0100 -+++ syslog-ng-3.5.2/configure.ac 2013-12-01 23:02:32.955209559 +0100 -@@ -1145,7 +1145,7 @@ - else - SYSLOGNG_DEPS_LIBS="$LIBS $BASE_LIBS $RESOLV_LIBS $LD_START_STATIC -Wl,--whole-archive $GLIB_LIBS $EVTLOG_LIBS $PCRE_LIBS $REGEX_LIBS -Wl,--no-whole-archive $IVYKIS_NO_LIBTOOL_LIBS $LD_END_STATIC $LIBCAP_LIBS $DL_LIBS " - TOOL_DEPS_LIBS="$LIBS $BASE_LIBS $GLIB_LIBS $EVTLOG_LIBS $RESOLV_LIBS $LIBCAP_LIBS $PCRE_LIBS $REGEX_LIBS $IVYKIS_LIBS $DL_LIBS" -- CORE_DEPS_LIBS="" -+ CORE_DEPS_LIBS="$GLIB_LIBS $EVTLOG_LIBS $LIBCAP_LIBS $IVYKIS_LIBS" - - # bypass libtool in case we want to do mixed linking because it - # doesn't support -Wl,-Bstatic -Wl,-Bdynamic on a per-library basis. diff --git a/syslog-ng-simple.conf b/syslog-ng-simple.conf index f445656..48ba921 100644 --- a/syslog-ng-simple.conf +++ b/syslog-ng-simple.conf @@ -1,6 +1,6 @@ -@version: 3.6 +@version: 3.8 # -# Syslog-ng configuration for TLD Linux +# Syslog-ng configuration for PLD Linux # # See syslog-ng(8) and syslog-ng.conf(5) for more information. # @@ -23,7 +23,13 @@ options { source s_sys { file ("/proc/kmsg" program_override("kernel")); + unix-stream("/dev/log" max-connections(1000) log_iw_size(100000)); +# if using systemd, comment out the line above, and uncomment line below +# unix-dgram("/run/systemd/journal/syslog"); +# NOTE: if you are running under systemd and fixed config then you may need to manually fix /dev/log symlink: +# ln -s /run/systemd/journal/dev-log /dev/log +# internal(); }; @@ -32,6 +38,7 @@ destination d_messages { file("/var/log/messages"); }; destination d_kern { file("/var/log/kernel"); }; destination d_console_all { file("/dev/tty12"); }; +# if using systemd, an IP address instead of name may be required here #destination d_loghost { udp("loghost" port(514)); }; filter f_kern { facility(kern); }; diff --git a/syslog-ng.conf b/syslog-ng.conf index d71993c..1b5843a 100644 --- a/syslog-ng.conf +++ b/syslog-ng.conf @@ -1,7 +1,7 @@ -@version: 3.6 +@version: 3.12 @include "scl.conf" # -# Syslog-ng configuration for TLD Linux +# Syslog-ng configuration for PLD Linux # # See syslog-ng(8) and syslog-ng.conf(5) for more information. # @@ -23,6 +23,10 @@ options { }; source s_sys { +# NOTE: +# if you are running under systemd and just merged config then you may +# need to manually fix /dev/log symlink: +# # ln -s /run/systemd/journal/dev-log /dev/log system(); internal(); }; @@ -30,6 +34,7 @@ source s_sys { # uncomment the line below if you want to setup syslog server #source s_net { udp(); }; +# if using systemd, an IP address instead of name may be required here #destination d_loghost { udp("loghost" port(514)); }; destination d_kern { file("/var/log/kernel"); }; diff --git a/syslog-ng.spec b/syslog-ng.spec index b974237..6598bb2 100644 --- a/syslog-ng.spec +++ b/syslog-ng.spec @@ -2,48 +2,66 @@ # - switch to LTS version??? where??? # - relies on libs in /usr which is wrong # (well, for modules bringing additional functionality it's acceptable IMO --q) - +# - package python module # # Conditional build: %bcond_with dynamic # link dynamically with glib, eventlog, pcre (modules are always linked dynamically) %bcond_without sql # support for logging to SQL DB %bcond_without tests # do not perform "make check" +%bcond_without http # support for HTTP destination %bcond_without json # support for JSON template formatting %bcond_without mongodb # support for mongodb destination %bcond_without redis # support for Redis destination %bcond_without smtp # support for logging into SMTP %bcond_without geoip # support for GeoIP +%bcond_without geoip2 # support for GeoIP2 %bcond_without riemann # support for Riemann monitoring system +%bcond_without amqp # AMQP support +%bcond_with python # python module +%bcond_with java # java modules and support %bcond_without system_libivykis # use system libivykis -%bcond_with system_rabbitmq # use system librabbitmq [not supported yet] +%bcond_without system_rabbitmq # use system librabbitmq + +%if %{without amqp} +%undefine with_system_rabbitmq +%endif + +# as in git submodule +%define libivykis_version 0.42.2 %define glib2_ver 1:2.24.0 -%define mver 3.6 +%define mver 3.14 +%define docmver 3.14 Summary: Syslog-ng - new generation of the system logger Summary(pl.UTF-8): Syslog-ng - systemowy demon logujący nowej generacji Summary(pt_BR.UTF-8): Daemon de log nova geração Name: syslog-ng -Version: 3.6.4 -Release: 4 +Version: 3.14.1 +Release: 1 License: GPL v2+ with OpenSSL exception Group: Daemons -Source0: https://my.balabit.com/downloads/syslog-ng/open-source-edition/%{version}/source/%{name}_%{version}.tar.gz -# Source0-md5: e9f401615e92e5eb27396c995c1446ba +Source0: https://github.com/balabit/syslog-ng/archive/%{name}-%{version}.tar.gz +# Source0-md5: 60c58c5e50860c5b81afb6e80abb0a04 Source1: %{name}.init Source2: %{name}.conf Source3: %{name}.logrotate -Source4: http://www.balabit.com/support/documentation/syslog-ng-ose-%{mver}-guides/en/syslog-ng-ose-v%{mver}-guide-admin/pdf/%{name}-ose-v%{mver}-guide-admin.pdf -# Source4-md5: bb12c18aef655096987911c4a9fe3ffa +Source4: https://syslog-ng.com/documents/html/syslog-ng-ose-%{docmver}-guides/en/syslog-ng-ose-guide-admin/pdf/syslog-ng-ose-guide-admin.pdf +# Source4-md5: 4c22ec5a700f29d4d8dacb2d7c14797d Source5: %{name}-simple.conf +Source6: https://github.com/buytenh/ivykis/archive/v%{libivykis_version}/ivykis-%{libivykis_version}.tar.gz +# Source6-md5: aeafef422d8dafb84e1fcd16f9f4822e Patch0: %{name}-datadir.patch Patch1: cap_syslog-vserver-workaround.patch Patch2: %{name}-nolibs.patch Patch4: man-paths.patch -URL: https://www.balabit.com/network-security/syslog-ng/opensource-logging-system +Patch5: %{name}-link.patch +Patch6: no_shared_ivykis.patch +URL: https://syslog-ng.org/ %{?with_geoip:BuildRequires: GeoIP-devel >= 1.5.1} BuildRequires: autoconf >= 2.59 BuildRequires: automake BuildRequires: bison >= 2.4 +%{?with_http:BuildRequires: curl-devel} BuildRequires: docbook-style-xsl BuildRequires: eventlog-devel >= 0.2.12 %{?with_tests:BuildRequires: findutils} @@ -51,32 +69,38 @@ BuildRequires: flex BuildRequires: glib2-devel >= %{glib2_ver} %{?with_redis:BuildRequires: hiredis-devel} %{?with_json:BuildRequires: json-c-devel >= 0.9} +%{?with_mongodb:BuildRequires: libbson-devel} BuildRequires: libcap-devel %{?with_sql:BuildRequires: libdbi-devel >= 0.8.3-2} %{?with_smtp:BuildRequires: libesmtp-devel} -%{?with_system_libivykis:BuildRequires: libivykis-devel >= 0.36.1} -%{?with_mongodb:BuildRequires: libmongo-client-devel >= 0.1.8} +%{?with_system_libivykis:BuildRequires: libivykis-devel >= %{libivykis_version}} +%{?with_mongodb:BuildRequires: mongo-c-driver-devel} +%{?with_geoip2:BuildRequires: libmaxminddb-devel} BuildRequires: libnet-devel >= 1:1.1.2.1-3 BuildRequires: libtool >= 2:2.0 BuildRequires: libwrap-devel BuildRequires: libxslt-progs +BuildRequires: lz4-devel >= r131-5 BuildRequires: openssl-devel >= 0.9.8 BuildRequires: pcre-devel >= 6.1 BuildRequires: pkgconfig -%{?with_riemann:BuildRequires: protobuf-c-devel} %{?with_system_rabbitmq:BuildRequires: rabbitmq-c-devel >= 0.0.1} %{?with_riemann:BuildRequires: riemann-c-client-devel >= 1.0.0} BuildRequires: rpm >= 4.4.9-56 BuildRequires: rpmbuild(macros) >= 1.623 BuildRequires: which %if %{with tests} +BuildRequires: GeoIP-db-Country +BuildRequires: pylint BuildRequires: python +BuildRequires: python-pep8 +BuildRequires: python-ply BuildRequires: tzdata %endif %if %{without dynamic} BuildRequires: eventlog-static >= 0.2.12 BuildRequires: glib2-static >= %{glib2_ver} -%{?with_system_libivykis:BuildRequires: libivykis-static >= 0.36.1} +%{?with_system_libivykis:BuildRequires: libivykis-static >= %{libivykis_version}} BuildRequires: pcre-static >= 6.1 BuildRequires: zlib-static %endif @@ -86,6 +110,7 @@ Requires: %{name}-libs = %{version}-%{release} Requires: psmisc >= 20.1 %{?with_system_rabbitmq:Requires: rabbitmq-c >= 0.0.1} Requires: rc-scripts >= 0.4.3.0 +Requires: systemd-units >= 38 # for afsocket Requires: libnet >= 1:1.1.2.1-7 # for afsocket and dbparser @@ -95,6 +120,7 @@ Provides: service(syslog) Provides: syslogdaemon Obsoletes: syslog-ng-module-afsocket Obsoletes: syslog-ng-module-dbparser +Obsoletes: syslog-ng-systemd Conflicts: klogd Conflicts: msyslog Conflicts: rsyslog @@ -185,6 +211,18 @@ SQL destination support module for syslog-ng (via libdbi). Moduł sysloga-ng do obsługi zapisu logów w bazach SQL (poprzez libdbi). +%package module-http +Summary: HTTP destination support module for syslog-ng +Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description module-http +HTTP destination support module for syslog-ng (via libcurl). + +%description module-http -l pl.UTF-8 +Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP (via libcurl). + %package module-json-plugin Summary: JSON formatting template function for syslog-ng Summary(pl.UTF-8): Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON @@ -230,6 +268,7 @@ Summary: syslog-ng template function module to get GeoIP info from an IPv4 addre Summary(pl.UTF-8): Moduł funkcji szablonu sysloga-ng do pobierania informacji GeoIP z adresów IPv4 Group: Libraries Requires: %{name} = %{version}-%{release} +Requires: GeoIP-db-Country Requires: GeoIP-libs >= 1.5.1 %description module-tfgeoip @@ -247,7 +286,7 @@ Group: Libraries %if %{with dynamic} Requires: eventlog >= 0.2.12 Requires: glib2 >= %{glib2_ver} -%{?with_system_libivykis:Requires: libivykis >= 0.36.1} +%{?with_system_libivykis:Requires: libivykis >= 0.42} Requires: pcre >= 6.1 %endif Conflicts: syslog-ng < 3.3.1-3 @@ -266,7 +305,7 @@ Requires: %{name}-libs = %{version}-%{release} %if %{with dynamic} Requires: eventlog-devel >= 0.2.12 Requires: glib2-devel >= %{glib2_ver} -%{?with_system_libivykis:Requires: libivykis-devel >= 0.36.1} +%{?with_system_libivykis:Requires: libivykis-devel >= 0.42} Requires: pcre-devel >= 6.1 %endif @@ -277,23 +316,24 @@ Header files for syslog-ng modules development. Pliki nagłówkowe do tworzenia modułów dla sysloga-ng. %prep -%setup -q +%setup -q -n %{name}-%{name}-%{version} -a 6 + +rmdir lib/ivykis +mv ivykis-%{libivykis_version} lib/ivykis + %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch4 -p1 +%patch5 -p1 +%patch6 -p1 cp -p %{SOURCE4} doc cp -p %{SOURCE5} contrib/syslog-ng.conf.simple %{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk -# timestamp paring on x32 confuses glib2 testsuite -%ifarch x32 -%{__sed} -i -e '/tests\/unit\/test_msgparse/d' tests/unit/Makefile.am -%endif - %build -for i in . lib/ivykis; do +for i in . ; do cd $i %{__libtoolize} %{__aclocal} `[ -d m4 ] && echo '-I m4'` @@ -304,13 +344,15 @@ cd - done %configure \ --sysconfdir=%{_sysconfdir}/syslog-ng \ - --datadir=%{_datadir}/syslog-ng \ --disable-silent-rules \ --with-default-modules=affile,afprog,afsocket,afuser,basicfuncs,csvparser,dbparser,syslogformat \ --with-docbook=%{xsl_stylesheets_dir}/manpages/docbook.xsl \ + --enable-java%{!?with_java:=no} \ + --enable-java-modules%{!?with_java:=no} \ + --enable-python%{!?with_python:=no} \ %if %{with mongodb} --enable-mongodb \ - --with-libmongo-client=system \ + --with-mongoc=system \ %else --disable-mongodb \ %endif @@ -323,9 +365,10 @@ done --with-module-dir=%{moduledir} \ --with-pidfile-dir=/var/run \ --with-timezone-dir=%{_datadir}/zoneinfo \ - --disable-systemd \ - --enable-amqp \ - --enable-geoip%{!?with_geoip:=no} \ + %{__enable_disable amqp} \ + %{__enable_disable geoip} \ + %{__enable_disable geoip2} \ + --enable-http%{!?with_http:=no} \ --enable-ipv6 \ --enable-json%{!?with_json:=no} \ --enable-linux-caps \ @@ -337,6 +380,7 @@ done --enable-smtp%{!?with_smtp:=no} \ --enable-spoof-source \ --enable-ssl \ + --enable-systemd=no \ --enable-tcp-wrapper \ %if %{with sql} --enable-sql \ @@ -371,6 +415,12 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig,logrotate.d,rc.d/init.d} \ install -d $RPM_BUILD_ROOT%{slibdir} %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsyslog-ng-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng.so + +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libevtlog-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} +ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libevtlog-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libevtlog.so + +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so.* $RPM_BUILD_ROOT%{slibdir} +ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsecret-storage.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so %endif %{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng @@ -381,7 +431,10 @@ for n in cron daemon debug iptables kernel lpr maillog messages secure spooler s > $RPM_BUILD_ROOT/var/log/$n done touch $RPM_BUILD_ROOT/etc/sysconfig/%{name} +ln -s "%{name}" $RPM_BUILD_ROOT/etc/sysconfig/%{name}@default +%{__rm} $RPM_BUILD_ROOT%{_sbindir}/syslog-ng-debun +%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/syslog-ng-debun.1 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la %{__rm} $RPM_BUILD_ROOT%{moduledir}/*.la @@ -433,10 +486,11 @@ exit 0 %files %defattr(644,root,root,755) -%doc AUTHORS NEWS.md debian/syslog-ng.conf* contrib/relogger.pl +%doc AUTHORS NEWS.md contrib/relogger.pl %doc contrib/syslog-ng.conf.{doc,simple,RedHat} -%doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-v%{mver}-guide-admin.pdf +%doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-guide-admin.pdf %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} +%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}@default %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/scl.conf @@ -444,54 +498,80 @@ exit 0 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng %attr(754,root,root) /etc/rc.d/init.d/syslog-ng %dir %{moduledir} +%attr(755,root,root) %{moduledir}/libadd-contextual-data.so +%if %{with amqp} %attr(755,root,root) %{moduledir}/libafamqp.so +%endif %attr(755,root,root) %{moduledir}/libaffile.so %attr(755,root,root) %{moduledir}/libafprog.so %attr(755,root,root) %{moduledir}/libafsocket.so -%attr(755,root,root) %{moduledir}/libafsocket-notls.so -%attr(755,root,root) %{moduledir}/libafsocket-tls.so %attr(755,root,root) %{moduledir}/libafstomp.so %attr(755,root,root) %{moduledir}/libafuser.so +%attr(755,root,root) %{moduledir}/libappmodel.so %attr(755,root,root) %{moduledir}/libbasicfuncs.so +%attr(755,root,root) %{moduledir}/libcef.so %attr(755,root,root) %{moduledir}/libconfgen.so %attr(755,root,root) %{moduledir}/libcryptofuncs.so %attr(755,root,root) %{moduledir}/libcsvparser.so +%attr(755,root,root) %{moduledir}/libdate.so %attr(755,root,root) %{moduledir}/libdbparser.so +%attr(755,root,root) %{moduledir}/libdisk-buffer.so +%if %{with geoip2} +%attr(755,root,root) %{moduledir}/libgeoip2-plugin.so +%endif %attr(755,root,root) %{moduledir}/libgraphite.so +%attr(755,root,root) %{moduledir}/libkvformat.so %attr(755,root,root) %{moduledir}/liblinux-kmsg-format.so +%attr(755,root,root) %{moduledir}/libmap-value-pairs.so %attr(755,root,root) %{moduledir}/libpacctformat.so %attr(755,root,root) %{moduledir}/libpseudofile.so -%attr(755,root,root) %{moduledir}/libsyslog-ng-crypto.so +%attr(755,root,root) %{moduledir}/libsnmptrapd-parser.so +%attr(755,root,root) %{moduledir}/libstardate.so +%attr(755,root,root) %{moduledir}/libtags-parser.so +%attr(755,root,root) %{moduledir}/libtfgetent.so +%attr(755,root,root) %{moduledir}/libxml.so %attr(755,root,root) %{moduledir}/libsyslogformat.so %attr(755,root,root) %{moduledir}/libsystem-source.so %attr(755,root,root) %{_sbindir}/syslog-ng %attr(755,root,root) %{_sbindir}/syslog-ng-ctl +%attr(755,root,root) %{_bindir}/dqtool %attr(755,root,root) %{_bindir}/loggen %attr(755,root,root) %{_bindir}/pdbtool %attr(755,root,root) %{_bindir}/update-patterndb %dir %{_datadir}/syslog-ng/include %dir %{_datadir}/syslog-ng/include/scl -%dir %{_datadir}/syslog-ng/include/scl/graphite -%{_datadir}/syslog-ng/include/scl/graphite/README -%{_datadir}/syslog-ng/include/scl/graphite/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/nodejs -%{_datadir}/syslog-ng/include/scl/nodejs/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/pacct -%{_datadir}/syslog-ng/include/scl/pacct/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/rewrite -%{_datadir}/syslog-ng/include/scl/rewrite/cc-mask.conf +%{_datadir}/syslog-ng/include/scl/apache +%{_datadir}/syslog-ng/include/scl/default-network-drivers +%{_datadir}/syslog-ng/include/scl/elasticsearch +%{_datadir}/syslog-ng/include/scl/graphite +%{_datadir}/syslog-ng/include/scl/hdfs +%{_datadir}/syslog-ng/include/scl/kafka +%{_datadir}/syslog-ng/include/scl/iptables +%dir %{_datadir}/syslog-ng/include/scl/loadbalancer +%attr(755,root,root) %{_datadir}/syslog-ng/include/scl/loadbalancer/gen-loadbalancer.sh +%{_datadir}/syslog-ng/include/scl/loadbalancer/plugin.conf +%{_datadir}/syslog-ng/include/scl/loggly +%{_datadir}/syslog-ng/include/scl/logmatic +%{_datadir}/syslog-ng/include/scl/mbox +%{_datadir}/syslog-ng/include/scl/nodejs +%{_datadir}/syslog-ng/include/scl/osquery +%{_datadir}/syslog-ng/include/scl/pacct +%{_datadir}/syslog-ng/include/scl/rewrite +%{_datadir}/syslog-ng/include/scl/snmptrap +%{_datadir}/syslog-ng/include/scl/solaris +%{_datadir}/syslog-ng/include/scl/sudo +%{_datadir}/syslog-ng/include/scl/windowseventlog %dir %{_datadir}/syslog-ng/include/scl/syslogconf %{_datadir}/syslog-ng/include/scl/syslogconf/README %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk %{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/system -%{_datadir}/syslog-ng/include/scl/system/plugin.conf -%dir %{_datadir}/syslog-ng/xsd -%{_datadir}/syslog-ng/xsd/patterndb-*.xsd +%{_datadir}/syslog-ng/include/scl/system +%{_datadir}/syslog-ng/xsd %dir %{_var}/lib/%{name} %dir %{_var}/lib/%{name}/xsd +%{_mandir}/man1/dqtool.1* %{_mandir}/man1/loggen.1* %{_mandir}/man1/pdbtool.1* %{_mandir}/man1/syslog-ng-ctl.1* @@ -530,10 +610,20 @@ exit 0 %attr(755,root,root) %{moduledir}/libafsql.so %endif +%if %{with http} +%files module-http +%defattr(644,root,root,755) +%attr(755,root,root) %{moduledir}/libhttp.so +%endif + %if %{with json} %files module-json-plugin %defattr(644,root,root,755) %attr(755,root,root) %{moduledir}/libjson-plugin.so +%{_datadir}/syslog-ng/include/scl/cim +%{_datadir}/syslog-ng/include/scl/cisco +%{_datadir}/syslog-ng/include/scl/ewmm +%{_datadir}/syslog-ng/include/scl/graylog2 %endif %if %{with redis} @@ -551,34 +641,50 @@ exit 0 %if %{with geoip} %files module-tfgeoip %defattr(644,root,root,755) -%attr(755,root,root) %{moduledir}/libtfgeoip.so +%attr(755,root,root) %{moduledir}/libgeoip-plugin.so %endif %files libs %defattr(644,root,root,755) +%attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.*.*.* +%attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.0 +%attr(755,root,root) %{slibdir}/libsecret-storage.so.*.*.* +%attr(755,root,root) %{slibdir}/libsecret-storage.so.0 %attr(755,root,root) %{slibdir}/libsyslog-ng-%{mver}.so.*.*.* %attr(755,root,root) %ghost %{slibdir}/libsyslog-ng-%{mver}.so.0 %dir %{_datadir}/syslog-ng %files devel %defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/libevtlog.so +%attr(755,root,root) %{_libdir}/libsecret-storage.so %attr(755,root,root) %{_libdir}/libsyslog-ng.so +%{_libdir}/libsyslog-ng-native-connector.a %dir %{_includedir}/syslog-ng %{_includedir}/syslog-ng/*.h %{_includedir}/syslog-ng/compat %{_includedir}/syslog-ng/control +%{_includedir}/syslog-ng/debugger %{_includedir}/syslog-ng/filter %if %{without system_libivykis} %{_includedir}/syslog-ng/ivykis %endif +%{_includedir}/syslog-ng/logmsg %{_includedir}/syslog-ng/logproto +%dir %{_includedir}/syslog-ng/modules +%{_includedir}/syslog-ng/modules/add-contextual-data %{_includedir}/syslog-ng/parser %{_includedir}/syslog-ng/rewrite +%{_includedir}/syslog-ng/scanner %{_includedir}/syslog-ng/stats +%{_includedir}/syslog-ng/str-repr %{_includedir}/syslog-ng/template %{_includedir}/syslog-ng/transport +%{_includedir}/syslog-ng/value-pairs %{_datadir}/syslog-ng/tools %{_pkgconfigdir}/syslog-ng.pc +%{_pkgconfigdir}/syslog-ng-add-contextual-data.pc +%{_pkgconfigdir}/syslog-ng-native-connector.pc # test-devel ? %if "%{_libdir}/syslog-ng" != "{moduledir}" -- 2.46.0