busybox/examples/udhcp/simple.script
<<
>>
Prefs
   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