diff options
author | stas <stas@FreeBSD.org> | 2007-06-12 20:52:32 +0800 |
---|---|---|
committer | stas <stas@FreeBSD.org> | 2007-06-12 20:52:32 +0800 |
commit | 315f8e845714883233a4379a120f7900f1a1e718 (patch) | |
tree | b0549d0bd85aee6e7c48535f9b1d40e9d15453af /net-mgmt/flow-tools | |
parent | 2053c9548a093150613c843d94150abb52735b04 (diff) | |
download | freebsd-ports-gnome-315f8e845714883233a4379a120f7900f1a1e718.tar.gz freebsd-ports-gnome-315f8e845714883233a4379a120f7900f1a1e718.tar.zst freebsd-ports-gnome-315f8e845714883233a4379a120f7900f1a1e718.zip |
- Add rc.d script for flow-fanout
- Bump PORTREVISION.
Diffstat (limited to 'net-mgmt/flow-tools')
-rw-r--r-- | net-mgmt/flow-tools/Makefile | 4 | ||||
-rw-r--r-- | net-mgmt/flow-tools/files/flow_fanout.in | 105 |
2 files changed, 107 insertions, 2 deletions
diff --git a/net-mgmt/flow-tools/Makefile b/net-mgmt/flow-tools/Makefile index dff324563ff8..20313fe66e27 100644 --- a/net-mgmt/flow-tools/Makefile +++ b/net-mgmt/flow-tools/Makefile @@ -7,7 +7,7 @@ PORTNAME= flow-tools PORTVERSION= 0.68 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= net-mgmt MASTER_SITES= ftp://ftp.eng.oar.net/pub/flow-tools/ @@ -33,7 +33,7 @@ SUB_LIST= FLOW_CAPTURE_SPOOL="${FLOW_CAPTURE_SPOOL}" \ FLOW_CAPTURE_UID="${FLOW_CAPTURE_UID}" \ FLOW_CAPTURE_GID="${FLOW_CAPTURE_GID}" \ FLOW_CAPTURE_PIDDIR="${FLOW_CAPTURE_PIDDIR}" -USE_RC_SUBR= flow_capture +USE_RC_SUBR= flow_capture flow_fanout VARDIR?= ${DESTDIR}/var FLOW_CAPTURE_SPOOL= ${VARDIR}/db/flows diff --git a/net-mgmt/flow-tools/files/flow_fanout.in b/net-mgmt/flow-tools/files/flow_fanout.in new file mode 100644 index 000000000000..1d1369989fd9 --- /dev/null +++ b/net-mgmt/flow-tools/files/flow_fanout.in @@ -0,0 +1,105 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: flow_fanout +# REQUIRE: DAEMON +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable flow-fanout: +# flow_fanout_enable (bool): Set it to "YES" to enable flow-fanout daemon. +# Set to "NO" by default. +# flow_fanout_ip (str): IP address to bind to +# Default to "0.0.0.0" +# flow_fanout_remoteip (str): IP address to accept flows from +# Default to "0.0.0.0" or all IPs +# flow_fanout_port (int): Port to accept flow data on +# Default is "8787" +# flow_fanout_export (str): Where to send flows to. Default is "0/0/8788" +# flow_fanout_flags (str): Custom additional arguments to be passed +# to flow-collector (default ""). +# flow_fanout_profiles (str): A list of configuration profiles to enable. +# This allows you to run several instances of +# flow-fanout with different parameters. +# Consider the following example: +# flow_fanout_enable="YES" +# flow_fanout_ip="85.172.168.9" +# flow_fanout_profiles="r1 r2" +# flow_fanout_r1_port="4444" +# flow_fanout_r1_export="0/0/9500 0/10.5.5.5/9200" +# flow_fanout_r2_port="4445" +# flow_fanout_r2_export="0/0/9551 0/0/9101" +# +# This will run two instances of the flow-fanout +# with parameters taken from appropriate +# flow_fanout_PROFILENAME_xxx variables. For +# unspecified parameters flow_fanout_xxx +# varialbes will be used. + +. /etc/rc.subr + +name="flow_fanout" +rcvar=`set_rcvar` + +setup_profile_vars() +{ + name=flow_fanout_$1 + eval ": \${flow_fanout_${1}_ip=${flow_fanout_ip}}" + eval ": \${flow_fanout_${1}_remoteip=${flow_fanout_remoteip}}" + eval ": \${flow_fanout_${1}_port=${flow_fanout_port}}" + eval ": \${flow_fanout_${1}_export=${flow_fanout_export}}" + eval ": \${flow_fanout_${1}_flags=${flow_fanout_flags}}" + eval "pidfile=${flow_fanout_pid}.\${flow_fanout_${1}_port}" + eval "command_args=\"-p ${flow_fanout_pid} \${flow_fanout_${1}_ip}/\${flow_fanout_${1}_remoteip}/\${flow_fanout_${1}_port} \${flow_fanout_${1}_export}\"" +} + +start_profiles() +{ + unset start_cmd + for _profile in ${flow_fanout_profiles}; do + setup_profile_vars $_profile + run_rc_command "${rc_arg}" + done +} + +stop_profiles() +{ + unset stop_cmd + for _profile in ${flow_fanout_profiles}; do + setup_profile_vars $_profile + run_rc_command "${rc_arg}" + done +} + +load_rc_config $name + +: ${flow_fanout_enable="NO"} +: ${flow_fanout_ip="0.0.0.0"} +: ${flow_fanout_remoteip="0.0.0.0"} +: ${flow_fanout_port="8787"} +: ${flow_fanout_export="0/0/8788"} +: ${flow_fanout_pid="%%FLOW_CAPTURE_PIDDIR%%/flow-fanout.pid"} +: ${flow_fanout_user="flowtools"} +: ${flow_fanout_group="flowtools"} +: ${flow_fanout_flags=""} + +pidfile="${flow_fanout_pid}.${flow_fanout_port}" + +command="%%PREFIX%%/bin/flow-fanout" +command_args="-p ${flow_fanout_pid} ${flow_fanout_ip}/${flow_fanout_remoteip}/${flow_fanout_port} ${flow_fanout_export}" + +cmd="$1" +if [ $# -gt 0 ]; then + shift +fi + +[ -n "$*" ] && flow_fanout_profiles="$*" + +if [ "${flow_fanout_profiles}" ]; then + start_cmd="start_profiles" + stop_cmd="stop_profiles" +fi + +run_rc_command "$cmd" |