#!/bin/sh
# report v1.0  (c) 23.9.2002 by Andreas Ley  (u) 23.9.2002
# 

passwd=/etc/passwd.rztrans
crack=/usr/local/Crack

usage()
{
	echo "Usage: `basename $0` [-v]" >&2
	echo "-v  verbose mode" >&2
	exit 1
}

set -- `getopt hxv $*` || usage

trace=false
verbose=false
while :; do
	case $1 in
		-h)	sed '1d;s/^# *//;/^$/q' $0; usage;;
		-x)	set -x; trace=true; shift;;
		-v)	verbose=true; shift;;
		--)	shift; break;;
	esac
done

test $# -ne 0 && usage

cd ${crack} || exit 1

tmpname=`/usr/machine/bin/mktemp -c`
trap "rm -f ${tmpname}" 0 1 2 3 15

./Reporter -quiet | while read guessed account password dummy; do
	if test "${guessed}" = "Guessed"; then
		pw=`awk -F: '$1==account&&length($2)==13&&$2!~/\*/{print$2}' <${passwd} account="${account}"`
		if test -n "${pw}"; then
			echo "\"${password}\"" >&2
			password="`echo \"${password}\" | sed 's/^\[//;s/\]$//'`"
			echo "\"${password}\"" >&2
			if test "${pw}" = `/usr/segment/bin/cryptpass -s "${pw}" "${password}"`; then
				echo "${account}"
			else
				echo "Password changed: ${account} ${pw} -> "`/usr/segment/bin/cryptpass -s "${pw}" "${password}"` >&2
			fi
		fi
	fi
done >${tmpname}

if test -s ${tmpname}; then
	echo "Subject: Gecrackte Passwoerter"
	echo
	sort ${tmpname} | xargs | lbreak
fi

exit 0

