#!/bin/sh /etc/rc.common

START=35
STOP=85
USE_PROCD=1

start_service() {
	procd_open_instance
	procd_set_param command /usr/sbin/accel-pppd -c /etc/accel-ppp/accel-ppp.conf
	procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
	procd_set_param stdout 1
	procd_set_param stderr 1
	procd_set_param pidfile /var/run/accel-pppd.pid
	procd_close_instance
}

stop_service() {
	local pid
	if [ -f /var/run/accel-pppd.pid ]; then
		pid=$(cat /var/run/accel-pppd.pid)
		kill -TERM "$pid" 2>/dev/null
		local i=0
		while kill -0 "$pid" 2>/dev/null && [ $i -lt 10 ]; do
			sleep 1
			i=$((i + 1))
		done
		kill -KILL "$pid" 2>/dev/null
		rm -f /var/run/accel-pppd.pid
	fi
}

reload_service() {
	local pid
	if [ -f /var/run/accel-pppd.pid ]; then
		pid=$(cat /var/run/accel-pppd.pid)
		kill -HUP "$pid" 2>/dev/null
	fi
}

service_triggers() {
	procd_add_reload_trigger accel-ppp
}

