mirror of
https://github.com/caiwx86/small-packages.git
synced 2026-07-29 18:01:55 +08:00
36 lines
1.0 KiB
Bash
36 lines
1.0 KiB
Bash
#!/bin/sh
|
|
[ "$ACTION" = ifup ] || [ "$ACTION" = ifupdate ] || exit 0
|
|
[ "$ACTION" = ifupdate ] && [ -z "$IFUPDATE_ADDRESSES" ] && [ -z "$IFUPDATE_DATA" ] && exit 0
|
|
|
|
UPTIME=$(cut -d. -f1 /proc/uptime 2>/dev/null)
|
|
[ -n "$UPTIME" ] && [ "$UPTIME" -lt 30 ] && exit 0
|
|
|
|
. /lib/functions/network.sh
|
|
network_flush_cache
|
|
network_find_wan6 NET_IF6
|
|
network_find_wan NET_IF
|
|
[ "$INTERFACE" != "$NET_IF6" ] && [ "$INTERFACE" != "$NET_IF" ] && exit 0
|
|
|
|
(
|
|
LOCK_FILE="/tmp/lock/dae_hotplug_lock"
|
|
if [ -f "$LOCK_FILE" ]; then
|
|
exit 1
|
|
else
|
|
echo $$ > "$LOCK_FILE" 2>/dev/null
|
|
trap 'rm -f "$LOCK_FILE"' EXIT
|
|
|
|
sleep 30
|
|
|
|
DAE_STATUS=$(/etc/init.d/dae status 2>/dev/null)
|
|
|
|
if echo "$DAE_STATUS" | grep -q 'running'; then
|
|
/etc/init.d/dae hot_reload 2>&1
|
|
else
|
|
DAE_ENABLED=$(uci -q get dae.config.enabled)
|
|
|
|
if [ "$DAE_ENABLED" = "1" ]; then
|
|
/etc/init.d/dae start 2>&1
|
|
fi
|
|
fi
|
|
fi
|
|
) & |