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>
This commit is contained in:
parent
dc6d9070b2
commit
0c229f70ea
|
@ -147,8 +147,6 @@ endef
|
||||||
AVAHI_POST_INSTALL_TARGET_HOOKS += AVAHI_REMOVE_INITSCRIPT
|
AVAHI_POST_INSTALL_TARGET_HOOKS += AVAHI_REMOVE_INITSCRIPT
|
||||||
|
|
||||||
define AVAHI_INSTALL_AUTOIPD
|
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/
|
$(INSTALL) -m 0755 package/avahi/S05avahi-setup.sh $(TARGET_DIR)/etc/init.d/
|
||||||
rm -f $(TARGET_DIR)/var/lib/avahi-autoipd
|
rm -f $(TARGET_DIR)/var/lib/avahi-autoipd
|
||||||
$(INSTALL) -d -m 0755 $(TARGET_DIR)/var/lib
|
$(INSTALL) -d -m 0755 $(TARGET_DIR)/var/lib
|
||||||
|
|
|
@ -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
|
|
|
@ -10,10 +10,29 @@ RESOLV_CONF="/etc/resolv.conf"
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
deconfig)
|
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)
|
renew|bound)
|
||||||
|
if [ -x /usr/sbin/avahi-autoipd ]; then
|
||||||
|
/usr/sbin/avahi-autoipd -k $interface
|
||||||
|
fi
|
||||||
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
|
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
|
||||||
|
|
||||||
if [ -n "$router" ] ; then
|
if [ -n "$router" ] ; then
|
||||||
|
|
Loading…
Reference in New Issue
Block a user