X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=net%2Fminiupnpd%2Ffiles%2Fminiupnpd.init;h=22a71ad8ea8d02ce16ac72e0f00eee7be0a72415;hp=6a2c0d15c4565ab0272c8d93d17a12f7579b9bfd;hb=a372197240470f9136652f0a2703114c61ab1701;hpb=e48d0e582ae824bc3d692cde5bd8ab1d871b69a5 diff --git a/net/miniupnpd/files/miniupnpd.init b/net/miniupnpd/files/miniupnpd.init index 6a2c0d15c4..22a71ad8ea 100644 --- a/net/miniupnpd/files/miniupnpd.init +++ b/net/miniupnpd/files/miniupnpd.init @@ -1,26 +1,37 @@ -#!/bin/sh -upnpd_enabled=$(nvram get upnp_enabled) -if [ "$upnpd_enabled" = "1" ]; then +#!/bin/sh /etc/rc.common +START=95 +start() { + config_load "upnpd" + include /lib/network + scan_interfaces + config_load /var/state/network + config_get ifname wan ifname + config_get ipaddr lan ipaddr + echo "miniupnpd starting ..." - iptables_flush.sh 2>&- >&- - killall miniupnpd 2>&- - iptables_removeall.sh 2>&- >&- + stop iptables_init.sh # get bitspeed information, if provided - upnpd_up_bitspeed=$(nvram get upnpd_up_bitspeed) - upnpd_down_bitspeed=$(nvram get upnpd_down_bitspeed) + config_get upnp_up_bitspeed config upload + config_get upnp_down_bitspeed config download + bitspeed_str="" [ -n "$upnpd_up_bitspeed" ] && [ -n "$upnpd_down_bitspeed" ] && { # covert to bytespeed - let upnpd_up_bytespeed=$upnpd_up_bitspeed*1024/8 - let upnpd_down_bytespeed=$upnpd_down_bitspeed*1024/8 + upnpd_up_bytespeed=$(($upnpd_up_bitspeed * 1024 / 8)) + upnpd_down_bytespeed=$(($upnpd_down_bitspeed * 1024 / 8)) bitspeed_str="-B $upnpd_down_bytespeed $upnpd_up_bytespeed" } - upnpd_log=$(nvram get upnpd_log_output) - if [ "$upnpd_log" = "1" ]; then - miniupnpd -i $(nvram get wan_ifname) -a $(nvram get lan_ipaddr) -p 5000 -U "$bitspeed_str" -d | logger -t miniupnpd & + config_get log_output config log_output + if [ "$log_output" = "1" ]; then + miniupnpd -i "$ifname" -a "$ipaddr" -p 5000 -U $bitspeed_str -d | logger -t miniupnpd & else - miniupnpd -i $(nvram get wan_ifname) -a $(nvram get lan_ipaddr) -p 5000 -U "$bitspeed_str" + miniupnpd -i "$ifname" -a "$ipaddr" -p 5000 -U $bitspeed_str fi -else - echo "miniupnpd service is disabled. Set nvram upnp_enabled to '1' to enable." -fi +} + +stop() { + pnpd_pid=$(cat /var/run/miniupnpd.pid) 2>&- >&- + iptables_flush.sh 2>&- >&- + kill $pnpd_pid 2>&- + iptables_removeall.sh 2>&- >&- +}