summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2013-06-26 12:22:13 (GMT)
committer Peter Korsgaard <jacmet@sunsite.dk>2013-06-26 12:22:13 (GMT)
commit0c229f70ea270069e981bfb59e3aea80b21bbcfb (patch)
treecbdd883736cf81ce674f450712d5d863ec5f0dc0
parentdc6d9070b2141afc057ef92253cfbd8199876527 (diff)
downloadbuildroot-0c229f70ea270069e981bfb59e3aea80b21bbcfb.tar.gz
buildroot-0c229f70ea270069e981bfb59e3aea80b21bbcfb.tar.bz2
busybox: use a single udhcpc script, with or without avahi-autoipd
We're currently using two different udhcpc scripts, one in the busybox package and another in the avahi one, which calls avahi-autoipd on dhcp failures. The avahi one actually only does something differently from the default if avahi-autoipd is available, so let's just always use this one instead of the complicated logic about writing the file if not present / overwriting it afterwards. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--package/avahi/avahi.mk2
-rwxr-xr-xpackage/avahi/busybox-udhcpc-default.script58
-rwxr-xr-xpackage/busybox/udhcpc.script21
3 files changed, 20 insertions, 61 deletions
diff --git a/package/avahi/avahi.mk b/package/avahi/avahi.mk
index 89dfc33..028f3ae 100644
--- a/package/avahi/avahi.mk
+++ b/package/avahi/avahi.mk
@@ -147,8 +147,6 @@ endef
AVAHI_POST_INSTALL_TARGET_HOOKS += AVAHI_REMOVE_INITSCRIPT
define AVAHI_INSTALL_AUTOIPD
- rm -rf $(TARGET_DIR)/etc/dhcp3/
- $(INSTALL) -D -m 0755 package/avahi/busybox-udhcpc-default.script $(TARGET_DIR)/usr/share/udhcpc/default.script
$(INSTALL) -m 0755 package/avahi/S05avahi-setup.sh $(TARGET_DIR)/etc/init.d/
rm -f $(TARGET_DIR)/var/lib/avahi-autoipd
$(INSTALL) -d -m 0755 $(TARGET_DIR)/var/lib
diff --git a/package/avahi/busybox-udhcpc-default.script b/package/avahi/busybox-udhcpc-default.script
deleted file mode 100755
index 0bb3dea..0000000
--- a/package/avahi/busybox-udhcpc-default.script
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/sh
-
-# udhcpc script edited by Tim Riker <Tim@Rikers.org>
-
-[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
-
-RESOLV_CONF="/etc/resolv.conf"
-[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
-[ -n "$subnet" ] && NETMASK="netmask $subnet"
-
-case "$1" in
- deconfig)
- grep -q -v ip= /proc/cmdline
- if [ $? -eq 0 ]; then
- /sbin/ifconfig $interface up
- fi
- grep -q -v nfsroot= /proc/cmdline
- if [ $? -eq 0 ]; then
- /sbin/ifconfig $interface 0.0.0.0
- fi
- if [ -x /usr/sbin/avahi-autoipd ]; then
- /usr/sbin/avahi-autoipd -k $interface
- fi
- ;;
-
- leasefail|nak)
- if [ -x /usr/sbin/avahi-autoipd ]; then
- /usr/sbin/avahi-autoipd -wD $interface --no-chroot
- fi
- ;;
-
- renew|bound)
- if [ -x /usr/sbin/avahi-autoipd ]; then
- /usr/sbin/avahi-autoipd -k $interface
- fi
- /sbin/ifconfig $interface $ip $BROADCAST $NETMASK
-
- 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
- [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF
- for i in $dns ; do
- echo adding dns $i
- echo nameserver $i >> $RESOLV_CONF
- done
- ;;
-esac
-
-exit 0
diff --git a/package/busybox/udhcpc.script b/package/busybox/udhcpc.script
index a52a7f8..0bb3dea 100755
--- a/package/busybox/udhcpc.script
+++ b/package/busybox/udhcpc.script
@@ -10,10 +10,29 @@ RESOLV_CONF="/etc/resolv.conf"
case "$1" in
deconfig)
- /sbin/ifconfig $interface 0.0.0.0
+ grep -q -v ip= /proc/cmdline
+ if [ $? -eq 0 ]; then
+ /sbin/ifconfig $interface up
+ fi
+ grep -q -v nfsroot= /proc/cmdline
+ if [ $? -eq 0 ]; then
+ /sbin/ifconfig $interface 0.0.0.0
+ fi
+ if [ -x /usr/sbin/avahi-autoipd ]; then
+ /usr/sbin/avahi-autoipd -k $interface
+ fi
+ ;;
+
+ leasefail|nak)
+ if [ -x /usr/sbin/avahi-autoipd ]; then
+ /usr/sbin/avahi-autoipd -wD $interface --no-chroot
+ fi
;;
renew|bound)
+ if [ -x /usr/sbin/avahi-autoipd ]; then
+ /usr/sbin/avahi-autoipd -k $interface
+ fi
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
if [ -n "$router" ] ; then