xref: /plan9/sys/lib/lp/daemon/post.warn (revision 3e12c5d1bb89fc02707907988834ef147769ddaf)
1#!/bin/sh
2
3trap "" 1 2
4
5cd $LPSPOOL/queue
6
7POSTIOLOG="$LPSPOOL/log/${LPDEST}.st"
8MAILLOG=/usr/spool/mail/mail.log
9export MAILLOG POSTIOLOG
10case "$THIS_HOST" in
11"$DEST_HOST")
12	( trap "exit 0" 15
13	while true
14	do
15		error=`tail -2 $POSTIOLOG | grep PrinterError`
16		case "$error" in
17		"")	sleep 40
18			;;
19		*)
20			set "" `cat $LPSPOOL/queue/$LPDEST/*id | sort -u`; shift
21			while [ "$1" != "" ]
22			do
23				echo "delivered $2 From nopaper (vwho)" >> /n/$1/$MAILLOG
24				shift 2
25			done
26			sleep 200	# give someone a chance to fix it
27			;;
28		esac
29	done ) &
30	WARN=$!
31	;;
32esac
33
34generic 'eval /usr/bin/postscript/postio -R2 -B4096 -l$OUTDEV -b$SPEED -L$PRINTLOG $LPDEST/$FILE' 'eval echo -d"$LPDEST" -pnoproc -M"$1" -u"$2" | cat - $LPDEST/$FILE | lpsend "$DEST_HOST"' 'eval grep -l $2 $LPDEST/*id | grep -v $LPDEST/${FILE}id > /dev/null 2>&1; case $? in 0) echo "delivered $2 From applemore (vwho)" >> /n/$1/$MAILLOG;; *) echo "delivered $2 From appledone (vwho)" >> /n/$1/$MAILLOG;esac'
35
36
37case "$THIS_HOST" in
38"$DEST_HOST")
39	kill -9 $WARN;;
40esac
41