xref: /plan9/sys/lib/lp/kill/generic (revision 7dd7cddf99dd7472612f1413b4da293630e6b1bc)
13e12c5d1SDavid du Colombier#!/bin/rc
2*7dd7cddfSDavid du Colombierif (! ~ $DEBUG '') flag x +
33e12c5d1SDavid du Colombier
43e12c5d1SDavid du Colombiercd $LPSPOOL
53e12c5d1SDavid du Colombierif (~ $#* 0) KILLARGS=`{sed 1q};
63e12c5d1SDavid du Colombierif not	KILLARGS=$*;
73e12c5d1SDavid du Colombier
83e12c5d1SDavid du Colombierif (test -d $LPDEST) {
93e12c5d1SDavid du Colombier	for (i in $KILLARGS) {
103e12c5d1SDavid du Colombier		for (j in `{bind -b $LPLIB/sched /bin;$SCHED $LPDEST}) {
113e12c5d1SDavid du Colombier			if (test -r $LPDEST/$j^id) {
123e12c5d1SDavid du Colombier				STATLINE=`{cat $LPDEST/$j^id}
133e12c5d1SDavid du Colombier				if (~ $STATLINE(1)^$STATLINE(3) $i)
143e12c5d1SDavid du Colombier					if (rm $LPDEST/$j $LPDEST/$j^id >/dev/null >[1=2])
153e12c5d1SDavid du Colombier						echo $i removed from $LPDEST queue on $THIS_HOST
163e12c5d1SDavid du Colombier			}
173e12c5d1SDavid du Colombier		}
183e12c5d1SDavid du Colombier	}
193e12c5d1SDavid du Colombier}
20219b2ee8SDavid du Colombierif (! ~ $THIS_HOST $DEST_HOST) {
21219b2ee8SDavid du Colombier	@{echo -d$LPDEST -k;echo $KILLARGS;sleep 7} | lpsend.rc $DEST_HOST
22*7dd7cddfSDavid du Colombier}; if not {
23*7dd7cddfSDavid du Colombier	if (! ~ $KILLCMD '') {
24*7dd7cddfSDavid du Colombier		for (i in $KILLARGS) {
25*7dd7cddfSDavid du Colombier			$KILLCMD $i;
26*7dd7cddfSDavid du Colombier		}
27*7dd7cddfSDavid du Colombier	}
283e12c5d1SDavid du Colombier}
29219b2ee8SDavid du Colombierexit ''
30