]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blame - src/initscripts/init.d/miniupnpd
core81: set need reboot flag and restart apache.
[people/teissler/ipfire-2.x.git] / src / initscripts / init.d / miniupnpd
CommitLineData
54194ba4
MT
1#!/bin/sh
2########################################################################
3# Begin $rc_base/init.d/miniupnpd
4#
5# Description : Miniupnp daemon
6#
7# Authors : Michael Tremer <michael.tremer@ipfire.org>
8#
9########################################################################
10
11. /etc/sysconfig/rc
12. ${rc_functions}
13
14if [ ! -e /etc/miniupnpd/id ]; then
15 uuidgen > /etc/miniupnpd/id
16fi
17
18UUID=$(cat /etc/miniupnpd/id)
19
20EXT_DEV=$(cat /var/ipfire/red/iface)
21EXT_IP4=$(cat /var/ipfire/red/local-ipaddress)
22
23. /var/ipfire/ethernet/settings
24
25for i in GREEN_ADDRESS BLUE_ADDRESS; do
26 [ -n "${!i}" ] && LISTEN_IP="${LISTEN_IP} -a ${!i}"
27done
28
29function flush_iptables() {
30 # Flush iptables to remove all entries that were left
31 iptables -F UPNPFW
32 iptables -t nat -F UPNPFW
33}
34
35case "${1}" in
36 start)
37 boot_mesg "Starting miniupnpd..."
38
39 flush_iptables
40
41 loadproc miniupnpd -f /etc/miniupnpd/miniupnpd.conf \
42 -i ${EXT_DEV} -o ${EXT_IP4} ${LISTEN_IP} \
43 -u ${UUID}
44 ;;
45
46 stop)
47 boot_mesg "Stopping miniupnpd..."
48 killproc miniupnpd
49
50 flush_iptables
51 ;;
52
53 restart)
54 ${0} stop
55 sleep 1
56 ${0} start
57 ;;
58
59 status)
60 statusproc miniupnpd
61 ;;
62
63 *)
64 echo "Usage: ${0} {start|stop|restart|status}"
65 exit 1
66 ;;
67esac
68
69# End $rc_base/init.d/miniupnpd