1#!/bin/sh
2# udhcpc script edited by Tim Riker <Tim@Rikers.org>
3
4RESOLV_CONF="/etc/resolv.conf"
5
6[ -n "$1" ] || { echo "Error: should be called from udhcpc"; exit 1; }
7
8NETMASK=""
9[ -n "$subnet" ] && NETMASK="netmask $subnet"
10BROADCAST="broadcast +"
11[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
12
13case "$1" in
14	deconfig)
15		echo "Setting IP address 0.0.0.0 on $interface"
16		ifconfig $interface 0.0.0.0
17		;;
18
19	renew|bound)
20		echo "Setting IP address $ip on $interface"
21		ifconfig $interface $ip $NETMASK $BROADCAST
22
23		if [ -n "$router" ] ; then
24			echo "Deleting routers"
25			while route del default gw 0.0.0.0 dev $interface ; do
26				:
27			done
28
29			metric=0
30			for i in $router ; do
31				echo "Adding router $i"
32				route add default gw $i dev $interface metric $((metric++))
33			done
34		fi
35
36		echo "Recreating $RESOLV_CONF"
37		echo -n > $RESOLV_CONF-$$
38		[ -n "$domain" ] && echo "search $domain" >> $RESOLV_CONF-$$
39		for i in $dns ; do
40			echo " Adding DNS server $i"
41			echo "nameserver $i" >> $RESOLV_CONF-$$
42		done
43		mv $RESOLV_CONF-$$ $RESOLV_CONF
44		;;
45esac
46
47exit 0
48