#!/bin/sh

# Please see detailed Copyright below

PATH=/bin:/usr/bin:/usr/local/bin ; export PATH
umask 077

TDIR=`mktemp -d -t ppf_mime`
trap "rm -f ${TDIR}/* ; rmdir ${TDIR} ; exit" 0 1 2 15

split -p 'Content-Type: ' - ${TDIR}/f

# The last two lines of the file are added by MIME encoding,
# so they must be stripped in order for the signature to verify.
sed -n -e :a -e '1,2!{P;N;D;}' -e 'N;ba' ${TDIR}/fac >${TDIR}/message

if [ -x /usr/local/bin/gpg ]; then
	gpg --verify ${TDIR}/fad ${TDIR}/message 2>${TDIR}/stderr
elif [ -x /usr/local/bin/pgp ]; then
	pgp ${TDIR}/fad ${TDIR}/message >${TDIR}/stdout 2>${TDIR}/stderr
	echo '     -----------------------------------------------------' >>${TDIR}/stderr
	egrep -v 'has signature, but with no text.|Text is assumed to be' \
		${TDIR}/stdout >>${TDIR}/stderr
# This probably doesn't work
#elif [ -x /usr/local/bin/pgpv ]; then
#
#	pgpv ${TDIR}/fad ${TDIR}/message >${TDIR}/stdout 2>${TDIR}/stderr
#	cat ${TDIR}/stdout >>${TDIR}/stderr
else
	echo "$0: Can't find pgp on this system!"
	exit 1
fi

egrep -hi '^(From|Resent-From|To|Resent-To|Cc|Resent-cc|Bcc|Newsgroups|Followup-To|Date|Resent-Date|Organization|Subject|Resent-Subject|Reply-To):' ${TDIR}/fa[ab]
echo ''

echo '----------------------------- PGP Command Output -----------------------------'
grep -v '^$' ${TDIR}/stderr
echo '------------------------------- End PGP Output -------------------------------'

# Remove the MIME headers from the message
sed -e '1,2d' -e '3s/^Content-.*//' ${TDIR}/message

exit 0

#  Copyright (c) 2003 The FreeBSD Project
#  All rights reserved.
# 
#  Redistribution and use in source and binary forms, with or without
#  modification, are permitted provided that the following conditions
#  are met:
#  1. Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
#  2. Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in the
#     documentation and/or other materials provided with the distribution.
# 
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
#  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
#  ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
#  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
#  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
#  OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
#  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
#  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
#  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
#  SUCH DAMAGE.

