From: Paul Donald Date: Sat, 31 Jan 2026 14:52:21 +0000 (+0100) Subject: wireguard-tools: enable reload without teardown X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a576dec7468b9d1185b383ba17ee9c7b2151a5d;p=thirdparty%2Fopenwrt.git wireguard-tools: enable reload without teardown - preserve (active) interface (at reload) Signed-off-by: Paul Donald Link: https://github.com/openwrt/openwrt/pull/21784 Signed-off-by: Robert Marko --- diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh index e8867d65f7f..738714e1c6b 100644 --- a/package/network/utils/wireguard-tools/files/wireguard.sh +++ b/package/network/utils/wireguard-tools/files/wireguard.sh @@ -56,12 +56,10 @@ proto_wireguard_setup() { config_get nohostroute "${config}" "nohostroute" config_get tunlink "${config}" "tunlink" - ip link del dev "${config}" 2>/dev/null - ip link add dev "${config}" type wireguard + # Add the link only if it didn't already exist + ip -br link show "${config}" >/dev/null 2>&1 || ip link add dev "${config}" type wireguard - if [ "${mtu}" ]; then - ip link set mtu "${mtu}" dev "${config}" - fi + [ -n "${mtu}" ] && ip link set mtu "${mtu}" dev "${config}" proto_init_update "${config}" 1