#!/bin/sh
#
# $NetBSD: ypserv,v 1.5 2000/09/19 13:04:39 lukem Exp $
# $FreeBSD: src/etc/rc.d/ypserv,v 1.7 2003/07/09 03:21:03 mtm Exp $
#

# PROVIDE: ypserv
# REQUIRE: rpcbind
# KEYWORD: DragonFly FreeBSD NetBSD

. /etc/rc.subr

name="ypserv"
command="/usr/sbin/${name}"
start_precmd="ypserv_precmd"

load_rc_config $name
case ${OSTYPE} in
FreeBSD)
	rcvar="nis_server_enable"
	command_args="${nis_server_flags}"
	;;
NetBSD)
	rcvar=${name}
	required_vars="rpcbind"
	;;
esac

ypserv_precmd()
{
	case ${OSTYPE} in
	DragonFly)
		if ! checkyesno rpcbind_enable  && \
                    ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
                then
                        force_depend rpcbind || return 1
                fi
                ;;

	FreeBSD)
		if ! checkyesno rpcbind_enable  && \
		    ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
		then
			force_depend rpcbind || return 1
		fi
		;;
	esac

	_domain=`domainname`
	if [ -z "$_domain" ]; then
		warn "NIS domainname(1) is not set."
		return 1
	fi

	if [ ! -d /var/yp/$_domain/. ]; then
		warn "/var/yp/$_domain is not a directory."
		return 1
	fi
}

run_rc_command "$1"
