X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=mtetherd-net-shutdown.sh;h=b2d12230457fba5bd5030ee0365c4953a66d7b8c;hb=HEAD;hp=eb60d916124ca1eb7357484cfb0431a352bdfbce;hpb=5e75a7c87035ea70391eb652575203b19008d898;p=mtetherd diff --git a/mtetherd-net-shutdown.sh b/mtetherd-net-shutdown.sh index eb60d91..b2d1223 100755 --- a/mtetherd-net-shutdown.sh +++ b/mtetherd-net-shutdown.sh @@ -17,6 +17,42 @@ # along with this program. If not, see . INTERFACE=$1 +WAN=$2 -echo "$INTERFACE" >> /tmp/mtetherd-net-shutdown.log +log() { + echo $@ + echo $(date): $@ >> /tmp/mtetherd-script.log +} + +die() { + echo $@ >&2 + echo $(date): $@ >> /tmp/mtetherd-script.log + exit 1 +} + +if [ "${INTERFACE}" = "" ]; then + die "Usage: $0 []" +fi + +log "Shutting down routing for: ${INTERFACE} ${WAN}" + +echo "${INTERFACE}" | grep -E -q '^[a-zA-Z]+[0-9]+$' || die "Invalid interface name" +if [ "${WAN}" != "" ]; then + echo "${WAN}" | grep -E -q '^[a-zA-Z]+[0-9]+$' || die "Invalid WAN interface name" +fi + +RUNFILE="/var/run/mtetherd.${INTERFACE}.pid" + +log "echo 0 > /proc/sys/net/ipv4/conf/${INTERFACE}/forwarding" +echo 0 > /proc/sys/net/ipv4/conf/${INTERFACE}/forwarding +log "/sbin/start-stop-daemon -K -p \"${RUNFILE}\" -x /usr/sbin/dnsmasq" +msg=$(/sbin/start-stop-daemon -K -p "${RUNFILE}" -x /usr/sbin/dnsmasq 2>&1) +log "$msg" +if [ "${WAN}" != "" ]; then + log "/usr/sbin/iptables -t nat -D POSTROUTING -o ${WAN} -j MASQUERADE" + msg=$(/usr/sbin/iptables -t nat -D POSTROUTING -o ${WAN} -j MASQUERADE 2>&1) + log $msg +fi + +log "Finished shutting down routing for ${INTERFACE}"