nodogsplash: wait for interface to appear
This commit is contained in:
parent
eb80008326
commit
893890ae2b
|
@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
|
|||
PKG_NAME:=nodogsplash
|
||||
PKG_FIXUP:=autoreconf
|
||||
PKG_VERSION:=1.0.1
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
|
|
|
@ -119,6 +119,22 @@ setup_firewall() {
|
|||
done
|
||||
}
|
||||
|
||||
wait_for_interface()
|
||||
{
|
||||
local ifname="$1"
|
||||
local timeout=10
|
||||
for i in $(seq $timeout); do
|
||||
if [ $(ip -4 addr show dev $ifname 2> /dev/null | grep -c inet) -ne 0 ]; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
if [ $i == $timeout ] ; then
|
||||
nolog error "$ifname not detected, NoDogSplash not starting."
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
generate_uci_config() {
|
||||
local cfg="$1"
|
||||
local val
|
||||
|
@ -161,6 +177,8 @@ generate_uci_config() {
|
|||
return 1
|
||||
fi
|
||||
|
||||
wait_for_interface "$ifname"
|
||||
|
||||
echo "GatewayInterface $ifname" >> $CONFIGFILE
|
||||
|
||||
append_config_option "$CONFIGFILE" "$cfg" gatewayname
|
||||
|
|
Loading…
Reference in New Issue