:	'(c) Copyright	Empress Software Inc.	1983, 2000'

USAGE="*** Usage ***  $0  internal use only"

case "$EMPRESSPATH/rdbms" in
 "")	echo "$USAGE"; exit 1;;
esac

case "$EMPSVUTL_CALL" in
 "")	echo "$USAGE"; exit 1;;
esac

NLSECHO="$EMPRESSPATH/common/nls/nlsecho"
UI_E0_CORRECT002=10242
UI_E0_SVC_0010=10243
UI_E0_SVC_0020=10244
UI_E0_SVC_0030=10251
UI_E0_SVC_0040=10245
UI_E0_SVC_0050=10246
UI_E0_SVC_0070=10248
UI_E0_SVC_0130=10249
UI_E0_SVUTL_0010=10229
UI_E0_SVUTL_0020=10236
UI_E0_SVUTL_0030=10237
UI_E0_SVUTL_0050=10238

LOWINETPORT=5001
HIGHINETPORT=65534

:	default values
DEF_SUBPROCESS=1
DEF_ADMIN=`$EMPRESSPATH/common/sys_bin/getuname`
DEF_MSNETTYPE=INET_TCP
DEF_NETTYPE=tcp
DEF_NETPORT=8000
DEF_REPLY_TIMEOUT=60
DEF_REPLY_RETRY=4
DEF_MSG_TIMEOUT=30
DEF_MSG_RETRY=4
DEF_PACKET_TIMEOUT=5
DEF_PACKET_RETRY=4

case $# in
 1)	;;
 *)	echo "$USAGE";  exit 1;;
esac

OUTFILE=$1

if test -d $OUTFILE
then
	$NLSECHO "*** User Error *** \"%s\" is a directory " $UI_E0_SVUTL_0010 \
$OUTFILE
	exit 1
fi

if test -f $OUTFILE
then
	APPEND=no
	while :
	do
		$NLSECHO -n "\"%s\" exists. (o)verwrite it, (a)ppend to it, or (q)uit ? " $UI_E0_SVUTL_0020 $OUTFILE
		read TMP
		case $TMP in
			o*) rm $OUTFILE ; break ;;
			a*) APPEND=yes ; break ;;
			q*) exit 1 ;;
		esac
	done
	
	case $APPEND in
	  yes) 	$NLSECHO "Checking \"%s\". Please wait ..." $UI_E0_SVUTL_0030 $OUTFILE
	    	if $EMPRESSPATH/rdbms/util_bin/empckscf $OUTFILE
		then
		   :
		else
		   $NLSECHO "\"%s\" is not a valid %s file. Abort! " $UI_E0_SVUTL_0050 $OUTFILE "Server Configuration"
		   exit 1
		fi
		;;
	esac
	echo
fi


while :
do
	$NLSECHO -n "Database Server name <hit return to quit> : " $UI_E0_SVC_0010
	read MSSERVERNAME
	case $MSSERVERNAME in
	   "")	exit 0 ;;
	esac

	echo

	while :
	do
	   $NLSECHO "Node name of the machine where Server resides : " $UI_E0_SVC_0020
	   $EMPRESSPATH/common/sys_bin/echon "> "
	   read MSSERVERHOSTNAME
	   if $EMPRESSPATH/rdbms/exec/emputil -CHKHOSTNAME $MSSERVERHOSTNAME
	   then
		break
	   else
		$NLSECHO -n "Node name \"%s\" not found in %s. 
Use it anyway (y/n/q) ? [n] " $UI_E0_SVC_0030 "$MSSERVERHOSTNAME" "$HOSTFILE"
		read TMP
		case $TMP in
			y* | Y* ) break ;;
		   	q* | Q* ) exit 1 ;;
		esac
	   fi
	done
	
	echo

	while :
	do
   	   $NLSECHO -n "Number of Server sub-processes [%s] : " $UI_E0_SVC_0040 "$DEF_SUBPROCESS"
   	   read MSSERVERNPROCS
	   case $MSSERVERNPROCS in
		"") MSSERVERNPROCS=$DEF_SUBPROCESS ; break ;;
		[1-9] | [1-9][0-9] ) break ;;
	   esac
	done

	$NLSECHO -n "Name of Server administrator [%s] : " $UI_E0_SVC_0050 "$DEF_ADMIN"
	read MSSERVERADMINISTRATOR
	case $MSSERVERADMINISTRATOR in
	   "") MSSERVERADMINISTRATOR=$DEF_ADMIN ;;
	esac

	MSSERVERNETTYPE=INET_TCP
	
	while :
	do
	   echo
   	   $NLSECHO -n "Note that: No two active Servers can have the same combination 
           of host name and Internet port number
Internet port number (%s - %s) : " \
$UI_E0_SVC_0070 "$LOWINETPORT" "$HIGHINETPORT" 
   	   read MSINETPORT
	   case $MSINETPORT in
		"" | 5000 | 655[4-9][0-9] | 6553[5-9])
				;;
		[5-9][0-9][0-9][0-9] | \
		[1-5][0-9][0-9][0-9][0-9] | \
		6[0-5][0-5][0-9][0-9])
				break
				;;
	   esac
	done

	$NLSECHO "
Database Server name 			: %s
Server host name			: %s
Number of Server sub-processes 		: %s
Name of Server administrator		: %s
Network access type 			: %s
Internet port number			: %s " \
$UI_E0_SVC_0130 \
"$MSSERVERNAME" "$MSSERVERHOSTNAME" "$MSSERVERNPROCS" \
"$MSSERVERADMINISTRATOR" "$MSSERVERNETTYPE" "$MSINETPORT" 

	echo
	$NLSECHO -n "Is this correct (y/n/q) ? [y] " $UI_E0_CORRECT002

	read TMP
	case $TMP in
	  y* | Y* | "" ) 
	      echo "MSSERVERNAME=${MSSERVERNAME}" >> $OUTFILE
	      echo "   MSSERVERHOSTNAME=${MSSERVERHOSTNAME}" >> $OUTFILE
	      echo "   MSSERVERNPROCS=${MSSERVERNPROCS}" >> $OUTFILE
	      echo "   MSSERVERADMINISTRATOR=${MSSERVERADMINISTRATOR}" >> $OUTFILE
	      echo "   MSSERVERNETTYPE=${MSSERVERNETTYPE}" >> $OUTFILE
	      echo "      MSINETPORT=${MSINETPORT}" >> $OUTFILE
	      echo "   MSSERVERNETEND" >>$OUTFILE
	      echo "MSSERVEREND" >> $OUTFILE
	      echo "" >> $OUTFILE
		;;
	  q* | Q* )  exit 1 ;;
	esac
	echo
done
