3e9cc1fa6a
git-svn-id: svn://svn.openwrt.org/openwrt/packages@31959 3c298f89-4303-0410-b956-a3cf2f4a3e73
59 lines
1.0 KiB
Bash
59 lines
1.0 KiB
Bash
#!/bin/sh /etc/rc.common
|
|
# Copyright (C) 2006-2012 OpenWrt.org
|
|
|
|
START=50
|
|
|
|
SERVICE_DAEMONIZE=1
|
|
SERVICE_WRITE_PID=1
|
|
|
|
append_string() {
|
|
local var="$1"
|
|
local section="$2"
|
|
local option="$3"
|
|
local val="$4"
|
|
local _val
|
|
config_get _val "$section" "$option"
|
|
[ -n "$_val" ] && append "$var" "$val $_val"
|
|
}
|
|
|
|
section_enabled() {
|
|
local enabled
|
|
config_get_bool enabled "$1" 'enabled' 0
|
|
[ $enabled -gt 0 ]
|
|
}
|
|
|
|
start_instance() {
|
|
local section="$1"
|
|
local args
|
|
|
|
section_enabled "$section" || return 1
|
|
|
|
append_string args "$section" 'listen_ip' '-l'
|
|
append_string args "$section" 'server_ip' '-s'
|
|
append_string args "$section" 'conn_limit' '-c'
|
|
|
|
SERVICE_PID_FILE="/var/run/frickin-${section}.pid"
|
|
service_start /usr/sbin/frickin $args
|
|
}
|
|
|
|
stop_instance() {
|
|
local section="$1"
|
|
local id
|
|
local if
|
|
|
|
section_enabled "$section" || return 1
|
|
|
|
SERVICE_PID_FILE="/var/run/frickin-${section}.pid"
|
|
service_stop /usr/sbin/frickin
|
|
}
|
|
|
|
start() {
|
|
config_load 'frickin'
|
|
config_foreach start_instance 'frickin'
|
|
}
|
|
|
|
stop() {
|
|
config_load 'frickin'
|
|
config_foreach stop_instance 'frickin'
|
|
}
|