#!/bin/sh # # $FreeBSD$ # # REQUIRE: DAEMON # PROVIDE: xrdp sesman # . %%RC_SUBR%% name="xrdp" rcvar=`set_rcvar` xrdp_daemons="xrdp sesman" # Read settings and set default values. load_rc_config "$name" : ${xrdp_enable="NO"} # Enable/disable dependent daemon. if [ -n "${rcvar}" ] && checkyesno "${rcvar}"; then : ${sesman_enable="YES"} else : ${sesman_enable="NO"} fi # Commands. extra_commands="reload status" start_cmd="xrdp_cmd" stop_cmd="xrdp_cmd" status_cmd="xrdp_cmd" reload_cmd="xrdp_cmd" rcvar_cmd="xrdp_cmd" # Command wrapper to call each of them per daemon. xrdp_cmd() { local name rcvar command pidfile xrdp_daemons # Prevent recursive calling. unset "${rc_arg}_cmd" # Stop processes in the reverse to order. if [ "${rc_arg}" = "stop" ] ; then xrdp_daemons=$(reverse_list ${xrdp_daemons}) fi # Apply to all the daemons. for name in ${xrdp_daemons}; do rcvar=$(set_rcvar) command="%%PREFIX%%/bin/${name}" pidfile="/var/run/${name}.pid" run_rc_command "${_rc_prefix}${rc_arg}" ${rc_extra_args} done } run_rc_command "$1"