Revert "app-admin/syslog-ng: drop old."

This partially reverts commit fe78584f76.
It removed the last stable version on a number of architectures.
This commit is contained in:
Matt Turner
2018-03-16 11:28:12 -07:00
parent cf4043ac40
commit ef9ec02b11
7 changed files with 413 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST syslog-ng-3.13.2.tar.gz 9047998 BLAKE2B a18b11a31e1bf4c981071e7509ff154f08076c5ca659e814a3d8a49108dcc6f324ba3025f4e43bb32d23a9554fc188da4b116089fe29bf866f323f76280c460f SHA512 fd5c6645f1e8e10cba940ea29715f9e7cc286cd49c2f45bde2a447731189d6171ca204aa066ac96dd09246fd7ed1751130d143d807c979518d688e7750490cfe
DIST syslog-ng-3.14.1.tar.gz 9039910 BLAKE2B 688eb52557c41a2556835978809b74ef4cc6b78e54580c4f349a8b9ebc07a6cf5ab99d8cda2a0212cb0186fe9e0a276d46ab9846c5ed1c391d734596ccc2d0a9 SHA512 86e5b59f76de3f585781accc9e426b2f74a73a560a6b49364e3f2b71b6fdd382b8473b468ac396e09c1dd0e00aa525a25874af67ce6c81978df2995c9b920aa7
DIST syslog-ng-3.7.3.tar.gz 3511155 BLAKE2B 25ba2ca241a5847c75792c78d39a4667f55cf1fcff46be5102256ee6a9d2f39e2042ac00fa0b1559f94e0df80a0853249692b443b565dd4f46f0354c453cacaf SHA512 e58d793bd1a8b48c5836090ee244f6e8b223f234f5a27fbf81f6a838b9b1e3e45f73a66dab2bc58a0bba230bd778a247ae22bf529a28fb2e9fee52b8181d304b

View File

@@ -0,0 +1,36 @@
@version: 3.7
#
# 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); };

View File

@@ -0,0 +1,24 @@
@version: 3.7
#
# 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); };

View File

@@ -0,0 +1,114 @@
@version: 3.7
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# 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); };

View File

@@ -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=""

View File

@@ -0,0 +1,58 @@
#!/sbin/openrc-run
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
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 $?
}

View File

@@ -0,0 +1,138 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit autotools python-single-r1 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="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.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 libressl mongodb pacct python redis smtp spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
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:= )
python? ( ${PYTHON_DEPS} )
redis? ( dev-libs/hiredis )
smtp? ( net-libs/libesmtp )
spoof-source? ( net-libs/libnet:1.1 )
systemd? ( sys-apps/systemd )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/libpcre
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
>=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}
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
use python && python_fix_shebang .
if use !json ; then
sed -i -e '1 s/cim //' scl/Makefile.am || die
eautoreconf
fi
for f in "${FILESDIR}"/*logrotate*.in ; do
local bn=$(basename "${f}")
sed \
-e "$(usex systemd \
's/@GENTOO_RESTART@/systemctl kill -s HUP syslog-ng/' \
's:@GENTOO_RESTART@:/etc/init.d/syslog-ng reload:')" \
"${f}" > "${T}/${bn/.in/}" || die
done
epatch_user
}
src_configure() {
econf \
--disable-java \
--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 python) \
$(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 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" \
"${T}/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 "${T}/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
use python && python_optimize
}
pkg_postinst() {
elog "For detailed documentation please see the upstream website:"
elog "http://www.balabit.com/sites/default/files/documents/syslog-ng-ose-3.7-guides/en/syslog-ng-ose-v3.7-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
}