summaryrefslogtreecommitdiffstats
path: root/openwrt/package/base-files/default/usr/share/udhcpc/default.script
blob: 0c08985e717b4ca79db3a8bbd6e885e1102942a1 (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
35
36
37
38
39
40
41
42
#!/bin/sh
# udhcpc script edited by Tim Riker <Tim@Rikers.org>
# (slightly modified for OpenWrt)

[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1

RESOLV_CONF="/tmp/resolv.conf"

case "$1" in
        deconfig)
                ifconfig $interface 0.0.0.0
                ;;

        renew|bound)
                ifconfig $interface $ip \
                netmask ${subnet:-255.255.255.0} \
                broadcast ${broadcast:-+}

                if [ -n "$router" ] ; then
                        echo "deleting routers"
                        while route del default gw 0.0.0.0 dev $interface ; do
                                :
                        done

                        for i in $router ; do
                                route add default gw $i dev $interface
                        done
                fi

                echo -n > $RESOLV_CONF
                ${domain:+echo search $domain} >> $RESOLV_CONF
                for i in $dns ; do
                        echo adding dns $i
                        echo nameserver $i >> $RESOLV_CONF

		# user rules
		[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user

                done
                ;;
esac
exit 0