amd revision 98184
178344Sobrien#!/bin/sh
278344Sobrien#
398184Sgordon# $NetBSD: amd,v 1.10 2002/04/29 12:08:17 lukem Exp $
498184Sgordon# $FreeBSD: head/etc/rc.d/amd 98184 2002-06-13 22:14:37Z gordon $
578344Sobrien#
678344Sobrien
778344Sobrien# PROVIDE: amd
898184Sgordon# REQUIRE: rpcbind mountall ypbind nfsclient
998184Sgordon# BEFORE: DAEMON
1098184Sgordon# KEYWORD: FreeBSD NetBSD
1178344Sobrien
1278344Sobrien. /etc/rc.subr
1378344Sobrien
1478344Sobrienname="amd"
1598184Sgordonrcvar=`set_rcvar`
1678344Sobrien
1798184Sgordoncase `${CMD_OSTYPE}` in
1898184SgordonFreeBSD)
1998184Sgordon	start_cmd="echo 'Starting amd.'; /usr/sbin/${name} &"
2098184Sgordon	start_precmd="amd_precmd"
2198184Sgordon	;;
2298184SgordonNetBSD)
2398184Sgordon	command_args='-p -a '$amd_dir' -F /etc/amd.conf >/var/run/amd.pid'
2498184Sgordon	required_dirs="$amd_dir"
2598184Sgordon	required_files="/etc/amd.conf"
2698184Sgordon	required_vars="rpcbind"
2798184Sgordon	command="/usr/sbin/${name}"
2898184Sgordon	;;
2998184Sgordonesac
3078344Sobrien
3198184Sgordonamd_precmd() 
3298184Sgordon{
3398184Sgordon	case `${CMD_OSTYPE}` in
3498184Sgordon	FreeBSD)
3598184Sgordon		if ! checkyesno nfs_client_enable ; then
3698184Sgordon			force_depend nfsclient || return 1
3798184Sgordon		fi
3898184Sgordon		if [ -z "`check_process rpcbind`" \
3998184Sgordon	    	    -a ! `checkyesno portmap_enable` ]; then
4098184Sgordon			force_depend rpcbind || return 1
4198184Sgordon		fi
4298184Sgordon
4398184Sgordon		case ${amd_map_program} in
4498184Sgordon		[Nn][Oo] | '')
4598184Sgordon			;;
4698184Sgordon		*)
4798184Sgordon			amd_flags="${amd_flags} `eval ${amd_map_program}`"
4898184Sgordon			;;
4998184Sgordon		esac
5098184Sgordon
5198184Sgordon		case "${amd_flags}" in
5298184Sgordon		'')
5398184Sgordon			if [ ! -r /etc/amd.conf ]; then
5498184Sgordon				warn 'amd will not load without arguments'
5598184Sgordon				return 1
5698184Sgordon			fi
5798184Sgordon			;;
5898184Sgordon		*)
5998184Sgordon			amd_flags="-p ${amd_flags} > /var/run/amd.pid 2> /dev/null" \
6098184Sgordon			;;
6198184Sgordon		esac
6298184Sgordon		;;
6398184Sgordon	esac
6498184Sgordon	return 0
6598184Sgordon}
6698184Sgordon
6798184Sgordonload_rc_config $name
6878344Sobrienrun_rc_command "$1"
69