opennds: update to version 10.1.3
[feed/routing.git] / bmx6 / files / etc / init.d / bmx6
old mode 100644 (file)
new mode 100755 (executable)
index c584718..9d48eb4
@@ -1,20 +1,37 @@
 #!/bin/sh /etc/rc.common
+#    Copyright (C) 2017 Gui Iribarren <gui@altermundi.net>
+#    Copyright (C) 2011 Fundacio Privada per a la Xarxa Oberta, Lliure i Neutral guifi.net
+#
+#    This is free software, licensed under the GNU General Public License v3.
+
 START=91
+STOP=91
+USE_PROCD=1
 
+NAME=bmx6
 BIN=/usr/sbin/bmx6
 CONF=/etc/config/bmx6
 PID=/var/run/bmx6/pid
+DEBUG=0
+
+start_service() {
+    procd_open_instance "$NAME"
+    procd_set_param command "$BIN" -f "$CONF" -d "$DEBUG"
 
+    ### Respawn automatically when process dies, after waiting respawn_timeout seconds
+    ### If respawn_retry consecutives respawns die before respawn_threshold seconds (i.e. they crash)
+    ### it will stop trying and leave it dead.
+    procd_set_param respawn ${respawn_threshold:-60} ${respawn_timeout:-3} ${respawn_retry:-5}
 
-start() {
-       #$BIN -f $CONF -d0 > /dev/null &
-       start-stop-daemon -b -x $BIN -S -- -f $CONF
+    procd_set_param limits core="20000"  # Equivalent to 'ulimit -c 20000'
+    procd_close_instance
 }
 
-stop() {
-       start-stop-daemon -p $PID -K
+reload_service() {
+    "$BIN" -c configReload
 }
 
-restart() {
-       stop; sleep 3; start
+service_triggers()
+{
+    procd_add_reload_trigger "bmx6" # Call reload_service() when /etc/config/bmx6 changed and reload_config is run
 }