SUMMARY: How to spool "raw" print files from Solaris to WinNT.

From: Frank Pardo (
Date: Wed May 14 1997 - 08:59:53 CDT

Dear Colleagues,

It looks like the Solaris (ATT, SYSV, lp/lpsched) software won't let me
do what I need, but there is a workaround: the BSD (lpr/lpd) software.
The "-l" switch tells "/usr/ucb/lpr" to send the "l" command to the
remote print server.

Many thanks to Leo Crombach, for the very prompt and very helpful reply.



I asked this same question a while ago and the best response I got was
to use /usr/ucb/lpr -l -Pprinter <filename>. This solution will work.
Unfortunately, I don't know of a way to get it to work with lp at this

Leo Crombach
System Administrator
Tropel Corporation
60 O'Connor Road
Fairport, New York 14450


I'm having trouble sending "raw" (i.e. PCL) files from Solaris 2.4 to
Windows NT. Half of the answer came out of a Windows NT manual:

        The most common problem people encounter when printing from
        UNIX systems to a Windows NT print server is that their
        print jobs are processed as TEXT data type instead of RAW
        data type, as they would be on a UNIX system. This happens
        because the UNIX systems almost always send the "f" control
        command, expecting that the control command isn't too
        important, because the TCP/IP (LPD) server parses the job to
        identify what data type to use and how to alter the job.
        However, Windows NT relies on the control command to
        determine the data type. As a result, the LPD service on
        Windows NT assigns the TEXT data type to most jobs.

        To correct this problem, reconfigure the LPR client to send
        the "l" control command so the LPD will assign the RAW data

I verified the WinNT manual's claim by looking at the Ethernet packets;
the bad command is the "fdfA004admin\n" in this line of "snoop" output:


I also checked their veracity by having a look at RFC 1179. Apparently
they're right: "f" means "Print <f>ormatted file" and "l" means "Print
file <l>eaving control characters".

The second half of the answer has eluded me. I've tried the Solaris
Answerbook, the man pages, and the archives of this list, to no avail.
No idea how to make "l" replace "f" in the spooler command.

The simplest solution, moving the HP printer from the WinNT server to
the Solaris server, is not feasible right now, for reasons I won't bore
you with. So, the question is: What must I do on the Sparc server to
make Solaris send the "l" command out to the WinNT print server?

  Frank Pardo  <>
  Transaction Information Systems
  New York City

Chi fila ha una camicia e chi non fila ne ha due. -- Italian proverb

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:11:55 CDT