🔥 Sync 2026-07-19 20:20:12

This commit is contained in:
github-actions[bot] committed 2026-07-19 20:20:12 +08:00
1 parent 8570b2d838
commit 0e974e420a
29 files changed
+1161 -1032

No files matched your search

+1 -1
View File
@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=daed
PKG_VERSION:=2026.07.17
PKG_RELEASE:=24
PKG_RELEASE:=25
PKG_SOURCE:=daed-src-2026.07.17-1e3ce69d866f.tar.gz
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-daede/releases/download/daed-src
+5 -1
View File
@@ -15,9 +15,13 @@ daed_cleanup_runtime() {
fi
if ! ip netns del daens 2>/dev/null; then
umount /run/netns/daens 2>/dev/null
umount -l /run/netns/daens 2>/dev/null
rm -f /run/netns/daens
fi
ip link del dae0 2>/dev/null || true
[ ! -e /run/netns/daens ] || return 1
! ip netns list 2>/dev/null | awk '$1 == "daens" { found=1 } END { exit !found }' || return 1
! ip link show dae0 >/dev/null 2>&1 || return 1
}
+4 -1
View File
@@ -2,5 +2,8 @@
. /usr/share/daed/cleanup.sh
daed_cleanup_runtime
if ! daed_cleanup_runtime; then
echo "daed: stale network state could not be removed" >&2
exit 1
fi
exec /usr/bin/daed "$@"
@@ -0,0 +1,51 @@
From: kenzok8 <kenzok8@noreply>
Date: 2026-07-19
Subject: [PATCH] daed: bound startup network wait
Purge stale dae filters before probing the network and stop waiting after 60
seconds so the dashboard remains available for recovery.
---
--- a/dae/utils.go
+++ b/dae/utils.go
@@ -97 +97 @@
-func WaitForNetwork(log *logrus.Logger) {
+func WaitForNetwork(log *logrus.Logger) error {
@@ -98,0 +99 @@
+ deadline := time.Now().Add(60 * time.Second)
@@ -117,0 +119,3 @@
+ if time.Now().After(deadline) {
+ return fmt.Errorf("network unavailable after 60 seconds")
+ }
@@ -136,0 +141 @@
+ return nil
--- a/dae/run.go
+++ b/dae/run.go
@@ -35 +35,2 @@
-var onceWaitingNetwork sync.Once
+var waitingNetworkMu sync.Mutex
+var networkReady bool
@@ -54,0 +56,13 @@
+func waitForNetwork(log *logrus.Logger) error {
+ waitingNetworkMu.Lock()
+ defer waitingNetworkMu.Unlock()
+ if networkReady {
+ return nil
+ }
+ if err := WaitForNetwork(log); err != nil {
+ return err
+ }
+ networkReady = true
+ return nil
+}
+
@@ -223,0 +238,3 @@
+ if bpf == nil {
+ control.PurgeStaleTCFilters(log)
+ }
@@ -231,3 +248,3 @@
- onceWaitingNetwork.Do(func() {
- WaitForNetwork(log)
- })
+ if err = waitForNetwork(log); err != nil {
+ return nil, err
+ }