Commit 29c6db18 authored by Nathan Angelacos's avatar Nathan Angelacos Committed by Natanael Copa

testing/nfdump: netflow tools Added init.d/nfcapd conf.d/nfcapd

Used fprobe as a model for the nfcapd (netflow collector) init script
Pulls all command line options from the conf.d/nfcapd file
parent 6f3d38ea
......@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=nfdump
pkgver=1.6.4
pkgrel=0
pkgrel=1
pkgdesc="The nfdump tools collect and process netflow data on the command line."
url="http://nfdump.sourceforge.net/"
arch="all"
......@@ -12,7 +12,9 @@ depends_dev=""
makedepends="bison flex $depends_dev"
install=""
subpackages="$pkgname-doc"
source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz"
source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz\
nfcapd.confd\
nfcapd.initd"
_builddir="$srcdir"/$pkgname-$pkgver
prepare() {
......@@ -33,8 +35,17 @@ build() {
}
package() {
depends=fts
cd "$_builddir"
make DESTDIR="$pkgdir" install || return 1
install -D -m755 "$srcdir"/nfcapd.initd \
"$pkgdir"/etc/init.d/nfcapd
install -D -m644 "$srcdir"/nfcapd.confd \
"$pkgdir"/etc/conf.d/nfcapd
}
md5sums="a5ab5657da78f0f57ac7d29f31883949 nfdump-1.6.4.tar.gz"
md5sums="a5ab5657da78f0f57ac7d29f31883949 nfdump-1.6.4.tar.gz
d525c691a62a5746c581f5e9776ed866 nfcapd.confd
d2b60619e18120af68771f3b866177e8 nfcapd.initd"
# Config file for /etc/init.d/nfcapd
# Port we listen on
PORT=2205
# Hostname/address we bind on - default is any available
BINDHOST=127.0.0.1
# IPv4 only
#IPV4=no
# IPv6 only
#IPV6=no
# Join a specific Multicast group
#MULTICASTGROUP=
# Become a packet repeater
#REPEAT=desthost/port
# Ident string, specify the name of the router
#IDENT=
# Base Directory for output files
BASEDIR="/var/log/nfcapd"
# Source is one or more sources: Ident,IP,base_directory
# If you specificy SOURCE, do not specifiy IDENT or BASEDIR
#SOURCE="Foo,192.168.1.1,/var/log/nfcapd/foo Bar,192.168.1.2,/var/log/nfcapd/bar"
# Sample Rate - defaults to source
#SAMPLERATE=
# additional directory sub hierarchy (default none)
#SUBDIR="%Y/%m/%d"
# Extensions to be stored in the netflow data
#EXTENSIONS="all"
# How often to rotate the files (in seconds)
#INTERVAL=300
# Do we align rotation with next even interval
#ALIGN=no
# Run a command at the end of every interval
#ROTATECMD=""
# Auto expire old files (yes/no)
#AUTOEXPIRE=no
# User / Group
UID=nobody
GID=nobody
# Buffer length in bytes (to reduce lost packets)
BUFFLEN=1024000
# Compress the flows with LZO (yes/no)
COMPRESS=yes
#!/sbin/runscript
# Copyright 2012 N Angelacos - Based on Gentoo Foundation fprobe script
# Distributed under the terms of the GNU General Public License v2
depend() {
need net
after firewall
}
BIN=/usr/bin/nfcapd
PIDFILE_EXTRA=${SVCNAME#*.}
if [ -n "${PIDFILE_EXTRA}" ] && [ ${SVCNAME} != "nfcapd" ]; then
PIDFILE="/var/run/nfcapd.${PIDFILE_EXTRA}.pid"
else
PIDFILE="/var/run/nfcapd.pid"
fi
start() {
ebegin "Starting nfcapd"
local OPTS=""
[ -n "${SOURCE}" ] && SOURCE=`echo -n "${SOURCE}" | sed 's/ / -n /g'`
[ "${IPV4}" == "yes" ] && OPTS="${OPTS} -4"
[ "${IPV6}" == "yes" ] && OPTS="${OPTS} -6"
[ "${ALIGN}" == "yes" ] && OPTS="${OPTS} -w"
[ "${AUTOEXPIRE}" == "yes" ] && OPTS="${OPTS} -e"
[ "${COMPRESS}" == "yes" ] && OPTS="${OPTS} -z"
for optname in p:PORT b:BINDHOST j:MULTICASTGROUP i:IFACE R:REPEAT \
I:IDENT l:BASEDIR n:SOURCE s:SAMPLERATE S:SUBDIR \
T:EXTENSIONS t:INTERVAL x:ROTATECMD u:UID g:GID \
B:BUFFLEN ; do
opt="${optname/:*}" optvar="${optname/*:}"
eval optvalue="\$$optvar"
[ -n "$optvalue" ] && OPTS="${OPTS} -${opt} ${optvalue}"
done
OPTS="${OPTS}"
# Attempt to make the basedir if specified
if [ -n "${BASEDIR}" ]; then
mkdir -p "${BASEDIR}"
chown "${UID}":"${GID}" "${BASEDIR}"
fi
start-stop-daemon --start -b --exec $BIN \
--pidfile ${PIDFILE} --make-pidfile \
-- ${OPTS}
eend $?
}
stop() {
ebegin "Stopping nfcapd"
start-stop-daemon --stop --quiet --exec $BIN \
--pidfile ${PIDFILE}
eend $?
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment