summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-admin/ulogd
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-admin/ulogd')
-rw-r--r--app-admin/ulogd/Manifest2
-rw-r--r--app-admin/ulogd/files/ulogd-2.0.4-linux-headers-3.17-ipt_ulog.patch100
-rw-r--r--app-admin/ulogd/files/ulogd-2.0.5-remove-db-automagic.patch45
-rw-r--r--app-admin/ulogd/files/ulogd.init41
-rw-r--r--app-admin/ulogd/files/ulogd.logrotate9
-rw-r--r--app-admin/ulogd/files/ulogd.service13
-rw-r--r--app-admin/ulogd/metadata.xml19
-rw-r--r--app-admin/ulogd/ulogd-2.0.4-r1.ebuild140
-rw-r--r--app-admin/ulogd/ulogd-2.0.5.ebuild141
9 files changed, 510 insertions, 0 deletions
diff --git a/app-admin/ulogd/Manifest b/app-admin/ulogd/Manifest
new file mode 100644
index 000000000000..8392508578e9
--- /dev/null
+++ b/app-admin/ulogd/Manifest
@@ -0,0 +1,2 @@
+DIST ulogd-2.0.4.tar.bz2 452234 SHA256 56b30a13a8832e97178f39b7bb173a0b1dfe173dbb60d99a1a386c0962a2effd SHA512 08e88661fcfbcfd327b03b7a883dc239991f47d5a4e4561f3ada5f6acc8f2349f3bd38c1c67f28e42bbccf4cad63b2b7c3b732c23bf24b7c5f05320d27977773 WHIRLPOOL 94ee731cee8b95295d1c675bb3904be1a5b27a1e901d462f248116c865e79d52703b5330882110d7212bda1bb964fc0c97c3e704589071f47fab4475e1c91161
+DIST ulogd-2.0.5.tar.bz2 456258 SHA256 a221cb9f77347c0ca00d0937e27c1b90e3291a553cc62a4139b788e2e420e8c0 SHA512 bf00b8adaad7bd04077a83521b0d7accc26e644c8f3386819e7f91476178b6733f1c6554fb82dd0d3913398c83a61d65f61dc973f199f610bfaadc6251504819 WHIRLPOOL fe499ac7b4070581439a05f4f2245f7a42fe5630da5dc32b9b069511ed1faa15fe482eee08d50477d3fb1d0bf0d3855a69fc82fb0f3e8eecdf082fb642519f91
diff --git a/app-admin/ulogd/files/ulogd-2.0.4-linux-headers-3.17-ipt_ulog.patch b/app-admin/ulogd/files/ulogd-2.0.4-linux-headers-3.17-ipt_ulog.patch
new file mode 100644
index 000000000000..f8c10622e229
--- /dev/null
+++ b/app-admin/ulogd/files/ulogd-2.0.4-linux-headers-3.17-ipt_ulog.patch
@@ -0,0 +1,100 @@
+From 30e24dbfc7a8644e29664070e8c16e5c3997f87e Mon Sep 17 00:00:00 2001
+From: Pablo Neira Ayuso <pablo@netfilter.org>
+Date: Fri, 7 Nov 2014 18:33:01 +0100
+Subject: [PATCH] include: keep a copy of linux/netfilter_ipv4/ipt_ULOG.h
+
+This fixes compilation if you use a Linux kernel >= 3.17. This problem
+occurs since ULOG was removed from mainstream:
+
+http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=7200135bc1e61f1437dc326ae2ef2f310c50b4eb
+
+Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=986
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+
+diff --git a/configure.ac b/configure.ac
+index 522c345..c5f573c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -142,7 +142,7 @@ dnl AM_CONDITIONAL(HAVE_PGSQL, test x$pgsqldir != x)
+
+ AC_CONFIG_FILES(include/Makefile include/ulogd/Makefile include/libipulog/Makefile \
+ include/linux/Makefile include/linux/netfilter/Makefile \
+- libipulog/Makefile \
++ include/linux/netfilter_ipv4/Makefile libipulog/Makefile \
+ input/Makefile input/packet/Makefile input/flow/Makefile \
+ input/sum/Makefile \
+ filter/Makefile filter/raw2packet/Makefile filter/packet2flow/Makefile \
+diff --git a/include/linux/Makefile.am b/include/linux/Makefile.am
+index ca80d0d..18af1c2 100644
+--- a/include/linux/Makefile.am
++++ b/include/linux/Makefile.am
+@@ -1,2 +1,2 @@
+-
+-SUBDIRS = netfilter
++SUBDIRS = netfilter \
++ netfilter_ipv4
+diff --git a/include/linux/netfilter_ipv4/Makefile.am b/include/linux/netfilter_ipv4/Makefile.am
+new file mode 100644
+index 0000000..41819a3
+--- /dev/null
++++ b/include/linux/netfilter_ipv4/Makefile.am
+@@ -0,0 +1 @@
++noinst_HEADERS = ipt_ULOG.h
+diff --git a/include/linux/netfilter_ipv4/ipt_ULOG.h b/include/linux/netfilter_ipv4/ipt_ULOG.h
+new file mode 100644
+index 0000000..417aad2
+--- /dev/null
++++ b/include/linux/netfilter_ipv4/ipt_ULOG.h
+@@ -0,0 +1,49 @@
++/* Header file for IP tables userspace logging, Version 1.8
++ *
++ * (C) 2000-2002 by Harald Welte <laforge@gnumonks.org>
++ *
++ * Distributed under the terms of GNU GPL */
++
++#ifndef _IPT_ULOG_H
++#define _IPT_ULOG_H
++
++#ifndef NETLINK_NFLOG
++#define NETLINK_NFLOG 5
++#endif
++
++#define ULOG_DEFAULT_NLGROUP 1
++#define ULOG_DEFAULT_QTHRESHOLD 1
++
++#define ULOG_MAC_LEN 80
++#define ULOG_PREFIX_LEN 32
++
++#define ULOG_MAX_QLEN 50
++/* Why 50? Well... there is a limit imposed by the slab cache 131000
++ * bytes. So the multipart netlink-message has to be < 131000 bytes.
++ * Assuming a standard ethernet-mtu of 1500, we could define this up
++ * to 80... but even 50 seems to be big enough. */
++
++/* private data structure for each rule with a ULOG target */
++struct ipt_ulog_info {
++ unsigned int nl_group;
++ size_t copy_range;
++ size_t qthreshold;
++ char prefix[ULOG_PREFIX_LEN];
++};
++
++/* Format of the ULOG packets passed through netlink */
++typedef struct ulog_packet_msg {
++ unsigned long mark;
++ long timestamp_sec;
++ long timestamp_usec;
++ unsigned int hook;
++ char indev_name[IFNAMSIZ];
++ char outdev_name[IFNAMSIZ];
++ size_t data_len;
++ char prefix[ULOG_PREFIX_LEN];
++ unsigned char mac_len;
++ unsigned char mac[ULOG_MAC_LEN];
++ unsigned char payload[0];
++} ulog_packet_msg_t;
++
++#endif /*_IPT_ULOG_H*/
+--
+2.0.4
+
diff --git a/app-admin/ulogd/files/ulogd-2.0.5-remove-db-automagic.patch b/app-admin/ulogd/files/ulogd-2.0.5-remove-db-automagic.patch
new file mode 100644
index 000000000000..dfa51112e063
--- /dev/null
+++ b/app-admin/ulogd/files/ulogd-2.0.5-remove-db-automagic.patch
@@ -0,0 +1,45 @@
+commit c61c05c2d050410c24346d42b013d7cb39149949
+Author: Harald Welte <laforge@gnumonks.org>
+Date: Sun May 3 11:08:54 2015 +0200
+
+ configure.ac: Add --without-{mysql,pgsql}
+
+ In some cases you may not want to build a certain output plugin, even
+ if the headers/libraries actually exist on the build host.
+
+diff --git a/configure.ac b/configure.ac
+index c814bec..1a7f8de 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -85,7 +85,10 @@ if [! test "x$enable_nfacct" = "xyes"]; then
+ enable_nfacct="no"
+ fi
+
+-CT_CHECK_POSTGRES_DB()
++AC_ARG_WITH([pgsql], AS_HELP_STRING([--without-pgsql], [Build without postgresql output plugin [default=test]]))
++AS_IF([test "x$with_pgsql" != "xno"], [
++ CT_CHECK_POSTGRES_DB()
++])
+ AM_CONDITIONAL(HAVE_PGSQL, test "x$PQLIBPATH" != "x")
+ if test "x$PQLIBPATH" != "x"; then
+ enable_pgsql="yes"
+@@ -93,7 +96,10 @@ else
+ enable_pgsql="no"
+ fi
+
+-CT_CHECK_MYSQL_DB()
++AC_ARG_WITH([mysql], AS_HELP_STRING([--without-mysql], [Build without mysql output plugin [default=test]]))
++AS_IF([test "x$with_mysql" != "xno"], [
++ CT_CHECK_MYSQL_DB()
++])
+ AM_CONDITIONAL(HAVE_MYSQL, test "x$MYSQL_LIB" != "x")
+ if test "x$MYSQL_LIB" != "x"; then
+ enable_mysql="yes"
+@@ -101,6 +107,7 @@ else
+ enable_mysql="no"
+ fi
+
++
+ AC_ARG_WITH([sqlite], AS_HELP_STRING([--without-sqlite], [Build without SQLITE3 output plugin [default=test]]))
+ AS_IF([test "x$with_sqlite" != "xno"], [
+ PKG_CHECK_MODULES([libsqlite3], [sqlite3], [], [:])
diff --git a/app-admin/ulogd/files/ulogd.init b/app-admin/ulogd/files/ulogd.init
new file mode 100644
index 000000000000..ace6e8b51c91
--- /dev/null
+++ b/app-admin/ulogd/files/ulogd.init
@@ -0,0 +1,41 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+extra_started_commands="reload reopen"
+
+: ${ULOGD_BINARY:=/usr/sbin/ulogd}
+: ${ULOGD_PIDFILE:=/run/${SVCNAME}.pid}
+: ${ULOGD_OPTS:=--daemon --uid ulogd --pidfile ${ULOGD_PIDFILE}}
+
+depend() {
+ before iptables ip6tables ebtables firewall
+ after mysql postgresql
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --start \
+ --exec ${ULOGD_BINARY} --pidfile ${ULOGD_PIDFILE} \
+ -- ${ULOGD_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --pidfile ${ULOGD_PIDFILE}
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME} configuration"
+ start-stop-daemon --signal USR1 --pidfile ${ULOGD_PIDFILE}
+ eend $?
+}
+
+reopen() {
+ ebegin "Reopening ${SVCNAME} logfiles"
+ start-stop-daemon --signal HUP --pidfile ${ULOGD_PIDFILE}
+ eend $?
+}
diff --git a/app-admin/ulogd/files/ulogd.logrotate b/app-admin/ulogd/files/ulogd.logrotate
new file mode 100644
index 000000000000..777e40097a5e
--- /dev/null
+++ b/app-admin/ulogd/files/ulogd.logrotate
@@ -0,0 +1,9 @@
+/var/log/ulogd/*.log {
+ sharedscripts
+ missingok
+ notifempty
+ create 0640 ulogd
+ postrotate
+ [ -f /run/ulogd.pid ] && /bin/kill -HUP $(cat /run/ulogd.pid)
+ endscript
+}
diff --git a/app-admin/ulogd/files/ulogd.service b/app-admin/ulogd/files/ulogd.service
new file mode 100644
index 000000000000..ec22db0ad663
--- /dev/null
+++ b/app-admin/ulogd/files/ulogd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=A userspace logging daemon for netfilter/iptables related logging
+Before=iptables.service ip6tables.service
+After=mysql.service postgresql.service
+
+[Service]
+Type=forking
+PIDFile=/run/ulogd.pid
+ExecStart=/usr/sbin/ulogd --daemon --uid ulogd --pidfile /run/ulogd.pid
+ExecReload=/bin/kill -USR1 $MAINPID
+
+[Install]
+WantedBy=network.target
diff --git a/app-admin/ulogd/metadata.xml b/app-admin/ulogd/metadata.xml
new file mode 100644
index 000000000000..0a868141b02f
--- /dev/null
+++ b/app-admin/ulogd/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>itumaykin@gmail.com</email>
+ </maintainer>
+ <use>
+ <flag name='json'>Build JSON output plugin to save packets in JSON file format.</flag>
+ <flag name='pcap'>Build PCAP output plugin to save packets in libpcap file format.</flag>
+ <flag name='mysql'>Build MySQL output plugin to save packets in a mysql database.</flag>
+ <flag name='postgres'>Build PGSQL output plugin to save packets in a postgres database.</flag>
+ <flag name='sqlite'>Build SQLITE3 output plugin to save packets in a sqlite database.</flag>
+ <flag name='nflog'>Build NFLOG input plugin to support stateless packet-based logging via nfnetlink_queue.</flag>
+ <flag name='nfct'>Build NFCT input plugin to support stateful flow-based logging via nf_conntrack_netlink.</flag>
+ <flag name='nfacct'>Build NFACCT input plugin to support traffic accounting via nfnetlink_acct.</flag>
+ <flag name='ulog'>Build ULOG input plugin to support deprecated packet-based logging via ULOG target.</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-admin/ulogd/ulogd-2.0.4-r1.ebuild b/app-admin/ulogd/ulogd-2.0.4-r1.ebuild
new file mode 100644
index 000000000000..a49fa0235214
--- /dev/null
+++ b/app-admin/ulogd/ulogd-2.0.4-r1.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+inherit autotools-utils eutils linux-info readme.gentoo systemd user
+
+DESCRIPTION="A userspace logging daemon for netfilter/iptables related logging"
+HOMEPAGE="http://netfilter.org/projects/ulogd/index.html"
+SRC_URI="ftp://ftp.netfilter.org/pub/${PN}/${P}.tar.bz2
+ http://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ia64 ppc x86"
+IUSE="dbi doc json mysql nfacct +nfct +nflog pcap postgres sqlite"
+
+RDEPEND="net-firewall/iptables
+ >=net-libs/libnfnetlink-1.0.1
+ dbi? ( dev-db/libdbi )
+ json? ( dev-libs/jansson )
+ nfacct? (
+ >=net-libs/libmnl-1.0.3
+ >=net-libs/libnetfilter_acct-1.0.1
+ )
+ nfct? ( >=net-libs/libnetfilter_conntrack-1.0.2 )
+ nflog? ( >=net-libs/libnetfilter_log-1.0.0 )
+ mysql? ( virtual/mysql )
+ pcap? ( net-libs/libpcap )
+ postgres? ( dev-db/postgresql:= )
+ sqlite? ( dev-db/sqlite:3 )"
+
+DEPEND="${RDEPEND}
+ doc? (
+ app-text/linuxdoc-tools
+ app-text/texlive-core
+ virtual/latex-base
+ )"
+
+PATCHES=( "${FILESDIR}/${P}-linux-headers-3.17-ipt_ulog.patch" )
+
+DOCS=( AUTHORS README TODO )
+DOC_CONTENTS="You must have at least one logging stack enabled to make ulogd work.
+Please edit example configuration located at /etc/ulogd.conf"
+
+pkg_setup() {
+ enewgroup ulogd
+ enewuser ulogd -1 -1 /var/log/ulogd ulogd
+
+ linux-info_pkg_setup
+
+ if kernel_is lt 2 6 14; then
+ die "ulogd2 requires kernel newer than 2.6.14"
+ fi
+
+ if kernel_is lt 2 6 18; then
+ ewarn
+ ewarn "You are using kernel older than 2.6.18"
+ ewarn "Some ulogd2 features may be unavailable"
+ ewarn
+ fi
+
+ if use nfacct && kernel_is lt 3 3 0; then
+ ewarn "NFACCT input plugin requires kernel newer than 3.3.0"
+ fi
+
+ if ! use nfacct && ! use nfct && ! use nflog && kernel_is gt 3 17 0; then
+ ewarn "ULOG target was removed since 3.17.0 kernel release"
+ ewarn "Consider enabling NFACCT, NFCT or NFLOG support"
+ fi
+}
+
+src_prepare() {
+ # - make all logs to be kept in a single dir /var/log/ulogd
+ # - place sockets in /run instead of /tmp
+ sed -i \
+ -e 's:var/log:var/log/ulogd:g' \
+ -e 's:tmp:run:g' \
+ ulogd.conf.in || die 'sed on ulogd.conf.in failed'
+
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with dbi)
+ $(use_with json jansson)
+ $(use_enable nfacct)
+ $(use_enable nfct)
+ $(use_enable nflog)
+ $(use_with mysql)
+ $(use_with pcap)
+ $(use_with postgres pgsql)
+ $(use_with sqlite)
+ )
+ autotools-utils_src_configure
+}
+
+src_compile() {
+ autotools-utils_src_compile
+
+ if use doc; then
+ # prevent access violations from generation of bitmap font files
+ export VARTEXFONTS="${T}"/fonts
+ emake -C doc
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install
+ readme.gentoo_create_doc
+ prune_libtool_files --modules
+
+ if use doc; then
+ dohtml doc/${PN}.html
+ dodoc doc/${PN}.dvi doc/${PN}.txt doc/${PN}.ps
+ fi
+
+ use sqlite && dodoc doc/sqlite3.table
+ use mysql && dodoc doc/mysql-*.sql
+ use postgres && dodoc doc/pgsql-*.sql
+ doman ${PN}.8
+
+ insinto /etc
+ doins ${PN}.conf
+ fowners root:ulogd /etc/ulogd.conf
+ fperms 640 /etc/ulogd.conf
+
+ newinitd "${FILESDIR}/${PN}.init" ${PN}
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+ diropts -o ulogd -g ulogd
+ keepdir /var/log/ulogd
+}
diff --git a/app-admin/ulogd/ulogd-2.0.5.ebuild b/app-admin/ulogd/ulogd-2.0.5.ebuild
new file mode 100644
index 000000000000..0822bd77efb7
--- /dev/null
+++ b/app-admin/ulogd/ulogd-2.0.5.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+
+inherit autotools-utils eutils linux-info readme.gentoo systemd user
+
+DESCRIPTION="A userspace logging daemon for netfilter/iptables related logging"
+HOMEPAGE="http://netfilter.org/projects/ulogd/index.html"
+SRC_URI="ftp://ftp.netfilter.org/pub/${PN}/${P}.tar.bz2
+ http://www.netfilter.org/projects/${PN}/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~x86"
+IUSE="dbi doc json mysql nfacct +nfct +nflog pcap postgres sqlite -ulog"
+
+RDEPEND="
+ net-firewall/iptables
+ >=net-libs/libnfnetlink-1.0.1
+ dbi? ( dev-db/libdbi )
+ json? ( dev-libs/jansson )
+ nfacct? (
+ >=net-libs/libmnl-1.0.3
+ >=net-libs/libnetfilter_acct-1.0.1
+ )
+ nfct? ( >=net-libs/libnetfilter_conntrack-1.0.2 )
+ nflog? ( >=net-libs/libnetfilter_log-1.0.0 )
+ mysql? ( virtual/mysql )
+ pcap? ( net-libs/libpcap )
+ postgres? ( dev-db/postgresql:= )
+ sqlite? ( dev-db/sqlite:3 )"
+
+DEPEND="${RDEPEND}
+ doc? (
+ app-text/linuxdoc-tools
+ app-text/texlive-core
+ virtual/latex-base
+ )"
+
+PATCHES=( "${FILESDIR}/${P}-remove-db-automagic.patch" )
+
+DOCS=( AUTHORS README TODO )
+DOC_CONTENTS="You must have at least one logging stack enabled to make ulogd work.
+Please edit example configuration located at /etc/ulogd.conf"
+
+pkg_setup() {
+ enewgroup ulogd
+ enewuser ulogd -1 -1 /var/log/ulogd ulogd
+
+ linux-info_pkg_setup
+
+ if kernel_is lt 2 6 14; then
+ die "ulogd2 requires kernel newer than 2.6.14"
+ fi
+
+ if kernel_is lt 2 6 18; then
+ ewarn "You are using kernel older than 2.6.18"
+ ewarn "Some ulogd2 features may be unavailable"
+ fi
+
+ if use nfacct && kernel_is lt 3 3 0; then
+ ewarn "NFACCT input plugin requires kernel newer than 3.3.0"
+ fi
+
+ if use ulog && kernel_is gt 3 17 0; then
+ ewarn "ULOG target was removed since 3.17.0 kernel release"
+ ewarn "Consider enabling NFACCT, NFCT or NFLOG support"
+ fi
+}
+
+src_prepare() {
+ # - make all logs to be kept in a single dir /var/log/ulogd
+ # - place sockets in /run instead of /tmp
+ sed -i \
+ -e 's:var/log:var/log/ulogd:g' \
+ -e 's:tmp:run:g' \
+ ulogd.conf.in || die 'sed on ulogd.conf.in failed'
+
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with dbi)
+ $(use_with json jansson)
+ $(use_enable nfacct)
+ $(use_enable nfct)
+ $(use_enable nflog)
+ $(use_with mysql)
+ $(use_with pcap)
+ $(use_with postgres pgsql)
+ $(use_with sqlite)
+ $(use_enable ulog)
+ )
+ autotools-utils_src_configure
+}
+
+src_compile() {
+ autotools-utils_src_compile
+
+ if use doc; then
+ # prevent access violations from generation of bitmap font files
+ export VARTEXFONTS="${T}"/fonts
+ emake -C doc
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install
+ readme.gentoo_create_doc
+ prune_libtool_files --modules
+
+ if use doc; then
+ dohtml doc/${PN}.html
+ dodoc doc/${PN}.dvi doc/${PN}.txt doc/${PN}.ps
+ fi
+
+ use sqlite && dodoc doc/sqlite3.table
+ use mysql && dodoc doc/mysql-*.sql
+ use postgres && dodoc doc/pgsql-*.sql
+ doman ${PN}.8
+
+ insinto /etc
+ doins ${PN}.conf
+ fowners root:ulogd /etc/ulogd.conf
+ fperms 640 /etc/ulogd.conf
+
+ newinitd "${FILESDIR}/${PN}.init" ${PN}
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+ diropts -o ulogd -g ulogd
+ keepdir /var/log/ulogd
+}