summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/syslog-ng')
-rw-r--r--app-admin/syslog-ng/Manifest3
-rw-r--r--app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo37
-rw-r--r--app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.fbsd25
-rw-r--r--app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.hardened115
-rw-r--r--app-admin/syslog-ng/files/3.4/syslog-ng.confd42
-rw-r--r--app-admin/syslog-ng/files/3.4/syslog-ng.rc659
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng-3.6.2-redis.patch29
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo37
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.fbsd25
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.hardened115
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng.confd42
-rw-r--r--app-admin/syslog-ng/files/3.6/syslog-ng.rc659
-rw-r--r--app-admin/syslog-ng/files/README.hardened13
-rw-r--r--app-admin/syslog-ng/files/syslog-ng.logrotate13
-rw-r--r--app-admin/syslog-ng/files/syslog-ng.logrotate.hardened76
-rw-r--r--app-admin/syslog-ng/files/syslog-ng.logrotate.hardened.in76
-rw-r--r--app-admin/syslog-ng/files/syslog-ng.logrotate.in13
-rw-r--r--app-admin/syslog-ng/metadata.xml17
-rw-r--r--app-admin/syslog-ng/syslog-ng-3.4.8.ebuild120
-rw-r--r--app-admin/syslog-ng/syslog-ng-3.6.2.ebuild124
-rw-r--r--app-admin/syslog-ng/syslog-ng-3.6.4.ebuild124
21 files changed, 1164 insertions, 0 deletions
diff --git a/app-admin/syslog-ng/Manifest b/app-admin/syslog-ng/Manifest
new file mode 100644
index 000000000000..36b48cc94840
--- /dev/null
+++ b/app-admin/syslog-ng/Manifest
@@ -0,0 +1,3 @@
+DIST syslog-ng_3.4.8.tar.gz 3169372 SHA256 96c2f970fbba4fdd7659b1fee5e476d2858c911d4304d42099f495493762ff49 SHA512 23ba9908664e594c186cbe4bd5dcfb5d2ed3faf02ec45b931bb91b078660547989c2340a08b478a33adb530d39a6d6f39a2e7519107a3f6b923ac9f39529620e WHIRLPOOL 1085fa2c90e0c85421c64ed50e8a357f29006afea2f3e329e42d1e27f4210a10fe0f05d4af95a11c245d68b43644a4a829a50c05b7d541f59a6f580b3643b434
+DIST syslog-ng_3.6.2.tar.gz 3207456 SHA256 ef47fada52981e09af570457a5af30f815f5d5b6c2e33754cedd4ca9780d8261 SHA512 15603b4df2001e1ce7e0019d0dd9a0f4295445e3fd19a527ebf3d49486da7da27fac6c465727ec0354f8f70ca0f671a285ec132f9aa0de62b40f18b44af2a226 WHIRLPOOL 7135db242374d6e5789c0820a06187b7e325054fd214e3aee75aac5b8dde56786b432cc4519c07ce0cd413c3a560e8e74ee6eca319c21eaa750ca8140ef1b63f
+DIST syslog-ng_3.6.4.tar.gz 3276432 SHA256 7be11df31ac7d716f1f952e22b5ae8e2049edd633a41b223776a853d9106f4e7 SHA512 9c648628b9bd3ebb25bc44fa6586e88a4b9ed7c24b1c337569d3cccb04bf2f427ba1218900f8dfd8f668f245d6ab44ad45b67da661b7c2af68c6c42101b722e1 WHIRLPOOL 496a9b2e06e33b0c42726f3b13f859f356f136367c48363cd22b086b72f4f54a32cc057235636f2d2ea3ad7bdd622354ea67df1cbc770be608a84bc861fce93d
diff --git a/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo
new file mode 100644
index 000000000000..21ec3ae68599
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo
@@ -0,0 +1,37 @@
+@version: 3.4
+# $Id$
+#
+# Syslog-ng default configuration file for Gentoo Linux
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+
+ # The default action of syslog-ng is to log a STATS line
+ # to the file every 10 minutes. That's pretty ugly after a while.
+ # Change it to every 12 hours so you get a nice daily update of
+ # how many messages syslog-ng missed (0).
+ stats_freq(43200);
+ # The default action of syslog-ng is to log a MARK line
+ # to the file every 20 minutes. That's seems high for most
+ # people so turn it down to once an hour. Set it to zero
+ # if you don't want the functionality at all.
+ mark_freq(3600);
+};
+
+source src { system(); internal(); };
+
+destination messages { file("/var/log/messages"); };
+
+# By default messages are logged to tty12...
+destination console_all { file("/dev/tty12"); };
+# ...if you intend to use /dev/console for programs like xconsole
+# you can comment out the destination line above that references /dev/tty12
+# and uncomment the line below.
+#destination console_all { file("/dev/console"); };
+
+log { source(src); destination(messages); };
+log { source(src); destination(console_all); };
diff --git a/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.fbsd b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.fbsd
new file mode 100644
index 000000000000..caa8e6faa157
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.fbsd
@@ -0,0 +1,25 @@
+@version: 3.4
+# $Id$
+#
+# Syslog-ng default configuration file for Gentoo FreeBSD
+#
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+
+ # The default action of syslog-ng is to log a STATS line
+ # to the file every 10 minutes. That's pretty ugly after a while.
+ # Change it to every 12 hours so you get a nice daily update of
+ # how many messages syslog-ng missed (0).
+ stats_freq(43200);
+};
+
+source src { system(); internal(); };
+
+destination messages { file("/var/log/messages"); };
+
+log { source(src); destination(messages); };
diff --git a/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.hardened b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.hardened
new file mode 100644
index 000000000000..545be3314ea8
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.4/syslog-ng.conf.gentoo.hardened
@@ -0,0 +1,115 @@
+@version: 3.4
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+#
+# Syslog-ng configuration file, compatible with default hardened installations.
+#
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+ stats_freq(43200);
+};
+
+source src {
+ unix-dgram("/dev/log");
+ internal();
+};
+source kernsrc {
+ file("/proc/kmsg");
+};
+
+#source net { udp(); };
+#log { source(net); destination(net_logs); };
+#destination net_logs { file("/var/log/HOSTS/$HOST/$YEAR$MONTH$DAY.log"); };
+
+destination authlog { file("/var/log/auth.log"); };
+destination _syslog { file("/var/log/syslog"); };
+destination cron { file("/var/log/cron.log"); };
+destination daemon { file("/var/log/daemon.log"); };
+destination kern { file("/var/log/kern.log"); file("/dev/tty12"); };
+destination lpr { file("/var/log/lpr.log"); };
+destination user { file("/var/log/user.log"); };
+destination uucp { file("/var/log/uucp.log"); };
+#destination ppp { file("/var/log/ppp.log"); };
+destination mail { file("/var/log/mail.log"); };
+
+destination avc { file("/var/log/avc.log"); };
+destination audit { file("/var/log/audit.log"); };
+destination pax { file("/var/log/pax.log"); };
+destination grsec { file("/var/log/grsec.log"); };
+
+destination mailinfo { file("/var/log/mail.info"); };
+destination mailwarn { file("/var/log/mail.warn"); };
+destination mailerr { file("/var/log/mail.err"); };
+
+destination newscrit { file("/var/log/news/news.crit"); };
+destination newserr { file("/var/log/news/news.err"); };
+destination newsnotice { file("/var/log/news/news.notice"); };
+
+destination debug { file("/var/log/debug"); };
+destination messages { file("/var/log/messages"); };
+destination console { usertty("root"); };
+destination console_all { file("/dev/tty12"); };
+#destination loghost { udp("loghost" port(999)); };
+
+destination xconsole { pipe("/dev/xconsole"); };
+
+filter f_auth { facility(auth); };
+filter f_authpriv { facility(auth, authpriv); };
+filter f_syslog { not facility(authpriv, mail); };
+filter f_cron { facility(cron); };
+filter f_daemon { facility(daemon); };
+filter f_kern { facility(kern); };
+filter f_lpr { facility(lpr); };
+filter f_mail { facility(mail); };
+filter f_user { facility(user); };
+filter f_uucp { facility(uucp); };
+#filter f_ppp { facility(ppp); };
+filter f_news { facility(news); };
+filter f_debug { not facility(auth, authpriv, news, mail); };
+filter f_messages { level(info..warn)
+ and not facility(auth, authpriv, mail, news); };
+filter f_emergency { level(emerg); };
+
+filter f_info { level(info); };
+
+filter f_notice { level(notice); };
+filter f_warn { level(warn); };
+filter f_crit { level(crit); };
+filter f_err { level(err); };
+
+filter f_avc { message(".*avc: .*"); };
+filter f_audit { message("^(\\[.*\..*\] |)audit.*") and not message(".*avc: .*"); };
+filter f_pax { message("^(\\[.*\..*\] |)PAX:.*"); };
+filter f_grsec { message("^(\\[.*\..*\] |)grsec:.*"); };
+
+log { source(src); filter(f_authpriv); destination(authlog); };
+log { source(src); filter(f_syslog); destination(_syslog); };
+log { source(src); filter(f_cron); destination(cron); };
+log { source(src); filter(f_daemon); destination(daemon); };
+log { source(kernsrc); filter(f_kern); destination(kern); };
+log { source(src); filter(f_lpr); destination(lpr); };
+log { source(src); filter(f_mail); destination(mail); };
+log { source(src); filter(f_user); destination(user); };
+log { source(src); filter(f_uucp); destination(uucp); };
+log { source(kernsrc); filter(f_pax); destination(pax); };
+log { source(kernsrc); filter(f_grsec); destination(grsec); };
+log { source(kernsrc); filter(f_audit); destination(audit); };
+log { source(kernsrc); filter(f_avc); destination(avc); };
+log { source(src); filter(f_mail); filter(f_info); destination(mailinfo); };
+log { source(src); filter(f_mail); filter(f_warn); destination(mailwarn); };
+log { source(src); filter(f_mail); filter(f_err); destination(mailerr); };
+log { source(src); filter(f_news); filter(f_crit); destination(newscrit); };
+log { source(src); filter(f_news); filter(f_err); destination(newserr); };
+log { source(src); filter(f_news); filter(f_notice); destination(newsnotice); };
+log { source(src); filter(f_debug); destination(debug); };
+log { source(src); filter(f_messages); destination(messages); };
+log { source(src); filter(f_emergency); destination(console); };
+#log { source(src); filter(f_ppp); destination(ppp); };
+log { source(src); destination(console_all); };
diff --git a/app-admin/syslog-ng/files/3.4/syslog-ng.confd b/app-admin/syslog-ng/files/3.4/syslog-ng.confd
new file mode 100644
index 000000000000..6a437d1bf36f
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.4/syslog-ng.confd
@@ -0,0 +1,42 @@
+# Config file for /etc/init.d/syslog-ng
+
+# If you are not using network logging, this entire section should be
+# commented out. Otherwise, choose one of the settings below based on
+# how you are configuring your network.
+#
+# If you are using the net.* scripts to configure your network, you should
+# set rc_need to match the interface through which your logging server
+# can be reached.
+#rc_need="net.eth0"
+#
+# If you are using an interface manager like wicd, dhcpcd in standalone
+# mode, networkmanager, etc to control your interfaces, set rc_need to
+# the name of that service.
+# rc_need="dhcpcd"
+#rc_need="networkmanager"
+#
+# If you are using newnet and configuring your interface statically with
+# the network script, you should use this setting.
+#rc_need="network"
+#
+# You can use this setting, but I do not recommend relying on it.
+#rc_need="net"
+#
+# You may also want to uncomment the following if you are using network
+# logging.
+#rc_use="stunnel"
+
+# For very customized setups these variables can be adjusted as needed
+# but for most situations they should remain commented:
+# SYSLOG_NG_CONFIGFILE=/etc/syslog-ng/syslog-ng.conf
+# SYSLOG_NG_STATEFILE_DIR=/var/lib/syslog-ng
+# SYSLOG_NG_STATEFILE=${SYSLOG_NG_STATEFILE_DIR}/syslog-ng.persist
+# SYSLOG_NG_PIDFILE_DIR=/var/run
+# SYSLOG_NG_PIDFILE=${SYSLOG_NG_PIDFILE_DIR}/syslog-ng.pid
+# SYSLOG_NG_GROUP=root
+# SYSLOG_NG_USER=root
+
+# Put any additional options for syslog-ng here.
+# See syslog-ng(8) for more information.
+
+SYSLOG_NG_OPTS=""
diff --git a/app-admin/syslog-ng/files/3.4/syslog-ng.rc6 b/app-admin/syslog-ng/files/3.4/syslog-ng.rc6
new file mode 100644
index 000000000000..b9ccbe3b2054
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.4/syslog-ng.rc6
@@ -0,0 +1,59 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+SYSLOG_NG_CONFIGFILE=${SYSLOG_NG_CONFIGFILE:-/etc/syslog-ng/${RC_SVCNAME}.conf}
+SYSLOG_NG_STATEFILE_DIR=${SYSLOG_NG_STATEFILE_DIR:-/var/lib/syslog-ng}
+SYSLOG_NG_STATEFILE=${SYSLOG_NG_STATEFILE:-${SYSLOG_NG_STATEFILE_DIR}/syslog-ng.persist}
+SYSLOG_NG_PIDFILE_DIR=${SYSLOG_NG_PIDFILE_DIR:-/var/run}
+SYSLOG_NG_PIDFILE=${SYSLOG_NG_PIDFILE:-${SYSLOG_NG_PIDFILE_DIR}/${RC_SVCNAME}.pid}
+
+SYSLOG_NG_GROUP=${SYSLOG_NG_GROUP:-root}
+SYSLOG_NG_USER=${SYSLOG_NG_USER:-root}
+
+command="/usr/sbin/syslog-ng"
+command_args="--persist-file \"${SYSLOG_NG_STATEFILE}\" --cfgfile \"${SYSLOG_NG_CONFIGFILE}\" --pidfile \"${SYSLOG_NG_PIDFILE}\" ${SYSLOG_NG_OPTS}"
+extra_commands="checkconfig"
+extra_started_commands="reload"
+pidfile="${SYSLOG_NG_PIDFILE}"
+start_stop_daemon_args="--user \"${SYSLOG_NG_USER}\":\"${SYSLOG_NG_GROUP}\""
+description="Syslog-ng is a syslog replacement with advanced filtering features."
+description_checkconfig="Check the configuration file that will be used by \"start\""
+description_reload="Reload the configuration without exiting"
+required_files="${SYSLOG_NG_CONFIGFILE}"
+required_dirs="${SYSLOG_NG_PIDFILE_DIR}"
+
+depend() {
+ use clock
+ need hostname localmount
+ after bootmisc
+ provide logger
+}
+
+checkconfig() {
+ ebegin "Checking your configfile (${SYSLOG_NG_CONFIGFILE})"
+ syslog-ng -s -f "${SYSLOG_NG_CONFIGFILE}"
+ eend $? "Configuration error. Please fix your configfile (${SYSLOG_NG_CONFIGFILE})"
+}
+
+start_pre() {
+ checkconfig || return 1
+ checkpath \
+ -d \
+ --mode 0700 \
+ --owner "${SYSLOG_NG_OWNER}:${SYSLOG_NG_GROUP}" \
+ "${SYSLOG_NG_STATEFILE_DIR}"
+}
+
+stop_pre() {
+ [ "$RC_CMD" = restart ] && sleep 1
+ return 0
+}
+
+reload() {
+ checkconfig || return 1
+ ebegin "Reloading configuration and re-opening log files"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng-3.6.2-redis.patch b/app-admin/syslog-ng/files/3.6/syslog-ng-3.6.2-redis.patch
new file mode 100644
index 000000000000..aa00c3b9d0e4
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng-3.6.2-redis.patch
@@ -0,0 +1,29 @@
+From 0e51c69056a93bd2b95341f005b8b1fdceec2b10 Mon Sep 17 00:00:00 2001
+From: Tibor Benke <ihrwein@gmail.com>
+Date: Wed, 17 Dec 2014 23:52:41 +0100
+Subject: [PATCH] redis: free reply object after a succesful ping
+
+---
+ modules/redis/redis.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/modules/redis/redis.c b/modules/redis/redis.c
+index 46a5b6b..9114324 100644
+--- a/modules/redis/redis.c
++++ b/modules/redis/redis.c
+@@ -132,9 +132,14 @@ redis_dd_format_persist_name(LogThrDestDriver *d)
+ static gboolean
+ redis_dd_connect(RedisDriver *self, gboolean reconnect)
+ {
++ redisReply *reply;
++
+ if (reconnect && (self->c != NULL))
+ {
+- redisCommand(self->c, "ping");
++ reply = redisCommand(self->c, "ping");
++
++ if (reply)
++ freeReplyObject(reply);
+
+ if (!self->c->err)
+ return TRUE;
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo
new file mode 100644
index 000000000000..77dacb882b5e
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo
@@ -0,0 +1,37 @@
+@version: 3.6
+# $Id$
+#
+# Syslog-ng default configuration file for Gentoo Linux
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+
+ # The default action of syslog-ng is to log a STATS line
+ # to the file every 10 minutes. That's pretty ugly after a while.
+ # Change it to every 12 hours so you get a nice daily update of
+ # how many messages syslog-ng missed (0).
+ stats_freq(43200);
+ # The default action of syslog-ng is to log a MARK line
+ # to the file every 20 minutes. That's seems high for most
+ # people so turn it down to once an hour. Set it to zero
+ # if you don't want the functionality at all.
+ mark_freq(3600);
+};
+
+source src { system(); internal(); };
+
+destination messages { file("/var/log/messages"); };
+
+# By default messages are logged to tty12...
+destination console_all { file("/dev/tty12"); };
+# ...if you intend to use /dev/console for programs like xconsole
+# you can comment out the destination line above that references /dev/tty12
+# and uncomment the line below.
+#destination console_all { file("/dev/console"); };
+
+log { source(src); destination(messages); };
+log { source(src); destination(console_all); };
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.fbsd b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.fbsd
new file mode 100644
index 000000000000..46b1a84ae19d
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.fbsd
@@ -0,0 +1,25 @@
+@version: 3.6
+# $Id$
+#
+# Syslog-ng default configuration file for Gentoo FreeBSD
+#
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+
+ # The default action of syslog-ng is to log a STATS line
+ # to the file every 10 minutes. That's pretty ugly after a while.
+ # Change it to every 12 hours so you get a nice daily update of
+ # how many messages syslog-ng missed (0).
+ stats_freq(43200);
+};
+
+source src { system(); internal(); };
+
+destination messages { file("/var/log/messages"); };
+
+log { source(src); destination(messages); };
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.hardened b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.hardened
new file mode 100644
index 000000000000..8afb55338fe9
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng.conf.gentoo.hardened
@@ -0,0 +1,115 @@
+@version: 3.6
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# https://bugs.gentoo.org/show_bug.cgi?id=426814
+@include "scl.conf"
+
+#
+# Syslog-ng configuration file, compatible with default hardened installations.
+#
+
+options {
+ threaded(yes);
+ chain_hostnames(no);
+ stats_freq(43200);
+};
+
+source src {
+ unix-dgram("/dev/log");
+ internal();
+};
+source kernsrc {
+ file("/proc/kmsg");
+};
+
+#source net { udp(); };
+#log { source(net); destination(net_logs); };
+#destination net_logs { file("/var/log/HOSTS/$HOST/$YEAR$MONTH$DAY.log"); };
+
+destination authlog { file("/var/log/auth.log"); };
+destination _syslog { file("/var/log/syslog"); };
+destination cron { file("/var/log/cron.log"); };
+destination daemon { file("/var/log/daemon.log"); };
+destination kern { file("/var/log/kern.log"); file("/dev/tty12"); };
+destination lpr { file("/var/log/lpr.log"); };
+destination user { file("/var/log/user.log"); };
+destination uucp { file("/var/log/uucp.log"); };
+#destination ppp { file("/var/log/ppp.log"); };
+destination mail { file("/var/log/mail.log"); };
+
+destination avc { file("/var/log/avc.log"); };
+destination audit { file("/var/log/audit.log"); };
+destination pax { file("/var/log/pax.log"); };
+destination grsec { file("/var/log/grsec.log"); };
+
+destination mailinfo { file("/var/log/mail.info"); };
+destination mailwarn { file("/var/log/mail.warn"); };
+destination mailerr { file("/var/log/mail.err"); };
+
+destination newscrit { file("/var/log/news/news.crit"); };
+destination newserr { file("/var/log/news/news.err"); };
+destination newsnotice { file("/var/log/news/news.notice"); };
+
+destination debug { file("/var/log/debug"); };
+destination messages { file("/var/log/messages"); };
+destination console { usertty("root"); };
+destination console_all { file("/dev/tty12"); };
+#destination loghost { udp("loghost" port(999)); };
+
+destination xconsole { pipe("/dev/xconsole"); };
+
+filter f_auth { facility(auth); };
+filter f_authpriv { facility(auth, authpriv); };
+filter f_syslog { not facility(authpriv, mail); };
+filter f_cron { facility(cron); };
+filter f_daemon { facility(daemon); };
+filter f_kern { facility(kern); };
+filter f_lpr { facility(lpr); };
+filter f_mail { facility(mail); };
+filter f_user { facility(user); };
+filter f_uucp { facility(uucp); };
+#filter f_ppp { facility(ppp); };
+filter f_news { facility(news); };
+filter f_debug { not facility(auth, authpriv, news, mail); };
+filter f_messages { level(info..warn)
+ and not facility(auth, authpriv, mail, news); };
+filter f_emergency { level(emerg); };
+
+filter f_info { level(info); };
+
+filter f_notice { level(notice); };
+filter f_warn { level(warn); };
+filter f_crit { level(crit); };
+filter f_err { level(err); };
+
+filter f_avc { message(".*avc: .*"); };
+filter f_audit { message("^(\\[.*\..*\] |)audit.*") and not message(".*avc: .*"); };
+filter f_pax { message("^(\\[.*\..*\] |)PAX:.*"); };
+filter f_grsec { message("^(\\[.*\..*\] |)grsec:.*"); };
+
+log { source(src); filter(f_authpriv); destination(authlog); };
+log { source(src); filter(f_syslog); destination(_syslog); };
+log { source(src); filter(f_cron); destination(cron); };
+log { source(src); filter(f_daemon); destination(daemon); };
+log { source(kernsrc); filter(f_kern); destination(kern); };
+log { source(src); filter(f_lpr); destination(lpr); };
+log { source(src); filter(f_mail); destination(mail); };
+log { source(src); filter(f_user); destination(user); };
+log { source(src); filter(f_uucp); destination(uucp); };
+log { source(kernsrc); filter(f_pax); destination(pax); };
+log { source(kernsrc); filter(f_grsec); destination(grsec); };
+log { source(kernsrc); filter(f_audit); destination(audit); };
+log { source(kernsrc); filter(f_avc); destination(avc); };
+log { source(src); filter(f_mail); filter(f_info); destination(mailinfo); };
+log { source(src); filter(f_mail); filter(f_warn); destination(mailwarn); };
+log { source(src); filter(f_mail); filter(f_err); destination(mailerr); };
+log { source(src); filter(f_news); filter(f_crit); destination(newscrit); };
+log { source(src); filter(f_news); filter(f_err); destination(newserr); };
+log { source(src); filter(f_news); filter(f_notice); destination(newsnotice); };
+log { source(src); filter(f_debug); destination(debug); };
+log { source(src); filter(f_messages); destination(messages); };
+log { source(src); filter(f_emergency); destination(console); };
+#log { source(src); filter(f_ppp); destination(ppp); };
+log { source(src); destination(console_all); };
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng.confd b/app-admin/syslog-ng/files/3.6/syslog-ng.confd
new file mode 100644
index 000000000000..42fa26ab4cf4
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng.confd
@@ -0,0 +1,42 @@
+# Config file for /etc/init.d/syslog-ng
+
+# If you are not using network logging, this entire section should be
+# commented out. Otherwise, choose one of the settings below based on
+# how you are configuring your network.
+#
+# If you are using the net.* scripts to configure your network, you should
+# set rc_need to match the interface through which your logging server
+# can be reached.
+#rc_need="net.eth0"
+#
+# If you are using an interface manager like wicd, dhcpcd in standalone
+# mode, networkmanager, etc to control your interfaces, set rc_need to
+# the name of that service.
+# rc_need="dhcpcd"
+#rc_need="networkmanager"
+#
+# If you are using newnet and configuring your interface statically with
+# the network script, you should use this setting.
+#rc_need="network"
+#
+# You can use this setting, but I do not recommend relying on it.
+#rc_need="net"
+#
+# You may also want to uncomment the following if you are using network
+# logging.
+#rc_use="stunnel"
+
+# For very customized setups these variables can be adjusted as needed
+# but for most situations they should remain commented:
+# SYSLOG_NG_CONFIGFILE=/etc/syslog-ng/syslog-ng.conf
+# SYSLOG_NG_STATEFILE_DIR=/var/lib/syslog-ng
+# SYSLOG_NG_STATEFILE=${SYSLOG_NG_STATEFILE_DIR}/syslog-ng.persist
+# SYSLOG_NG_PIDFILE_DIR=/run
+# SYSLOG_NG_PIDFILE=${SYSLOG_NG_PIDFILE_DIR}/syslog-ng.pid
+# SYSLOG_NG_GROUP=root
+# SYSLOG_NG_USER=root
+
+# Put any additional options for syslog-ng here.
+# See syslog-ng(8) for more information.
+
+SYSLOG_NG_OPTS=""
diff --git a/app-admin/syslog-ng/files/3.6/syslog-ng.rc6 b/app-admin/syslog-ng/files/3.6/syslog-ng.rc6
new file mode 100644
index 000000000000..88ca55f63928
--- /dev/null
+++ b/app-admin/syslog-ng/files/3.6/syslog-ng.rc6
@@ -0,0 +1,59 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+SYSLOG_NG_CONFIGFILE=${SYSLOG_NG_CONFIGFILE:-/etc/syslog-ng/${RC_SVCNAME}.conf}
+SYSLOG_NG_STATEFILE_DIR=${SYSLOG_NG_STATEFILE_DIR:-/var/lib/syslog-ng}
+SYSLOG_NG_STATEFILE=${SYSLOG_NG_STATEFILE:-${SYSLOG_NG_STATEFILE_DIR}/syslog-ng.persist}
+SYSLOG_NG_PIDFILE_DIR=${SYSLOG_NG_PIDFILE_DIR:-/run}
+SYSLOG_NG_PIDFILE=${SYSLOG_NG_PIDFILE:-${SYSLOG_NG_PIDFILE_DIR}/${RC_SVCNAME}.pid}
+
+SYSLOG_NG_GROUP=${SYSLOG_NG_GROUP:-root}
+SYSLOG_NG_USER=${SYSLOG_NG_USER:-root}
+
+command="/usr/sbin/syslog-ng"
+command_args="--persist-file \"${SYSLOG_NG_STATEFILE}\" --cfgfile \"${SYSLOG_NG_CONFIGFILE}\" --pidfile \"${SYSLOG_NG_PIDFILE}\" ${SYSLOG_NG_OPTS}"
+extra_commands="checkconfig"
+extra_started_commands="reload"
+pidfile="${SYSLOG_NG_PIDFILE}"
+start_stop_daemon_args="--user \"${SYSLOG_NG_USER}\":\"${SYSLOG_NG_GROUP}\""
+description="Syslog-ng is a syslog replacement with advanced filtering features."
+description_checkconfig="Check the configuration file that will be used by \"start\""
+description_reload="Reload the configuration without exiting"
+required_files="${SYSLOG_NG_CONFIGFILE}"
+required_dirs="${SYSLOG_NG_PIDFILE_DIR}"
+
+depend() {
+ use clock
+ need hostname localmount
+ after bootmisc
+ provide logger
+}
+
+checkconfig() {
+ ebegin "Checking your configfile (${SYSLOG_NG_CONFIGFILE})"
+ syslog-ng -s -f "${SYSLOG_NG_CONFIGFILE}"
+ eend $? "Configuration error. Please fix your configfile (${SYSLOG_NG_CONFIGFILE})"
+}
+
+start_pre() {
+ checkconfig || return 1
+ checkpath \
+ -d \
+ --mode 0700 \
+ --owner "${SYSLOG_NG_USER}:${SYSLOG_NG_GROUP}" \
+ "${SYSLOG_NG_STATEFILE_DIR}"
+}
+
+stop_pre() {
+ [ "$RC_CMD" = restart ] && sleep 1
+ return 0
+}
+
+reload() {
+ checkconfig || return 1
+ ebegin "Reloading configuration and re-opening log files"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/app-admin/syslog-ng/files/README.hardened b/app-admin/syslog-ng/files/README.hardened
new file mode 100644
index 000000000000..dcb0fc3f3ae2
--- /dev/null
+++ b/app-admin/syslog-ng/files/README.hardened
@@ -0,0 +1,13 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+If you intend to use syslog-ng together with the systemd journal,
+please be sure to configure it to listen accordingly, e.g. replace
+
+ unix-dgram("/dev/log");
+
+with
+
+ unix-dgram("/run/systemd/journal/syslog");
+
+in /etc/syslog-ng/syslog-ng.conf
diff --git a/app-admin/syslog-ng/files/syslog-ng.logrotate b/app-admin/syslog-ng/files/syslog-ng.logrotate
new file mode 100644
index 000000000000..60a181bc05cb
--- /dev/null
+++ b/app-admin/syslog-ng/files/syslog-ng.logrotate
@@ -0,0 +1,13 @@
+# $Id$
+#
+# Syslog-ng logrotate snippet for Gentoo Linux
+# contributed by Michael Sterrett
+#
+
+/var/log/messages {
+ missingok
+ sharedscripts
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
diff --git a/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened b/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened
new file mode 100644
index 000000000000..2586fa3a4adf
--- /dev/null
+++ b/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened
@@ -0,0 +1,76 @@
+# $Id$
+#
+# Syslog-ng logrotate snippet for Hardened Gentoo Linux
+# contributed by Maciej Grela
+#
+# Updated bug #284669
+
+# Generic
+/var/log/debug /var/log/syslog /var/log/kern.log {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# System services
+/var/log/cron.log /var/log/daemon.log /var/log/lpr.log /var/log/uucp.log {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# User log
+/var/log/user.log {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# News system
+/var/log/news/news.crit /var/log/news/news.err /var/log/news/news.notice {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# Mail system
+/var/log/mail.log /var/log/mail.info /var/log/mail.err /var/log/mail.warn {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# Hardened logs
+/var/log/avc.log /var/log/audit.log /var/log/pax.log /var/log/grsec.log {
+ sharedscripts
+ missingok
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# Authentication
+/var/log/auth.log {
+ sharedscripts
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
+
+# the rest
+/var/log/messages {
+ sharedscripts
+ postrotate
+ /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
+ endscript
+}
diff --git a/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened.in b/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened.in
new file mode 100644
index 000000000000..e27ae40b8283
--- /dev/null
+++ b/app-admin/syslog-ng/files/syslog-ng.logrotate.hardened.in
@@ -0,0 +1,76 @@
+# $Id$
+#
+# Syslog-ng logrotate snippet for Hardened Gentoo Linux
+# contributed by Maciej Grela
+#
+# Updated bug #284669
+
+# Generic
+/var/log/debug /var/log/syslog /var/log/kern.log {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# System services
+/var/log/cron.log /var/log/daemon.log /var/log/lpr.log /var/log/uucp.log {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# User log
+/var/log/user.log {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# News system
+/var/log/news/news.crit /var/log/news/news.err /var/log/news/news.notice {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# Mail system
+/var/log/mail.log /var/log/mail.info /var/log/mail.err /var/log/mail.warn {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# Hardened logs
+/var/log/avc.log /var/log/audit.log /var/log/pax.log /var/log/grsec.log {
+ sharedscripts
+ missingok
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# Authentication
+/var/log/auth.log {
+ sharedscripts
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
+
+# the rest
+/var/log/messages {
+ sharedscripts
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
diff --git a/app-admin/syslog-ng/files/syslog-ng.logrotate.in b/app-admin/syslog-ng/files/syslog-ng.logrotate.in
new file mode 100644
index 000000000000..a6a7580f665c
--- /dev/null
+++ b/app-admin/syslog-ng/files/syslog-ng.logrotate.in
@@ -0,0 +1,13 @@
+# $Id$
+#
+# Syslog-ng logrotate snippet for Gentoo Linux
+# contributed by Michael Sterrett
+#
+
+/var/log/messages {
+ missingok
+ sharedscripts
+ postrotate
+ @GENTOO_RESTART@ > /dev/null 2>&1 || true
+ endscript
+}
diff --git a/app-admin/syslog-ng/metadata.xml b/app-admin/syslog-ng/metadata.xml
new file mode 100644
index 000000000000..db015d19593b
--- /dev/null
+++ b/app-admin/syslog-ng/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>mr_bones_@gentoo.org</email>
+ <name>Michael Sterrett</name>
+</maintainer>
+<use>
+ <flag name='amqp'>Enable support for AMQP destinations</flag>
+ <flag name='smtp'>Enable support for SMTP destinations</flag>
+ <flag name='spoof-source'>Enable support for spoofed source addresses</flag>
+ <flag name='json'>Enable support for JSON template formatting via <pkg>dev-libs/json-c</pkg></flag>
+ <flag name='mongodb'>Enable support for mongodb destinations</flag>
+ <flag name='pacct'>Enable support for reading Process Accounting files (EXPERIMENTAL, Linux only)</flag>
+ <flag name='redis'>Enable support for Redis destinations</flag>
+</use>
+</pkgmetadata>
diff --git a/app-admin/syslog-ng/syslog-ng-3.4.8.ebuild b/app-admin/syslog-ng/syslog-ng-3.4.8.ebuild
new file mode 100644
index 000000000000..b0d2b0964966
--- /dev/null
+++ b/app-admin/syslog-ng/syslog-ng-3.4.8.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib systemd
+
+MY_PV=${PV/_/}
+DESCRIPTION="syslog replacement with advanced filtering features"
+HOMEPAGE="http://www.balabit.com/network-security/syslog-ng"
+SRC_URI="http://www.balabit.com/downloads/files/syslog-ng/sources/${MY_PV}/source/syslog-ng_${MY_PV}.tar.gz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
+IUSE="amqp caps dbi geoip ipv6 json mongodb pacct +pcre smtp spoof-source ssl systemd tcpd"
+RESTRICT="test"
+
+RDEPEND="
+ pcre? ( dev-libs/libpcre )
+ spoof-source? ( net-libs/libnet:1.1 )
+ ssl? ( dev-libs/openssl:= )
+ smtp? ( net-libs/libesmtp )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+ >=dev-libs/eventlog-0.2.12
+ >=dev-libs/glib-2.10.1:2
+ json? ( >=dev-libs/json-c-0.9 )
+ caps? ( sys-libs/libcap )
+ geoip? ( >=dev-libs/geoip-1.5.0 )
+ dbi? ( >=dev-db/libdbi-0.8.3 )
+ systemd? ( sys-apps/systemd )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/flex"
+
+S=${WORKDIR}/${PN}-${MY_PV}
+
+src_prepare() {
+ cp "${FILESDIR}"/*logrotate*.in "${TMPDIR}" || die
+ cd "${TMPDIR}" || die
+
+ for f in *logrotate*.in ; do
+ if use systemd ; then
+ sed \
+ 's/@GENTOO_RESTART@/systemctl kill -s HUP syslog-ng/' \
+ $f > ${f/.in/} || die
+ else
+ sed \
+ 's:@GENTOO_RESTART@:/etc/init.d/syslog-ng reload:' \
+ $f > ${f/.in/} || die
+ fi
+ done
+}
+
+src_configure() {
+ econf \
+ --disable-docs \
+ --with-ivykis=internal \
+ --with-libmongo-client=internal \
+ --sysconfdir=/etc/syslog-ng \
+ --localstatedir=/var/lib/syslog-ng \
+ --with-pidfile-dir=/var/run \
+ --with-module-dir=/usr/$(get_libdir)/syslog-ng \
+ $(systemd_with_unitdir) \
+ $(use_enable systemd) \
+ $(use_enable caps linux-caps) \
+ $(use_enable geoip) \
+ $(use_enable ipv6) \
+ $(use_enable json) \
+ $(use_enable mongodb) \
+ $(use_enable pacct) \
+ $(use_enable pcre) \
+ $(use_enable smtp) \
+ $(use_enable amqp) \
+ $(usex amqp --with-librabbitmq-client=internal --without-librabbitmq-client) \
+ $(use_enable spoof-source) \
+ $(use_enable dbi sql) \
+ $(use_enable ssl) \
+ $(use_enable tcpd tcp-wrapper)
+}
+
+src_install() {
+ # -j1 for bug #484470
+ emake -j1 DESTDIR="${D}" install
+
+ dodoc AUTHORS NEWS contrib/syslog-ng.conf* contrib/syslog2ng \
+ "${FILESDIR}/${PV%.*}/syslog-ng.conf.gentoo.hardened" \
+ "${TMPDIR}/syslog-ng.logrotate.hardened" \
+ "${FILESDIR}/README.hardened"
+
+ # Install default configuration
+ insinto /etc/syslog-ng
+ if use userland_BSD ; then
+ newins "${FILESDIR}/${PV%.*}/syslog-ng.conf.gentoo.fbsd" syslog-ng.conf
+ else
+ newins "${FILESDIR}/${PV%.*}/syslog-ng.conf.gentoo" syslog-ng.conf
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${TMPDIR}/syslog-ng.logrotate" syslog-ng
+
+ newinitd "${FILESDIR}/${PV%.*}/syslog-ng.rc6" syslog-ng
+ newconfd "${FILESDIR}/${PV%.*}/syslog-ng.confd" syslog-ng
+ keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
+ prune_libtool_files --modules
+}
+
+pkg_postinst() {
+ elog "For detailed documentation please see the upstream website:"
+ elog "http://www.balabit.com/sites/default/files/documents/syslog-ng-ose-3.4-guides/en/syslog-ng-ose-v3.4-guide-admin/html/index.html"
+
+ # bug #355257
+ if ! has_version app-admin/logrotate ; then
+ echo
+ elog "It is highly recommended that app-admin/logrotate be emerged to"
+ elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
+ elog "for logrotate to use."
+ echo
+ fi
+}
diff --git a/app-admin/syslog-ng/syslog-ng-3.6.2.ebuild b/app-admin/syslog-ng/syslog-ng-3.6.2.ebuild
new file mode 100644
index 000000000000..e8e6ec8a475d
--- /dev/null
+++ b/app-admin/syslog-ng/syslog-ng-3.6.2.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib systemd versionator
+
+MY_PV=${PV/_/}
+MY_PV_MM=$(get_version_component_range 1-2)
+DESCRIPTION="syslog replacement with advanced filtering features"
+HOMEPAGE="http://www.balabit.com/network-security/syslog-ng"
+SRC_URI="http://www.balabit.com/downloads/files/syslog-ng/sources/${MY_PV}/source/syslog-ng_${MY_PV}.tar.gz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
+IUSE="amqp caps dbi geoip ipv6 json mongodb pacct redis smtp spoof-source ssl systemd tcpd"
+RESTRICT="test"
+
+RDEPEND="
+ caps? ( sys-libs/libcap )
+ dbi? ( >=dev-db/libdbi-0.8.3 )
+ geoip? ( >=dev-libs/geoip-1.5.0 )
+ json? ( >=dev-libs/json-c-0.9 )
+ redis? ( dev-libs/hiredis )
+ smtp? ( net-libs/libesmtp )
+ spoof-source? ( net-libs/libnet:1.1 )
+ ssl? ( dev-libs/openssl:= )
+ systemd? ( sys-apps/systemd )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+ dev-libs/libpcre
+ >=dev-libs/eventlog-0.2.12
+ >=dev-libs/glib-2.10.1:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/flex"
+
+S=${WORKDIR}/${PN}-${MY_PV}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${MY_PV_MM}/${P}-redis.patch
+ epatch_user
+ cp "${FILESDIR}"/*logrotate*.in "${TMPDIR}" || die
+ cd "${TMPDIR}" || die
+
+ for f in *logrotate*.in ; do
+ if use systemd ; then
+ sed \
+ 's/@GENTOO_RESTART@/systemctl kill -s HUP syslog-ng/' \
+ $f > ${f/.in/} || die
+ else
+ sed \
+ 's:@GENTOO_RESTART@:/etc/init.d/syslog-ng reload:' \
+ $f > ${f/.in/} || die
+ fi
+ done
+}
+
+src_configure() {
+ econf \
+ --disable-docs \
+ --with-embedded-crypto \
+ --with-ivykis=internal \
+ --with-libmongo-client=internal \
+ --sysconfdir=/etc/syslog-ng \
+ --localstatedir=/var/lib/syslog-ng \
+ --with-pidfile-dir=/var/run \
+ --with-module-dir=/usr/$(get_libdir)/syslog-ng \
+ $(systemd_with_unitdir) \
+ $(use_enable systemd) \
+ $(use_enable caps linux-caps) \
+ $(use_enable geoip) \
+ $(use_enable ipv6) \
+ $(use_enable json) \
+ $(use_enable mongodb) \
+ $(use_enable pacct) \
+ $(use_enable redis) \
+ $(use_enable smtp) \
+ $(use_enable amqp) \
+ $(usex amqp --with-librabbitmq-client=internal --without-librabbitmq-client) \
+ $(use_enable spoof-source) \
+ $(use_enable dbi sql) \
+ $(use_enable ssl) \
+ $(use_enable tcpd tcp-wrapper)
+}
+
+src_install() {
+ # -j1 for bug #484470
+ emake -j1 DESTDIR="${D}" install
+
+ dodoc AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf* \
+ contrib/syslog2ng "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo.hardened" \
+ "${TMPDIR}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened"
+
+ # Install default configuration
+ insinto /etc/syslog-ng
+ if use userland_BSD ; then
+ newins "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo.fbsd" syslog-ng.conf
+ else
+ newins "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo" syslog-ng.conf
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${TMPDIR}/syslog-ng.logrotate" syslog-ng
+
+ newinitd "${FILESDIR}/${MY_PV_MM}/syslog-ng.rc6" syslog-ng
+ newconfd "${FILESDIR}/${MY_PV_MM}/syslog-ng.confd" syslog-ng
+ keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
+ prune_libtool_files --modules
+}
+
+pkg_postinst() {
+ elog "For detailed documentation please see the upstream website:"
+ elog "http://www.balabit.com/sites/default/files/documents/syslog-ng-ose-3.6-guides/en/syslog-ng-ose-v3.6-guide-admin/html/index.html"
+
+ # bug #355257
+ if ! has_version app-admin/logrotate ; then
+ echo
+ elog "It is highly recommended that app-admin/logrotate be emerged to"
+ elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
+ elog "for logrotate to use."
+ echo
+ fi
+}
diff --git a/app-admin/syslog-ng/syslog-ng-3.6.4.ebuild b/app-admin/syslog-ng/syslog-ng-3.6.4.ebuild
new file mode 100644
index 000000000000..486044e53ee3
--- /dev/null
+++ b/app-admin/syslog-ng/syslog-ng-3.6.4.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib systemd versionator
+
+MY_PV=${PV/_/}
+MY_PV_MM=$(get_version_component_range 1-2)
+DESCRIPTION="syslog replacement with advanced filtering features"
+HOMEPAGE="http://www.balabit.com/network-security/syslog-ng"
+SRC_URI="http://www.balabit.com/downloads/files/syslog-ng/sources/${MY_PV}/source/syslog-ng_${MY_PV}.tar.gz"
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd"
+IUSE="amqp caps dbi geoip ipv6 json mongodb pacct redis smtp spoof-source ssl systemd tcpd"
+RESTRICT="test"
+
+RDEPEND="
+ caps? ( sys-libs/libcap )
+ dbi? ( >=dev-db/libdbi-0.8.3 )
+ geoip? ( >=dev-libs/geoip-1.5.0 )
+ json? ( >=dev-libs/json-c-0.9 )
+ redis? ( dev-libs/hiredis )
+ smtp? ( net-libs/libesmtp )
+ spoof-source? ( net-libs/libnet:1.1 )
+ ssl? ( dev-libs/openssl:= )
+ systemd? ( sys-apps/systemd )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+ dev-libs/libpcre
+ >=dev-libs/eventlog-0.2.12
+ >=dev-libs/glib-2.10.1:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/flex"
+
+S=${WORKDIR}/${PN}-${MY_PV}
+
+src_prepare() {
+ epatch_user
+ cp "${FILESDIR}"/*logrotate*.in "${TMPDIR}" || die
+ cd "${TMPDIR}" || die
+
+ for f in *logrotate*.in ; do
+ if use systemd ; then
+ sed \
+ 's/@GENTOO_RESTART@/systemctl kill -s HUP syslog-ng/' \
+ $f > ${f/.in/} || die
+ else
+ sed \
+ 's:@GENTOO_RESTART@:/etc/init.d/syslog-ng reload:' \
+ $f > ${f/.in/} || die
+ fi
+ done
+}
+
+src_configure() {
+ econf \
+ --disable-docs \
+ --enable-manpages \
+ --with-embedded-crypto \
+ --with-ivykis=internal \
+ --with-libmongo-client=internal \
+ --sysconfdir=/etc/syslog-ng \
+ --localstatedir=/var/lib/syslog-ng \
+ --with-pidfile-dir=/var/run \
+ --with-module-dir=/usr/$(get_libdir)/syslog-ng \
+ $(systemd_with_unitdir) \
+ $(use_enable systemd) \
+ $(use_enable caps linux-caps) \
+ $(use_enable geoip) \
+ $(use_enable ipv6) \
+ $(use_enable json) \
+ $(use_enable mongodb) \
+ $(use_enable pacct) \
+ $(use_enable redis) \
+ $(use_enable smtp) \
+ $(use_enable amqp) \
+ $(usex amqp --with-librabbitmq-client=internal --without-librabbitmq-client) \
+ $(use_enable spoof-source) \
+ $(use_enable dbi sql) \
+ $(use_enable ssl) \
+ $(use_enable tcpd tcp-wrapper)
+}
+
+src_install() {
+ # -j1 for bug #484470
+ emake -j1 DESTDIR="${D}" install
+
+ dodoc AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf* \
+ contrib/syslog2ng "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo.hardened" \
+ "${TMPDIR}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened"
+
+ # Install default configuration
+ insinto /etc/syslog-ng
+ if use userland_BSD ; then
+ newins "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo.fbsd" syslog-ng.conf
+ else
+ newins "${FILESDIR}/${MY_PV_MM}/syslog-ng.conf.gentoo" syslog-ng.conf
+ fi
+
+ insinto /etc/logrotate.d
+ newins "${TMPDIR}/syslog-ng.logrotate" syslog-ng
+
+ newinitd "${FILESDIR}/${MY_PV_MM}/syslog-ng.rc6" syslog-ng
+ newconfd "${FILESDIR}/${MY_PV_MM}/syslog-ng.confd" syslog-ng
+ keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
+ prune_libtool_files --modules
+}
+
+pkg_postinst() {
+ elog "For detailed documentation please see the upstream website:"
+ elog "http://www.balabit.com/sites/default/files/documents/syslog-ng-ose-3.6-guides/en/syslog-ng-ose-v3.6-guide-admin/html/index.html"
+
+ # bug #355257
+ if ! has_version app-admin/logrotate ; then
+ echo
+ elog "It is highly recommended that app-admin/logrotate be emerged to"
+ elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
+ elog "for logrotate to use."
+ echo
+ fi
+}