1#!/bin/sh
2###########################################################################
3# LPRng - An Extended Print Spooler System
4#
5# Copyright 1988-1995 Patrick Powell, San Diego State University
6#     papowell@sdsu.edu
7# See LICENSE for conditions of use.
8#
9###########################################################################
10# MODULE: TESTSUPPORT/filter.sh
11# PURPOSE: test filter for LPR software
12# filter.sh,v 3.1 1996/12/28 21:40:46 papowell Exp
13########################################################################## 
14#	Filter Dummy Test
15# 
16PATH=/bin:/usr/bin
17echo FILTER $$ $0 $* 1>&2
18echo FILTER $$ $0 $*
19set
20#echo FILTER $$ "pwd " `/bin/pwd`  1>&2
21printenv
22delay=0
23interval=0
24for i in "$@"
25do
26	case $i in
27		-delay*) delay=`echo $i |sed -e 's/-delay//'` ;;
28		-interval*) interval=`echo $i |sed -e 's/-interval//'` ;;
29		-error*) error=`echo $i |sed -e 's/-error//'` ;;
30		-s* ) statusfile=`expr $i : '-s\(.*\)'` ;;
31		-*) ;;
32		*) file=$i ;;
33	esac
34done
35if [ -f /tmp/filter.error ] ; then
36. /tmp/filter.error
37fi
38
39if [ "$statusfile" != "" ] ; then
40	exec 3>>$statusfile;
41else
42	exec 3>&2
43fi
44#if test -n "$file";
45#	then echo $0 $* >>$file
46#	else echo "--- NO Accounting File ---" 1>&3
47#fi
48# echo information into output
49echo $0 $*
50# wait a minute to simulate the delay
51echo FILTER $$ delay $delay 1>&3
52# pump stdin to stdout
53cat
54#/usr/bin/id 1>&3
55if test "$delay" -ne 0 ; then
56	echo FILTER $$ "sleeping $delay, interval $interval" `date` 1>&3
57	if test "$interval" != "0" ; then
58		elapsed=0;
59		while [ $elapsed -lt $delay ] ; do
60			sleep $interval;
61			elapsed=`expr $interval '+' $elapsed`
62			#echo FILTER $$ done $elapsed 1>&2
63			echo FILTER $$ done $elapsed `date` 1>&3
64		done
65	else
66		sleep $delay;
67	fi
68	echo FILTER $$ awake 1>&3
69fi;
70echo FILTER processing 1>&3
71# exit with error status
72if test -n "$error";
73then
74    echo FILTER DONE ERROR $error 1>&3
75	exit $error;
76fi;
77echo FILTER DONE 1>&3
78exit 0;
79