From: Gui Iribarren Date: Sun, 26 Mar 2017 00:41:57 +0000 (-0300) Subject: bmx6: migrate init.d script to procd syntax X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=a3972affe78f433ccb95b876ae596397cf707372;p=feed%2Frouting.git bmx6: migrate init.d script to procd syntax Signed-off-by: Gui Iribarren --- diff --git a/bmx6/Makefile b/bmx6/Makefile index 91d9270..1741d94 100644 --- a/bmx6/Makefile +++ b/bmx6/Makefile @@ -33,7 +33,7 @@ PKG_SOURCE_URL:=git://github.com/axn/bmx6.git PKG_REV:=4016a1980d900309771e432d1f7c741d6c48d477 PKG_VERSION:=r2017032301 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_LICENSE:=GPL-2.0 PKG_SOURCE_VERSION:=$(PKG_REV) diff --git a/bmx6/files/etc/init.d/bmx6 b/bmx6/files/etc/init.d/bmx6 index cb2d5b3..9d48eb4 100755 --- a/bmx6/files/etc/init.d/bmx6 +++ b/bmx6/files/etc/init.d/bmx6 @@ -1,41 +1,37 @@ #!/bin/sh /etc/rc.common +# Copyright (C) 2017 Gui Iribarren # Copyright (C) 2011 Fundacio Privada per a la Xarxa Oberta, Lliure i Neutral guifi.net # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# The full GNU General Public License is included in this distribution in -# the file called "COPYING". +# 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() { - cd /root/ - while pgrep -f mac80211.sh ; do sleep 1; done - ulimit -c 20000 - $BIN -f $CONF -d0 > /dev/null & + 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 }