#
# bitnet: generate BITNET delivery rules
#

REVISION_ID='@(#)bitnet	3.6 (motonori/WIDE) 2/26/94'

#|# resolve BITNET traffic (static/mx/no)
#|#BITNET=no
#|BITNET=mx
#|#BITNET_RELAY='bitnetjp.ad.jp'
#|##BITNET_RELAY='dom.bitnetjp.ad.jp'

# TODO: map delivery support

: ${BITNET=no}
if [ "$BITNET" != no ]
then

	if [ "$REVISION_ID_LIST" ]
	then
		REVISION_ID_LIST="$REVISION_ID_LIST\\
# $REVISION_ID"
	else
		REVISION_ID_LIST="# $REVISION_ID"
	fi


	# allocate class/macro character pair
	_ALLOC_MODE=normal
	_ALLOC_TYPE=macro
	_ALLOC_DIR=down
	_ALLOC_PREF=
	_ALLOC_USAGE='bitnet gateway [bitnet]'
	. $MASTERDIR/$CHARALLOC
	_BR_CHAR=$_ALLOC_CHAR

	FAKE_DOMAIN_NAME="BITNET"

	if [ "$FAKEDOMAIN" ]
	then

FAKEDOMAIN="$FAKEDOMAIN\\
C$_FD_CHAR $FAKE_DOMAIN_NAME"

	else

		FAKEDOMAIN="C$_FD_CHAR $FAKE_DOMAIN_NAME"

	fi

MACRO=${BITNET_RELAY+D$_BR_CHAR$BITNET_RELAY}
if [ "$MACRO" = "" ]
then
	MACRO='D'$_BR_CHAR'bitnetjp.ad.jp\
#D'$_BR_CHAR'dom.bitnetjp.ad.jp'
fi

HDRBITNET="\\
# BITNET relay host/domain name for MX lookup\\
$MACRO"

	if [ "$BITNET" = mx ]
	then

	# delivery with MX lookup
BITNETRULE='\
# resolve BITNET traffic\
R$*<@$+.BITNET>$*	'"$DISPATCH"' <'"$M_SMTP"':$2.$'$_BR_CHAR'>:$1<@$2.BITNET>$3	with MX lookup'

	else

	# delivery without MX lookup
BITNETRULE='\
# resolve BITNET traffic\
R$*<@$+.BITNET>$*	'"$DISPATCH"' <'"$M_SMTP"':$'$_BR_CHAR'>:$1<@$2.BITNET>$3		static delivery'

	fi

# when BITNET option flag is off
else

	# and BITNET_RELAY is defined
	if [ "$BITNET_RELAY" ]
	then
		echo "bitnet: BITNET feature should be required." 1>&2
	fi

fi
