04f0f225dd
to allow them to do a "clean" shutdown. I purposely avoided making changes to network-related stuff since the system shutting down is pretty conclusive, and there may be complicated dependencies on the network that I would rather not try to unravel. I also skipped kerberos-related stuff for the reasons above, and because I have no way to test it.
57 lines
919 B
Bash
Executable File
57 lines
919 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: amd
|
|
# REQUIRE: rpcbind ypbind nfsclient cleanvar ldconfig
|
|
# BEFORE: DAEMON
|
|
# KEYWORD: nojail shutdown
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="amd"
|
|
rcvar=`set_rcvar`
|
|
command="/usr/sbin/${name}"
|
|
start_precmd="amd_precmd"
|
|
command_args="&"
|
|
extra_commands="reload"
|
|
|
|
amd_precmd()
|
|
{
|
|
if ! checkyesno nfs_client_enable; then
|
|
force_depend nfsclient || return 1
|
|
fi
|
|
|
|
if ! checkyesno rpcbind_enable && \
|
|
! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
|
|
then
|
|
force_depend rpcbind || return 1
|
|
fi
|
|
|
|
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
|
|
return 0
|
|
}
|
|
|
|
load_rc_config $name
|
|
run_rc_command "$1"
|