#!/bin/sh
# $Id: t-t2821-1.sh,v 1.11 2006/10/04 03:02:40 ca Exp $
# Copyright (c) 2003-2006 Sendmail, Inc. and its suppliers.
#	All rights reserved.
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the sendmail distribution.
#
#
test -s stop && exit 1
#
IN=t2821_parse.in
OUT=t2821_parse.out
ERR=t2821_parse.err
ERRORS=0

./t-t2821-1 -l $@ > ${OUT} 2> ${ERR} <<EOF
<mta@meta1.org>
<mta.x@meta1.org>
<@example.com:mta@meta1.org>
<@example.com,@endmail.org:mta@meta1.org>
EOF

cat > ${IN} <<EOF
>>><mta@meta1.org><<<
OK	>>><mta@meta1.org><<<
<mta@meta1.org>
domain=meta1.org
local=mta
>>><mta.x@meta1.org><<<
OK	>>><mta.x@meta1.org><<<
<mta.x@meta1.org>
domain=meta1.org
local=mta.x
>>><@example.com:mta@meta1.org><<<
OK	>>><@example.com:mta@meta1.org><<<
<mta@meta1.org>
domain=meta1.org
local=mta
>>><@example.com,@endmail.org:mta@meta1.org><<<
OK	>>><@example.com,@endmail.org:mta@meta1.org><<<
<mta@meta1.org>
domain=meta1.org
local=mta
EOF
diff ${OUT} ${IN}
if test $? -ne 0
then
  ERRORS=`expr ${ERRORS} + 1 `
fi

./t-t2821-1 -l -D $@ > ${OUT} 2> ${ERR} <<EOF
<mta-x+y@meta1.org>
<mta+x+y@meta1.org>
<mta+x-y@meta1.org>
<"mta-x+y"@meta1.org>
<"mta+x+y"@meta1.org>
<"mta+x-y"@meta1.org>
<"mta\-x+y"@meta1.org>
<"mta\+x+y"@meta1.org>
<"mta\+x-y"@meta1.org>
EOF

cat > ${IN} <<EOF
>>><mta-x+y@meta1.org><<<
OK	>>><mta-x+y@meta1.org><<<
<mta-x+y@meta1.org>
local=mta-x+y
>>><mta+x+y@meta1.org><<<
OK	>>><mta+x+y@meta1.org><<<
<mta+x+y@meta1.org>
local=mta+x+y
>>><mta+x-y@meta1.org><<<
OK	>>><mta+x-y@meta1.org><<<
<mta+x-y@meta1.org>
local=mta+x-y
>>><"mta-x+y"@meta1.org><<<
OK	>>><"mta-x+y"@meta1.org><<<
<mta-x+y@meta1.org>
local=mta-x+y
>>><"mta+x+y"@meta1.org><<<
OK	>>><"mta+x+y"@meta1.org><<<
<mta+x+y@meta1.org>
local=mta+x+y
>>><"mta+x-y"@meta1.org><<<
OK	>>><"mta+x-y"@meta1.org><<<
<mta+x-y@meta1.org>
local=mta+x-y
>>><"mta\-x+y"@meta1.org><<<
OK	>>><"mta\-x+y"@meta1.org><<<
<mta-x+y@meta1.org>
local=mta-x+y
>>><"mta\+x+y"@meta1.org><<<
OK	>>><"mta\+x+y"@meta1.org><<<
<mta+x+y@meta1.org>
local=mta+x+y
>>><"mta\+x-y"@meta1.org><<<
OK	>>><"mta\+x-y"@meta1.org><<<
<mta+x-y@meta1.org>
local=mta+x-y
EOF
diff ${OUT} ${IN}
if test $? -ne 0
then
  ERRORS=`expr ${ERRORS} + 1 `
fi

# ./t-t2821-1 -l -D $@ > ${OUT} 2> ${ERR} <<EOF
# <mta-x+y@meta1.org>
# <mta+x+y@meta1.org>
# <mta+x-y@meta1.org>
# EOF
# 
# diff ${OUT} - <<EOF
# >>><mta-x+y@meta1.org><<<
# OK	>>><mta-x+y@meta1.org><<<
# <mta-x+y@meta1.org>
# local=mta-x+y
# >>><mta+x+y@meta1.org><<<
# OK	>>><mta+x+y@meta1.org><<<
# <mta+x+y@meta1.org>
# local=mta+x+y
# >>><mta+x-y@meta1.org><<<
# OK	>>><mta+x-y@meta1.org><<<
# <mta+x-y@meta1.org>
# local=mta+x-y
# EOF
# if test $? -ne 0
# then
#   ERRORS=`expr ${ERRORS} + 1 `
# fi

# XREF R2821_CORRECT, R2821_AT
./t-t2821-1 -f 0x75 -l -D $@ > ${OUT} 2> ${ERR} <<EOF
<postmaster>
EOF

cat > ${IN} <<EOF
>>><postmaster><<<
OK	>>><postmaster><<<
<postmaster>
local=postmaster
EOF
diff ${OUT} ${IN}
if test $? -ne 0
then
  ERRORS=`expr ${ERRORS} + 1 `
fi

if test ${ERRORS} -eq 0
then
  rm -f ${IN} ${OUT} ${ERR}
fi

exit ${ERRORS}


syntax highlighted by Code2HTML, v. 0.9.1