1 #!/bin/sh /etc/rc.common
3 .
/usr
/share
/libubox
/jshn.sh
11 logger
-t naywatch
"$msg"
16 ubus
-t 15 wait_for network.interface.
$1 2>/dev
/null
23 config_get _interfaces general interface
25 for interface
in $_interfaces; do
26 wait_for_network interface
29 rc_procd start_service
37 local _watchdog_timeout
42 config_get _check_interval general
"check_interval"
43 config_get _watchdog_timeout general
"watchdog_timeout"
44 config_get _use_watchdog general
"use_watchdog"
45 config_get _save_logs general
"save_logs"
46 config_get _interfaces general
"interface"
48 procd_set_param
command /usr
/bin
/naywatch
"$_check_interval" "$_watchdog_timeout" "$_use_watchdog" "$_save_logs" "$_interfaces"
50 procd_set_param respawn
3600 15 0
52 procd_set_param stdout
1
53 procd_set_param stderr
1
59 exec 3>&- # close file again
63 watchdog_procd_runnig
() {
64 watch
=$
(ubus call system watchdog
)
66 json_get_var watchdogstatus status
67 if [[ "$watchdogstatus" == "running" ]] ; then
75 log
"Naywatch Stopped!"
76 log
"Try to handover watchdog to procd again."
77 for i
in 1 2 3 4 5 6 7 8 9 10 ; do
79 ubus call system watchdog
'{"stop":false}' > /dev
/null
80 if [[ $
(watchdog_procd_runnig
) == "1" ]] ; then
84 if [[ $
(watchdog_procd_runnig
) == "1" ]] ; then
85 log
"Handover sucessfully!"
87 log
"Handover to procd failed! Device can reboot!"