Thanks to:
Paul Tyler <pct_at_ansto.gov.au>
"Richard Eisenman" <eisenman_at_tricity.wsu.edu>
Lucien_HERCAUD_at_paribas.com
Mark Zander <mark.zander_at_sheridanc.on.ca>
"MacDonell, Dennis" <DennisMacDonell_at_auslig.gov.au>
Tom Webster <webster_at_ssdpdc.lgb.cal.boeing.com>
Most confirmed my empirical determination that filters in
the BSD printing system are not applied when the job
is sent to a remote machine.
Solutions:
Dual queue:
Most talked about having the local machine having
a dual queue, the first one sending its (filtered)
output to the second queue which kicks the job to the
remote machine. Since the first queue is local, filtering
is done.
lpr wrapper:
Replace lpr with a wrapper program that reads an control
file to determine if the print queue wants pre-processing.
If so, process and send along to the real lpr; if not,
just send the job directly to the real lpr. This maintains
a single queue situation.
Direct printing to HP 5:
Send the jobs directly to an HP printer using lp=host%port
(e.g. lp=printername%9100 ).
In DU, this apparently will allow filters to be applied.
LPRng:
Rip out the standard BSD system and install LPRng.
Dual
Well, I've done the dual queue kind of thing for other things.
Unfortunately this method increases the complexity of
an environment with large numbers of queues and results
in the remote queue not being under the control of the
originating user.
Wrapper
The lpr wrapper is a relatively simple program to write and
does maintain the UID of the sending user. It would enable
specific filters to be applied to specific queues depending
on how one writes an rc file for it.
Direct print
For the HP 5s (and maybe IVs also), if this works, it is
probably the easiest answer.
LPRng
This seems to be the most complete solution, but it does take
some setup time. It does not look like a difficult installation,
but like anything with a large number of variables, should probably
be set up on a test machine first.
I highly recommend the various documentation pages that come
with this package, even if you were never going to install it:
http://www.astart.com/lprng/LPRng.html
It has some very clear explanations of the BSD printing system.
(My only concern is due to not knowing how widely used LPRng is.)
-mike
=========== Original Question ==============
Date: Tue, 28 Apr 1998 22:23:42 -0400 (EDT)
Question -- with BSD printing to a queue on a remote machine,
is it true that the pipeline of filters is NOT set up on the
local machine? If so, any workaround?
Details....
I think I've been troubleshooing a feature rather than a problem.
I've been trying to run gnu enscript in a script invoked as
an "if" filter (or "of") on a queue which then sends that altered file
to another machine (rm). It seemed that the filter was being run,
but that it was not in the pipeline. From an earlier SUMMARY,
Tom Webster is quoted:
1. LPRng -- There are patches for LPRng to allow the local host to perform
APS filtering PRIOR to sending the job to a remote printer. LPRng looks
pretty cool, but requires you to replace your normal BSD printing tools.
The big problem with that is that LPRng tends to get wiped out every time
you upgrade DU.
2. If you are looking at an HP or another net printer that allows you
to print directly to a TCP port, DU is supposed to treat that as a
local printer (meaning that filters are applied). You should be able
to use APS with a TCP/telnet printer. [by APS I think Tom is
referring to the magicfilter program]
This implied to me that filtering is not done at all on a local
machine when the print job is sent to a remote machine. If that is
true, that is a fundamental aspect of BSD printing that I never knew.
This also would explain why such a filter failed to operate when
the remote machine was actually a JetDirect card.
A solution might be LPRng, given what Tom alluded to in #1.
More details about it would be appreciated.
thanks,
-mike
---------------------------------------------------------------------------
Michael A. Crowley Director of Networking
mcrowley_at_mtholyoke.edu 216 Dwight Hall, Mount Holyoke College
413-538-2140 South Hadley, MA 01075-6415
fax: 413-538-2331
http://www.mtholyoke.edu/~mcrowley
---------------------------------------------------------------------------
Received on Tue May 05 1998 - 17:33:12 NZST