diff options
Diffstat (limited to 'meta/recipes-core/busybox/files/simple.script')
-rw-r--r-- | meta/recipes-core/busybox/files/simple.script | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/meta/recipes-core/busybox/files/simple.script b/meta/recipes-core/busybox/files/simple.script index 5cc21b9de2..27368f0ee5 100644 --- a/meta/recipes-core/busybox/files/simple.script +++ b/meta/recipes-core/busybox/files/simple.script @@ -20,6 +20,9 @@ fi case "$1" in deconfig) + if [ -x /sbin/resolvconf ]; then + /sbin/resolvconf -d "${interface}.udhcpc" + fi if ! root_is_nfs ; then if [ $have_bin_ip -eq 1 ]; then ip addr flush dev $interface @@ -53,19 +56,29 @@ case "$1" in metric=0 for i in $router ; do if [ $have_bin_ip -eq 1 ]; then - ip route add default via $i metric $((metric++)) + ip route add default via $i metric $metric else - route add default gw $i dev $interface metric $((metric++)) 2>/dev/null + route add default gw $i dev $interface metric $metric 2>/dev/null fi + metric=$(($metric + 1)) done fi - echo -n > $RESOLV_CONF - [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF - for i in $dns ; do - echo adding dns $i - echo nameserver $i >> $RESOLV_CONF + # Update resolver configuration file + R="" + [ -n "$domain" ] && R="domain $domain +" + for i in $dns; do + echo "$0: Adding DNS $i" + R="${R}nameserver $i +" done + + if [ -x /sbin/resolvconf ]; then + echo -n "$R" | /sbin/resolvconf -a "${interface}.udhcpc" + else + echo -n "$R" > "$RESOLV_CONF" + fi ;; esac |