| #!/sbin/openrc-run |
| # Copyright 1999-2018 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License, v2 or later |
| |
| extra_started_commands="reload" |
| [ -z "${piddir}" ] && piddir="/run/samba" |
| |
| depend() { |
| after slapd |
| need net |
| use cupsd |
| } |
| |
| DAEMONNAME="${SVCNAME##samba.}" |
| [ "${DAEMONNAME}" != "samba" ] && daemon_list=${DAEMONNAME} |
| |
| signal_do() { |
| local signal="$1" |
| [ -z "${signal}" ] && return 0 |
| |
| local result=0 last_result=0 daemon= cmd_exec= |
| for daemon in ${daemon_list} ; do |
| eval cmd_exec=\$${daemon}_${signal} |
| if [ -n "${cmd_exec}" ]; then |
| ebegin "${my_service_name} -> ${signal}: ${daemon}" |
| #echo ${cmd} '->' ${!cmd} |
| ${cmd_exec} > /dev/null |
| last_result=$? |
| eend ${last_result} |
| fi |
| result=$(( ${result} + ${last_result} )) |
| done |
| return ${result} |
| } |
| |
| start() { |
| ${my_service_PRE} |
| [ -d "${piddir}" ] || mkdir -p "${piddir}" |
| signal_do start && return 0 |
| |
| eerror "Error: starting services (see system logs)" |
| signal_do stop |
| return 1 |
| } |
| stop() { |
| ${my_service_PRE} |
| if signal_do stop ; then |
| ${my_service_POST} |
| return 0 |
| fi |
| } |
| reload() { |
| ${my_service_PRE} |
| signal_do reload |
| } |