#!/bin/sh
#pragma ident	"@(#)request	1.7	98/09/30 SMI"
#
# Copyright (c) 1998, by Sun Microsystems, Inc.
# All rights reserved.
#
trap 'exit 3' 15

getans()
{
	# need to get the format string because it must be
	# quoted
	fmt=$1
	shift

	printf "$fmt" $*

	while true ;
	do
		read ans

		if [ "$ans" != "" ]
		then
			break
		else
			printf "$fmt" $*
		fi

	done
}

getYN()
{
	# need to get the format string because it must be
	# quoted
	fmt=$1
	yval=$2
	nval=$3
	q2=$4
	shift 4

	printf "$fmt" $*

	while true ;
	do
		read ans

		case $ans in

		$yval	)
			YN=1
			break
			;;

		$nval	)
			YN=0
			break
			;;

		*	)
			echo $q2 '\c'

		esac
	done
}

get_realm=0
get_master=0

cf=$PKG_INSTALL_ROOT/etc/krb5/kadm5.acl

KADM5_ACL_REPLACE=1
if [ -f $cf ]
then
	echo
	echo
	getYN "`gettext 'Note: %s already exists.\nDo you wish to generate a new %s interactively? (y)es/(n)o: `" y n \
		"`gettext 'Answer y for yes or n for no:'`" $cf $cf
	if [ $YN -eq 0 ]
	then
		KADM5_ACL_REPLACE=0
	else
		get_realm=1
	fi
else
	get_realm=1
fi

while true ;
do
	echo
	echo 
	if [ $get_realm -eq 1 ]
	then
		getans \
	"`gettext 'Please specify the Kerberos V5 realm to be served: '`"
		realm=`echo $ans | tr "[:lower:]" "[:upper:]"`
	fi

	getans "`gettext 'Please specify a slave KDC: '`"
	slave="`echo $ans | sed 's/, 	//g' `"
	slaves=""
	slaves="$slaves $slave"

	while true ;
	do
		getYN "`gettext 'Are there more slave KDCs? (y)es/(n)o: '`" y n \
			"`gettext 'Answer y for yes or n for no:'`"

		if [ $YN -eq 1 ]
		then
			getans "`gettext 'Please specify another slave KDC: '`" $realm
			slave="`echo $ans | sed 's/, 	//g' `"
			slaves="$slaves $slave"
		else
			break
		fi
	done

	echo
	echo `gettext 'You have selected:'`
	echo


	if [ $get_realm -eq 1 ]
	then
		printf \
"`gettext 'Service over a Kerberos V5 realm called %s'`\n" $realm 
	fi

	printf "`gettext 'One or more slave KDCs: %s'`\n" "$slaves"

	echo
	getYN "`gettext 'Are the above selections correct? (y)es/(n)o: '`" \
		y n "`gettext 'Answer y for yes or n for no.'`"

	if [ $YN -eq 1 ]
	then
		break
	fi
done

echo
echo

cat > $1<<!
KADM5_ACL_REPLACE=$KADM5_ACL_REPLACE
KADM5_ACL_REALM="$realm"
CRON_SLAVES="$slaves"
!
exit 0
