#!/bin/sh /etc/rc.common START=98 STOP=20 USE_PROCD=1 handle_controller_select() { local section="$1" config_get_bool local_ctrl "$section" local 0 return 1 } start_service() { local enabled config_load "mapcontroller" config_get_bool enabled controller enabled 1 [ "$enabled" -eq 0 ] && return procd_open_instance procd_set_param command "/usr/sbin/mapcontroller" "-d" if [ -f /etc/config/mapagent ]; then local local_ctrl=0 config_load "mapagent" config_foreach handle_controller_select controller_select [ "$local_ctrl" -eq 0 ] && procd_append_param command "-w" fi procd_set_param respawn # procd_set_param stdout 1 # procd_set_param stderr 1 procd_close_instance } service_triggers() { procd_add_reload_trigger "mapcontroller" } reload_service() { local enabled config_load "mapcontroller" config_get_bool enabled controller enabled 1 if [ "$enabled" -eq 0 ]; then stop return fi pidof "mapcontroller" > /dev/null if [[ $? -ne 0 ]] ; then start return fi procd_send_signal "mapcontroller" }