diff options
author | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
---|---|---|
committer | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
commit | e463eb40363ff4c68b1d903f4e0cdd0ac1c5977f (patch) | |
tree | d5e9f57c28f026cb21de3bd77cc10cd7f64aaa85 /sys/lib/lp/spooler | |
parent | b41b9034225ab3e49980d9de55c141011b6383b0 (diff) |
Import sources from 2011-03-30 iso image - sys/lib
Diffstat (limited to 'sys/lib/lp/spooler')
-rwxr-xr-x | sys/lib/lp/spooler/generic | 47 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/lpdspool | 14 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/lpdspool+fonts | 16 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/mhcc | 52 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/nospool | 21 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/nt | 14 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/nt-tekphaser350 | 14 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/pcclone | 14 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/pcclone.new | 22 | ||||
-rwxr-xr-x | sys/lib/lp/spooler/ps630 | 30 |
10 files changed, 244 insertions, 0 deletions
diff --git a/sys/lib/lp/spooler/generic b/sys/lib/lp/spooler/generic new file mode 100755 index 000000000..d6487f7de --- /dev/null +++ b/sys/lib/lp/spooler/generic @@ -0,0 +1,47 @@ +#!/bin/rc +# fn sigexit { rm -f $LPSPOOL/$LPDEST/.$pid.* $LPSPOOL/$LPDEST/$pid.* $LPSPOOL/$LPDEST } +if (! ~ $DEBUG '') flag x + + +if (~ $THIS_HOST $DEST_HOST) { + if (! test -d $LPSPOOL/$LPDEST) { + mkdir $LPSPOOL/$LPDEST + chmod 777 $LPSPOOL/$LPDEST >[2]/dev/null + } +} +# Process and enqueue files to be printed +# take arguments as input files +i=0 +if (~ $#* 0) *='' +for (j in $*) { + i= `{echo $i + 1|hoc} + +# check access to the file so that you know that a failure in the +# processing is a drastic error which will cause an exit from lp. + + if (~ $j '' || test -f $j) { + if (~ $THIS_HOST $DEST_HOST) { + echo $LPMACHID $LPUSERID $pid.$i 0 > $LPSPOOL/$LPDEST/.$pid.$i^id + if (~ $j '') @{bind -b $LPLIB/process /bin; $LPPROC} >$LPSPOOL/$LPDEST/.$pid.$i + if not @{bind -b $LPLIB/process /bin; $LPPROC} <$j >$LPSPOOL/$LPDEST/.$pid.$i + if (~ $status '') { + mv $LPSPOOL/$LPDEST/.$pid.$i $LPSPOOL/$LPDEST/$pid.$i + mv $LPSPOOL/$LPDEST/.$pid.$i^id $LPSPOOL/$LPDEST/$pid.$i^id + } + if not { + rval='preprocessing failed' + rm -f $LPSPOOL/$LPDEST/.$pid.$i $LPSPOOL/queue/$LPDEST/.$pid.$i^id + exit $rval + } + } + if not { + switch ($j) { + case ''; @{ {echo -d^$LPDEST -pnoproc -M^$LPMACHID -u^$LPUSERID; bind -b $LPLIB/process /bin; $LPPROC} | lpsend.rc $DEST_HOST} + case *; @{ {echo -d^$LPDEST -pnoproc -M^$LPMACHID -u^$LPUSERID; bind -b $LPLIB/process /bin; $LPPROC} < $j | lpsend.rc $DEST_HOST} + } + rval=$status + } + } + if not { + echo $j cannot be opened >[1=2] + } +} diff --git a/sys/lib/lp/spooler/lpdspool b/sys/lib/lp/spooler/lpdspool new file mode 100755 index 000000000..cf8ad8c89 --- /dev/null +++ b/sys/lib/lp/spooler/lpdspool @@ -0,0 +1,14 @@ +#!/bin/rc + +if (! ~ $DEBUG '') flag x + + +if (~ $#* 0) *='/fd/0' + +for (j in $*) { + if (~ $j '/fd/0' || test -f $j) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $j | /$cputype/bin/aux/lpdsend -d$OUTDEV -tf -H$LPMACHID -P$LPUSERID $DEST_HOST >[2]$LPLOGDIR/$LPDEST^.st + } + if not { + echo $j cannot be opened >[1=2] + } +} diff --git a/sys/lib/lp/spooler/lpdspool+fonts b/sys/lib/lp/spooler/lpdspool+fonts new file mode 100755 index 000000000..a10a5824c --- /dev/null +++ b/sys/lib/lp/spooler/lpdspool+fonts @@ -0,0 +1,16 @@ +#!/bin/rc + +if (! ~ $DEBUG '') flag x + + +if (~ $#* 0) *='/fd/0' + +for (j in $*) { + if (~ $j '/fd/0' || test -f $j) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $j | + aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ | + /$cputype/bin/aux/lpdsend -d$OUTDEV -tf -H$LPMACHID -P$LPUSERID $DEST_HOST >[2]$LPLOGDIR/$LPDEST^.st + } + if not { + echo $j cannot be opened >[1=2] + } +} diff --git a/sys/lib/lp/spooler/mhcc b/sys/lib/lp/spooler/mhcc new file mode 100755 index 000000000..6f68709af --- /dev/null +++ b/sys/lib/lp/spooler/mhcc @@ -0,0 +1,52 @@ +#!/bin/rc +# send PostScript jobs to the spooler in the MHCC +# Request is made for bin and account numbers for each file (for typing pool). + +if (! ~ $DEBUG '') flag x + +FONTLIST=lw+ +if (test -r /sys/lib/postscript/font/$LPDEST) FONTLIST=$LPDEST + +switch ($LPCLASS) { +case *duplex*; DUPLEX=-s2 +case ''; DUPLEX='' +} +HOLE='' +STAPLE='-KSTAPLES\ n' +TRAY='' + +if (~ $IBIN vg view viewgr*;) $VGS=-fvg +if (~ $IBIN *hole*) HOLE=-fhole +if (~ $IBIN *staple*) STAPLE='' +if (~ $IBIN *simplex*) DUPLEX='' +if (~ $IBIN *11x17* *ledger*) TRAY='-KTRAY\ 11x17tray' + +if (~ $LAND '' -pport) LAND=-pport +if not LAND=-pland +i=0 +if (~ $#* 0) *='' +for (j) { + i=`{echo $i + 1 | hoc} +# check access to the file so that you know that a failure in the +# processing is a drastic error which will cause an exit from lp. + + if (~ $j '' || test -f $j) { + while (~ $#ACCOUNT 0 || ~ $ACCOUNT '' *0000) { + echo -n 'account=' >/dev/cons + ACCOUNT = (`{read</dev/cons}) + } + while (~ $#BIN 0 || ~ $BIN '' *000) { + echo -n 'bin=' >/dev/cons + BIN = (`{read</dev/cons}) + } + switch ($j) { + case ''; @{ bind -b $LPLIB/process /bin; $LPPROC } | + /sys/lib/postscript/bin/$cputype/download -f -H/sys/lib/postscript/font -mfontmap -p$FONTLIST | + {echo -K'ACCTNUM\ '$ACCOUNT -K'BIN\ '$BIN -d$LPDEST -c$COPIES -lpostscript $VGS $HOLE $STAPLE $DUPLEX $LAND $TRAY -u$LPUSERID -j$LPMACHID$pid.$i + cat} | lpsend.rc $DEST_HOST + case *; @{ bind -b $LPLIB/process /bin; $LPPROC } < $j | + /sys/lib/postscript/bin/$cputype/download -f -H/sys/lib/postscript/font -mfontmap -p$FONTLIST | + {echo -K'ACCTNUM\ '$ACCOUNT -K'BIN\ '$BIN -d$LPDEST -c$COPIES -lpostscript $VGS $HOLE $STAPLE $DUPLEX $LAND $TRAY -u$LPUSERID -j$LPMACHID$pid.$i + cat $j} | lpsend.rc $DEST_HOST + } + } +} diff --git a/sys/lib/lp/spooler/nospool b/sys/lib/lp/spooler/nospool new file mode 100755 index 000000000..820e474e9 --- /dev/null +++ b/sys/lib/lp/spooler/nospool @@ -0,0 +1,21 @@ +#!/bin/rc +if (! ~ $DEBUG '') flag x + + +if (~ $LPCLASS *sendEOT*) SENDEOT=1 +if not SENDEOT=0 + +if (~ $OUTDEV -) OUTDEV=/fd/1 +if (~ $#* 0) { + if (! ~ $DEBUG '') echo input file is stdin >[1=2] + @{bind -b $LPLIB/process /bin; $LPPROC} > $OUTDEV + if (~ $SENDEOT 1) echo -n `{ascii -t 4} > $OUTDEV +} +if not { + if (! ~ $DEBUG '') echo input files $* >[1=2] + for (i in $*) { + if (! ~ $DEBUG '') echo processing $i >[1=2] + @{bind -b $LPLIB/process /bin; $LPPROC} < $i > $OUTDEV + if (~ $SENDEOT 1) echo -n `{ascii -t 4} > $OUTDEV + } +} +exit '' diff --git a/sys/lib/lp/spooler/nt b/sys/lib/lp/spooler/nt new file mode 100755 index 000000000..32ce54485 --- /dev/null +++ b/sys/lib/lp/spooler/nt @@ -0,0 +1,14 @@ +#!/bin/rc + +if (! ~ $DEBUG '') flag x + + +if (~ $#* 0) *='/fd/0' + +for (j in $*) { + if (~ $j '/fd/0' || test -f $j) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $j | /$cputype/bin/aux/lpdsend -d$OUTDEV -H$LPMACHID -P$LPUSERID $DEST_HOST >[2]$LPLOGDIR/$LPDEST^.st + } + if not { + echo $j cannot be opened >[1=2] + } +} diff --git a/sys/lib/lp/spooler/nt-tekphaser350 b/sys/lib/lp/spooler/nt-tekphaser350 new file mode 100755 index 000000000..bce4b082d --- /dev/null +++ b/sys/lib/lp/spooler/nt-tekphaser350 @@ -0,0 +1,14 @@ +#!/bin/rc + +if (! ~ $DEBUG '') flag x + + +if (~ $#* 0) *='/fd/0' + +for (j in $*) { + if (~ $j '/fd/0' || test -f $j) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $j | aux/download -f -H/sys/lib/postscript/font -mfontmap -ptekphaser350 | /$cputype/bin/aux/lpdsend -d$OUTDEV -H$LPMACHID -P$LPUSERID $DEST_HOST >[2]$LPLOGDIR/$LPDEST^.st + } + if not { + echo $j cannot be opened >[1=2] + } +} diff --git a/sys/lib/lp/spooler/pcclone b/sys/lib/lp/spooler/pcclone new file mode 100755 index 000000000..888f18ba5 --- /dev/null +++ b/sys/lib/lp/spooler/pcclone @@ -0,0 +1,14 @@ +#!/bin/rc +if (! ~ $DEBUG '') flag x + +if (~ $OUTDEV -) OUTDEV=/fd/1 +if (~ $#* 0) { + @{bind -b $LPLIB/process /bin; $LPPROC} | aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ > $OUTDEV + if (! ~ $LPDEST stdout) echo -n `{ascii -t 4} > $OUTDEV +} +if not { + for (i in $*) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $i | aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ > $OUTDEV + if (! ~ $LPDEST stdout) echo -n `{ascii -t 4} > $OUTDEV + } +} +exit '' diff --git a/sys/lib/lp/spooler/pcclone.new b/sys/lib/lp/spooler/pcclone.new new file mode 100755 index 000000000..57591ee48 --- /dev/null +++ b/sys/lib/lp/spooler/pcclone.new @@ -0,0 +1,22 @@ +#!/bin/rc +if (! ~ $DEBUG '') flag x + +if (~ $OUTDEV -) OUTDEV=/fd/1 + +# make a place for pc's to spool files that is private +ramfs +mkdir /tmp/log /tmp/prob /tmp/queue +bind -b /tmp/log $LPLIB/log +bind -b /tmp/prob $LPLIB/prob +bind -b /tmp/queue $LPLIB/queue + +if (~ $#* 0) { + @{bind -b $LPLIB/process /bin; $LPPROC} | aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ > $OUTDEV + if (! ~ $LPDEST stdout) echo -n `{ascii -t 4} > $OUTDEV +} +if not { + for (i in $*) { + @{bind -b $LPLIB/process /bin; $LPPROC} < $i | aux/download -f -H/sys/lib/postscript/font -mfontmap -plw+ > $OUTDEV + if (! ~ $LPDEST stdout) echo -n `{ascii -t 4} > $OUTDEV + } +} +exit '' diff --git a/sys/lib/lp/spooler/ps630 b/sys/lib/lp/spooler/ps630 new file mode 100755 index 000000000..7e22d213e --- /dev/null +++ b/sys/lib/lp/spooler/ps630 @@ -0,0 +1,30 @@ +#!/bin/rc +fn sigexit {echo -n '[4i';exit 1} +# Send output to the printer port on an AT&T 630/730 terminal +# Process and enqueue files to be printed +# take arguments as input files +i=0 +if (~ $#* 0) *='' +for (j in $*) { + i= `{echo $i + 1|hoc} + +# check access to the file so that you know that a failure in the +# processing is a drastic error which will cause an exit from lp. + + if (~ $j '' || test -f $j) { + switch ($j) { + case ''; @{ + echo -n '[5i'; sleep 1 + bind -b $LPLIB/process /bin + $LPPROC + echo -n '[4i' + } + case *; @{ + echo -n '[5i'; sleep 1 + bind -b $LPLIB/process /bin + $LPPROC + echo -n '[4i' + } <$j + } + } +} |