amd revision 98184
1255570Strasz#!/bin/sh
2255570Strasz#
3255570Strasz# $NetBSD: amd,v 1.10 2002/04/29 12:08:17 lukem Exp $
4255570Strasz# $FreeBSD: head/etc/rc.d/amd 98184 2002-06-13 22:14:37Z gordon $
5255570Strasz#
6255570Strasz
7255570Strasz# PROVIDE: amd
8255570Strasz# REQUIRE: rpcbind mountall ypbind nfsclient
9255570Strasz# BEFORE: DAEMON
10255570Strasz# KEYWORD: FreeBSD NetBSD
11255570Strasz
12255570Strasz. /etc/rc.subr
13255570Strasz
14298514Slmename="amd"
15255570Straszrcvar=`set_rcvar`
16255570Strasz
17255570Straszcase `${CMD_OSTYPE}` in
18255570StraszFreeBSD)
19255570Strasz	start_cmd="echo 'Starting amd.'; /usr/sbin/${name} &"
20255570Strasz	start_precmd="amd_precmd"
21255570Strasz	;;
22NetBSD)
23	command_args='-p -a '$amd_dir' -F /etc/amd.conf >/var/run/amd.pid'
24	required_dirs="$amd_dir"
25	required_files="/etc/amd.conf"
26	required_vars="rpcbind"
27	command="/usr/sbin/${name}"
28	;;
29esac
30
31amd_precmd() 
32{
33	case `${CMD_OSTYPE}` in
34	FreeBSD)
35		if ! checkyesno nfs_client_enable ; then
36			force_depend nfsclient || return 1
37		fi
38		if [ -z "`check_process rpcbind`" \
39	    	    -a ! `checkyesno portmap_enable` ]; then
40			force_depend rpcbind || return 1
41		fi
42
43		case ${amd_map_program} in
44		[Nn][Oo] | '')
45			;;
46		*)
47			amd_flags="${amd_flags} `eval ${amd_map_program}`"
48			;;
49		esac
50
51		case "${amd_flags}" in
52		'')
53			if [ ! -r /etc/amd.conf ]; then
54				warn 'amd will not load without arguments'
55				return 1
56			fi
57			;;
58		*)
59			amd_flags="-p ${amd_flags} > /var/run/amd.pid 2> /dev/null" \
60			;;
61		esac
62		;;
63	esac
64	return 0
65}
66
67load_rc_config $name
68run_rc_command "$1"
69