summaryrefslogtreecommitdiffstats
path: root/net/darkstat/files/darkstat.init
blob: 8499e3e4d42675fa1f87f153dafdf7c4cb872b20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/sh /etc/rc.common
# Copyright (C) 2007-2012 OpenWrt.org

START=60
RUN_D=/var/empty
PID_F=$RUN_D/darkstat.pid

start() {
	mkdir -p $RUN_D
	. /lib/functions/network.sh
	config_load darkstat
	config_foreach start_darkstat darkstat
}

start_darkstat() {
	local cfg="$1"
	config_get interface "$cfg" interface
	config_get httpaddr "$cfg" httpaddr
	config_get httpport "$cfg" httpport

	network_get_device ifname "$interface" && {
		/usr/sbin/darkstat --verbose \
			-i "$ifname" \
			${httpaddr:+-b "$httpaddr"} \
			${httpport:+-p "$httpport"} \
			--chroot $RUN_D \
			--pidfile $PID_F
	}
}

stop() {
	service_kill darkstat $PID_F
	rm -f $PID_F
}