diff options
author | Tobias Schwarz <info@tobias-schwarz.com> | 2021-07-13 21:08:14 +0300 |
---|---|---|
committer | Polynomdivision <vincent@systemli.org> | 2021-07-31 12:36:39 +0300 |
commit | bc58bd99e81b72f8061473eec5d3454b3504b163 (patch) | |
tree | a28410d9b7870024bc14a97527b4274e10fddcf8 /olsrd | |
parent | 8483b6d99fc6fb2d9c5917892d4493b1b2caaf27 (diff) |
olsrd: improve respawn settings
This increases the amount of seconds to wait before a service restart
attempt from 5 to 15 seconds and allows unlimited retries. Olsrd
sometimes crashes together with a network interface and 5 seconds can
be too short to bring back up a crashed network interface, which is
required for olsrd to restart. It also adds the ability to configure
the wait time (respawn_timeout) and the number of retries
(respawn_retry).
Signed-off-by: Tobias Schwarz <info@tobias-schwarz.com>
Diffstat (limited to 'olsrd')
-rw-r--r-- | olsrd/files/olsrd.config | 4 | ||||
-rw-r--r-- | olsrd/files/olsrd4.init | 12 | ||||
-rw-r--r-- | olsrd/files/olsrd6.config | 4 | ||||
-rw-r--r-- | olsrd/files/olsrd6.init | 10 |
4 files changed, 27 insertions, 3 deletions
diff --git a/olsrd/files/olsrd.config b/olsrd/files/olsrd.config index 15ea80a..25812fa 100644 --- a/olsrd/files/olsrd.config +++ b/olsrd/files/olsrd.config @@ -22,3 +22,7 @@ config LoadPlugin config Interface list interface 'wlan' + +config procd general + option respawn_timeout '15' + option respawn_retry '0' diff --git a/olsrd/files/olsrd4.init b/olsrd/files/olsrd4.init index ceb553a..03836eb 100644 --- a/olsrd/files/olsrd4.init +++ b/olsrd/files/olsrd4.init @@ -24,15 +24,23 @@ boot() start_service() { olsrd_generate_config $OLSRD - + procd_open_instance + + config_load olsrd + local _respawn_timeout + local _respawn_retry + + config_get _respawn_timeout general respawn_timeout + config_get _respawn_retry general respawn_retry + procd_set_param command "$BIN" procd_append_param command -f ${CONF} procd_append_param command -nofork procd_append_param command -pidfile ${PID} # restart if olsrd dies - procd_set_param respawn + procd_set_param respawn 3600 $_respawn_timeout $_respawn_retry # automatically restart olsrd if generated cfg has changed procd_set_param file $CONF diff --git a/olsrd/files/olsrd6.config b/olsrd/files/olsrd6.config index 7a03f28..57ae698 100644 --- a/olsrd/files/olsrd6.config +++ b/olsrd/files/olsrd6.config @@ -9,3 +9,7 @@ config LoadPlugin config Interface list interface 'wlan' + +config procd general + option respawn_timeout '15' + option respawn_retry '0' diff --git a/olsrd/files/olsrd6.init b/olsrd/files/olsrd6.init index 6d0b59b..77b68e8 100644 --- a/olsrd/files/olsrd6.init +++ b/olsrd/files/olsrd6.init @@ -26,13 +26,21 @@ start_service() { olsrd_generate_config $OLSRD procd_open_instance + + config_load olsrd6 + local _respawn_timeout + local _respawn_retry + + config_get _respawn_timeout general respawn_timeout + config_get _respawn_retry general respawn_retry + procd_set_param command "$BIN" procd_append_param command -f ${CONF} procd_append_param command -nofork procd_append_param command -pidfile ${PID} # restart if olsrd dies - procd_set_param respawn + procd_set_param respawn 3600 $_respawn_timeout $_respawn_retry # automatically restart olsrd if generated cfg has changed procd_set_param file $CONF |