Watchcat was failing to restart layer-3 interfaces when in mode
'restart_iface'. The previously attempted fix made the situation
worse in that it resulted in layer 2 interfaces also failing to
start.
This was because we are passed the interface name (e.g. eth0,
l2p0, or br-lan), but ifup needs the logical network (e.g. 'lan'
which corresponds to the network device).
Update to use find_config from /lib/network/config.sh to find the
logical network from the interface name, and use ifup on the
logical network to restart the underlying interface(s) associated
with the logical network.
Signed-off-by: Daniel F. Dickinson <redacted>
PKG_NAME:=watchcat
PKG_VERSION:=1
-PKG_RELEASE:=21
+PKG_RELEASE:=22
PKG_MAINTAINER:=Roger D <rogerdammit@gmail.com>
PKG_LICENSE:=GPL-2.0
# This is free software, licensed under the GNU General Public License v2.
#
+. /lib/network/config.sh
+
get_ping_size() {
ps=$1
case "$ps" in
}
watchcat_restart_network_iface() {
- logger -p daemon.info -t "watchcat[$$]" "Restarting network interface: \"$1\"."
- ifup "$1"
+ local network
+ network="$(find_config "$1")"
+ logger -p daemon.info -t "watchcat[$$]" "Restarting network interface: \"$1\" (network: \"$network\")."
+ ifup "$network"
}
watchcat_run_script() {