Bjoern A. Zeeb 0696600c41 Move the rc framework out of sbin/init into libexec/rc.
The reasons for this are forward looking to pkgbase:
 * /sbin/init is a special binary; try not to replace it with
   every package update because an rc script was touched.
   (a follow-up commit will make init its own package)
 * having rc in its own place will allow more easy replacement
   of the rc framework with alternatives, such as openrc.

Discussed with:		brd (during BSDCam), kmoore
Requested by:		cem, bz
PR:			231522
Approved by:		re (gjb)
2018-10-17 16:49:11 +00:00

50 lines
812 B
Bash
Executable File

#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: amd
# REQUIRE: rpcbind ypset nfsclient FILESYSTEMS ldconfig
# BEFORE: DAEMON
# KEYWORD: nojail shutdown
. /etc/rc.subr
name="amd"
desc="Automatically mount filesystems"
rcvar="amd_enable"
command="/usr/sbin/${name}"
start_precmd="amd_precmd"
command_args="&"
extra_commands="reload"
amd_precmd()
{
force_depend nfsclient nfs_client || return 1
force_depend rpcbind || return 1
case ${amd_map_program} in
[Nn][Oo] | '')
;;
*)
rc_flags="${rc_flags} `echo $(eval ${amd_map_program})`"
;;
esac
case "${amd_flags}" in
'')
if [ ! -r /etc/amd.conf ]; then
warn 'amd will not load without arguments'
return 1
fi
;;
*)
rc_flags="-p ${rc_flags}"
command_args="> /var/run/amd.pid 2> /dev/null"
;;
esac
}
load_rc_config $name
run_rc_command "$1"