small-packages/luci-app-dae/root/etc/hotplug.d/iface/98-dae
2026-05-10 09:48:30 +08:00

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
) &