p2p-action-udhcp.sh revision 256281
134378Sjb#!/bin/sh 234378Sjb 334378SjbIFNAME=$1 434378SjbCMD=$2 534378Sjb 634378Sjbkill_daemon() { 734378Sjb NAME=$1 834378Sjb PF=$2 934378Sjb 1034378Sjb if [ ! -r $PF ]; then 1134378Sjb return 1234378Sjb fi 1334378Sjb 1434378Sjb PID=`cat $PF` 1534378Sjb if [ $PID -gt 0 ]; then 1634378Sjb if ps $PID | grep -q $NAME; then 1734378Sjb kill $PID 1834378Sjb fi 1934378Sjb fi 2034378Sjb rm $PF 2134378Sjb} 2234378Sjb 2334378Sjbif [ "$CMD" = "P2P-GROUP-STARTED" ]; then 2434378Sjb GIFNAME=$3 2534378Sjb if [ "$4" = "GO" ]; then 2634378Sjb kill_daemon udhcpc /var/run/udhcpc-$GIFNAME.pid 2734378Sjb ifconfig $GIFNAME 192.168.42.1 up 2834378Sjb udhcpd /etc/udhcpd-p2p.conf 2934378Sjb fi 3034378Sjb if [ "$4" = "client" ]; then 3134378Sjb kill_daemon udhcpc /var/run/udhcpc-$GIFNAME.pid 3250476Speter kill_daemon udhcpd /var/run/udhcpd-$GIFNAME.pid 3334378Sjb udhcpc -i $GIFNAME -p /var/run/udhcpc-$GIFNAME.pid \ 3434378Sjb -s /etc/udhcpc.script 3534378Sjb fi 3634378Sjbfi 3735500Sjb 3834378Sjbif [ "$CMD" = "P2P-GROUP-REMOVED" ]; then 3934378Sjb GIFNAME=$3 4034378Sjb if [ "$4" = "GO" ]; then 4171579Sdeischen kill_daemon udhcpd /var/run/udhcpd-$GIFNAME.pid 4234378Sjb ifconfig $GIFNAME 0.0.0.0 4334378Sjb fi 4475368Sdeischen if [ "$4" = "client" ]; then 4575368Sdeischen kill_daemon udhcpc /var/run/udhcpc-$GIFNAME.pid 4675368Sdeischen ifconfig $GIFNAME 0.0.0.0 4734378Sjb fi 4875368Sdeischenfi 4934378Sjb 5071579Sdeischenif [ "$CMD" = "P2P-CROSS-CONNECT-ENABLE" ]; then 5171579Sdeischen GIFNAME=$3 5271579Sdeischen UPLINK=$4 5371579Sdeischen # enable NAT/masquarade $GIFNAME -> $UPLINK 5471579Sdeischen iptables -P FORWARD DROP 5571579Sdeischen iptables -t nat -A POSTROUTING -o $UPLINK -j MASQUERADE 5671579Sdeischen iptables -A FORWARD -i $UPLINK -o $GIFNAME -m state --state RELATED,ESTABLISHED -j ACCEPT 5771579Sdeischen iptables -A FORWARD -i $GIFNAME -o $UPLINK -j ACCEPT 5871579Sdeischen sysctl net.ipv4.ip_forward=1 5971579Sdeischenfi 6034378Sjb 6134378Sjbif [ "$CMD" = "P2P-CROSS-CONNECT-DISABLE" ]; then 6234378Sjb GIFNAME=$3 6336805Sjb UPLINK=$4 6434378Sjb # disable NAT/masquarade $GIFNAME -> $UPLINK 6534378Sjb sysctl net.ipv4.ip_forward=0 6634378Sjb iptables -t nat -D POSTROUTING -o $UPLINK -j MASQUERADE 6734378Sjb iptables -D FORWARD -i $UPLINK -o $GIFNAME -m state --state RELATED,ESTABLISHED -j ACCEPT 6836805Sjb iptables -D FORWARD -i $GIFNAME -o $UPLINK -j ACCEPT 6934378Sjbfi 7034378Sjb