Signed-off-by: Ross Vandegrift <ross@kallisti.us>lilik-openwrt-22.03
@ -0,0 +1,54 @@ | |||
# | |||
# Copyright (C) 2007-2011 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=softflowd | |||
PKG_VERSION:=0.9.9 | |||
PKG_RELEASE:=1 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=http://softflowd.googlecode.com/files/ | |||
PKG_MD5SUM:=ba83e2715e6250e6645ebcaa9ae1009d | |||
PKG_MAINTAINER:=Ross Vandegrift <ross@kallisti.us> | |||
PKG_LICENSE:=BSD-3-Clause | |||
PKG_FIXUP:=autoreconf | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/softflowd | |||
SECTION:=net | |||
CATEGORY:=Network | |||
DEPENDS:=+libpcap | |||
TITLE:=softflowd | |||
URL:=http://code.google.com/p/softflowd/ | |||
endef | |||
define Package/softflowd/description | |||
Software netflow exporter | |||
endef | |||
define Build/Compile | |||
$(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" softflowd softflowctl | |||
endef | |||
define Package/softflowd/install | |||
$(INSTALL_DIR) $(1)/usr/sbin | |||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/softflowd $(1)/usr/sbin/ | |||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/softflowctl $(1)/usr/sbin/ | |||
$(INSTALL_DIR) $(1)/etc/config | |||
$(INSTALL_DATA) ./files/$(PKG_NAME).config $(1)/etc/config/$(PKG_NAME) | |||
$(INSTALL_DIR) $(1)/etc/init.d | |||
$(INSTALL_BIN) ./files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME) | |||
endef | |||
define Package/softflowd/conffiles | |||
/etc/config/softflowd | |||
endef | |||
$(eval $(call BuildPackage,softflowd)) |
@ -0,0 +1,14 @@ | |||
config softflowd | |||
option enabled '0' | |||
option interface 'br-lan' | |||
option pcap_file '' | |||
option timeout '' | |||
option max_flows '8192' | |||
option host_port '' | |||
option pid_file '/var/run/softflowd.pid' | |||
option control_socket '/var/run/softflowd.ctl' | |||
option export_version '5' | |||
option hoplimit '' | |||
option tracking_level 'full' | |||
option track_ipv6 '0' | |||
option sampling_rate '100' |
@ -0,0 +1,74 @@ | |||
#!/bin/sh /etc/rc.common | |||
# Copyright (C) 2007-2011 OpenWrt.org | |||
START=50 | |||
append_bool() { | |||
local section="$1" | |||
local option="$2" | |||
local value="$3" | |||
local _val | |||
config_get_bool _val "$section" "$option" '0' | |||
[ "$_val" -gt 0 ] && append args "$3" | |||
} | |||
append_string() { | |||
local section="$1" | |||
local option="$2" | |||
local value="$3" | |||
local _val | |||
config_get _val "$section" "$option" | |||
[ -n "$_val" ] && append args "$3 $_val" | |||
} | |||
start_instance() { | |||
local section="$1" | |||
config_get_bool enabled "$section" 'enabled' '0' | |||
[ $enabled -gt 0 ] || return 1 | |||
config_get pid_file "$section" 'pid_file' | |||
args="" | |||
append_string "$section" 'interface' '-i' | |||
append_string "$section" 'pcap_file' '-r' | |||
append_string "$section" 'timeout' '-t' | |||
append_string "$section" 'max_flows' '-m' | |||
append_string "$section" 'host_port' '-n' | |||
append_string "$section" 'pid_file' '-p' | |||
append_string "$section" 'control_socket' '-c' | |||
append_string "$section" 'export_version' '-v' | |||
append_string "$section" 'hoplimit' '-L' | |||
append_string "$section" 'tracking_level' '-T' | |||
append_string "$section" 'sampling_rate' '-s' | |||
append_bool "$section" track_ipv6 '-6' | |||
SERVICE_PID_FILE="$pid_file" \ | |||
service_start /usr/sbin/softflowd $args${pid_file:+ -p $pid_file} | |||
} | |||
stop_instance() { | |||
local section="$1" | |||
config_get_bool enabled "$section" 'enabled' '0' | |||
[ $enabled -gt 0 ] || return 1 | |||
config_get control_socket "$section" 'control_socket' | |||
[ -n "control_socket" -a -S $control_socket ] && { | |||
/usr/sbin/softflowctl -c $control_socket exit | |||
} | |||
} | |||
start() { | |||
mkdir -m 0755 -p /var/empty | |||
config_load 'softflowd' | |||
config_foreach start_instance 'softflowd' | |||
} | |||
stop() { | |||
config_load 'softflowd' | |||
config_foreach stop_instance 'softflowd' | |||
service_stop /usr/sbin/softflowd | |||
} |