[comp.unix.ultrix] LN03R scriptprinter problem solved

barrett@jhunix.HCF.JHU.EDU (Dan Barrett) (08/14/89)

	Thank you to the people who responded to my problem with the
LN03R Scriptprinter.  George Robbins of Commodore-Amiga solved it;
it was /usr/lib/lpf that was truncating lines, not the printer itself.

#define EAT_OWN_WORDS 1

	I told a few netters that the LN03R was at fault, and that it
was not capable of printing Postscript files with lines longer than 80
or 132 characters (depending on the phase of the moon).  I WAS WRONG.
THE PROBLEM WAS DUE TO OUR PRINT FILTER.
	Then again, the documentation on the "lpr" system is not
the world's greatest piece of literature either.

#undef EAT_OWN_WORDS

	Here is a working /etc/printcap entry that we are now using for our
Scriptprinter:

	ln03r|lnps|ps|ln03R postscript printer on a DECserver 200:\
		:br#9600:\
		:ts=CS2ATS:\
		:lp=/dev/tty14:\
		:df=/usr/local/bin/dvi2psfilter:\
		:of=/usr/lib/lpf:\
		:if=/usr/local/filters/psfilter:\
		:sh:\
		:op=PORT_2:\
		:sd=/usr/spool/ln03r:\
		:lf=/usr/spool/ln03r/messages:

The trick was to define an "accounting filter" with the "if" parameter.
/usr/local/filters/psfilter is nothing but this:

		main()
		{
			register char c;
			while ((c=getchar()) != EOF)
				putchar(c);
		}

Strangely enough, /bin/cat would not work as the accounting filter,
as George suggested it would.  Looking at the source code to /bin/cat
on our ULTRIX machine, I'm not surprised.  What a WEIRD piece of code!


                                                        Dan

 //////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
| Dan Barrett, Systems Administrator  --  barrett@cs.jhu.edu (128.220.13.4) |
| Dept. of Computer Science, Johns Hopkins University, Baltimore, MD  21218 |
| E-mail addresses:  ARPANET: barrett@cs.jhu.edu                            |
|                    BITNET:  ins_adjb@jhuvms.bitnet                        |
|                    UUCP:    barrett@jhunix.UUCP                      noog |
 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/////////////////////////////////////

grr@cbmvax.UUCP (George Robbins) (08/14/89)

In article <2288@jhunix.HCF.JHU.EDU> barrett@jhunix.HCF.JHU.EDU (Dan Barrett) writes:
...
> The trick was to define an "accounting filter" with the "if" parameter.
> /usr/local/filters/psfilter is nothing but this:
...
> Strangely enough, /bin/cat would not work as the accounting filter,
> as George suggested it would.  Looking at the source code to /bin/cat
> on our ULTRIX machine, I'm not surprised.  What a WEIRD piece of code!

Hmmm.  I was sure I'd tried cat and it worked, however on reflection it
occurs to me that lpd passes a number of strange arguments to the filter,
which cat(1) no doubt pukes on.  At some point I was using a little
program much like yours, but it also did lf->cr/lf and a moderate amount
of form-feed eating.

Maybe unix needs a /bin/tcat (trivial cat) than only copies stdin to stdout
no matter what you tell it to do?  8-)


-- 
George Robbins - now working for,	uucp: {uunet|pyramid|rutgers}!cbmvax!grr
but no way officially representing	arpa: cbmvax!grr@uunet.uu.net
Commodore, Engineering Department	fone: 215-431-9255 (only by moonlite)

chet@kiwi.CWRU.EDU (Chet Ramey) (08/14/89)

In article <7651@cbmvax.UUCP> grr@cbmvax.UUCP (George Robbins) writes:

>Maybe unix needs a /bin/tcat (trivial cat) than only copies stdin to stdout
>no matter what you tell it to do?  8-)

Unix needs a /bin/cat (standard cat(1)) that only copies stdin to stdout
no matter what you tell it to do.


Chet Ramey			"We are preparing to think about contemplating 
Network Services Group, CWRU	 preliminary work on plans to develop a
chet@cwjcc.INS.CWRU.Edu		 schedule for producing the 10th Edition of 
				 the Unix Programmers Manual." -- Andrew Hume




Chet Ramey			"We are preparing to think about contemplating 
Network Services Group, CWRU	 preliminary work on plans to develop a
chet@cwjcc.INS.CWRU.Edu		 schedule for producing the 10th Edition of 
				 the Unix Programmers Manual." -- Andrew Hume