plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

commit 2863ba101f0c9fec34756948e263cd534a3634ee
parent 6174642093bdcef4116ae78dbdf4f2e608494258
Author: rsc <devnull@localhost>
Date:   Wed, 31 Aug 2005 02:15:45 +0000

Missed this.

Diffstat:
Alp/kill/generic | 29+++++++++++++++++++++++++++++
1 file changed, 29 insertions(+), 0 deletions(-)

diff --git a/lp/kill/generic b/lp/kill/generic @@ -0,0 +1,29 @@ +#!/usr/local/plan9/bin/rc +if (! ~ $DEBUG '') flag x + + +cd $LPSPOOL +if (~ $#* 0) KILLARGS=`{sed 1q}; +if not KILLARGS=$*; + +if (test -d $LPDEST) { + for (i in $KILLARGS) { + for (j in `{lpsub sched $SCHED $LPDEST}) { + if (test -r $LPDEST/$j^id) { + STATLINE=`{cat $LPDEST/$j^id} + if (~ $STATLINE(1)^$STATLINE(3) $i) + if (rm $LPDEST/$j $LPDEST/$j^id >/dev/null >[1=2]) + echo $i removed from $LPDEST queue on $THIS_HOST + } + } + } +} +if (! ~ $THIS_HOST $DEST_HOST) { + @{echo -d$LPDEST -k;echo $KILLARGS;sleep 7} | lpsend.rc $DEST_HOST +}; if not { + if (! ~ $KILLCMD '') { + for (i in $KILLARGS) { + $KILLCMD $i; + } + } +} +exit ''