LPRng-HOWTO: 15 Oct 2001 (For LPRng-3.7.9)
Prev | Chapter 19. RFC 1179 - Line Printer Daemon Protocol | Next

# 19.5. Control File Contents

The control file consists of a set of lines which either provide printing information or specify data files to be printed. The information lines start with upper case letters or digits, while the data files lines start with lower case letters. Here is a sample control file:

        Hh4.private
        J(stdin)
        CA
        Lpapowell
        Apapowell@h4+955
        Ppapowell
        fdfA955h4.private
        N(stdin)
        UdfA955h4.private

The following are the letters and their meanings in the control file.

Table 19-2. Control File Lines and Purpose

Letter | Defined | Purpose
--- | --- | ---
A | LPRng | Identifier for job
C | RFC1179 | Class for banner page
H | RFC1179 | Host name
I | RFC1179 | Indent Printing
J | RFC1179 | Job name for banner page
L | RFC1179 | Print banner page
M | RFC1179 | Mail When Printed
N | RFC1179 | Name of source file
P | RFC1179 | User identification
Q | LPRng | Queue name
R | LPRng | Accounting info
S | RFC1179 | Symbolic link data
T | RFC1179 | Title for pr
U | RFC1179 | Unlink data file
W | RFC1179 | Width of output
Z | LPRng | Filter options
1 | RFC1179 | troff R font
2 | RFC1179 | troff I font
3 | RFC1179 | troff B font
4 | RFC1179 | troff S font
c | RFC1179 | Plot CIF file
d | RFC1179 | Print DVI file
f | RFC1179 | Print formatted file
g | RFC1179 | Plot file
k | RFC1179 | Reserved for use by Kerberized LPRng clients and servers.
l | RFC1179 | Print file leaving control characters
n | RFC1179 | Print ditroff output file
o | RFC1179 | Print Postscript output file
p | RFC1179 | Print file with 'pr' format
t | RFC1179 | Print troff output file
v | RFC1179 | Print raster file
z | RFC1179 | Reserved for future use with the Palladium print system.

The `A` (Identifier) line was introduced to record a unique system wide job identifier for LPRng submitted jobs. This is basically formed from the user name, job number, and host at the time of submission. For example: `papowell@h4+955` is job number 995 submitted by papowell from host h4.

The `C` (Class) line is set by the `lpr -C class` option, and the value can be used to control printing. For example, the `lpc class zone` command would restrict job printing to only jobs with class `zone`.

The `H` (hostname), `P` (username), and `J` (jobname) fields are used to identify the host and user which sent the job, and to provide information to be displayed by lpq when reporting job status.

The `L` (print banner page) field is one that has caused many problems for users. RFC1179 indicates that its presence causes the banner page to be printed, and its absence suppresses banner pages. The `lpr -h` option suppresses putting this line into the control file. Usually the `L` field is a duplicate of the `P` field.

The `M` (mail information) field supplies a mail address for LPRng to send mail to when a job is completed. See Job Completion Notification Requested for more details.

The `N` (file name) field is usually provided to identify the file name corresponding to the data file. This can be used to print names on page separators, etc. LPRng largely ignores this line.

The `I` (indent) and `W` (width) fields are supposed to specify a page indent and width for printing. These fields are passed to filters if they are present.

The `Q` (queue name) field is an LPRng extension, and contains the name of the print queue the job was originally sent to. See qq printcap option for details.

The `R` (accounting info) field was added by LPRng to allow a specified account to be billed for job printing. The `lpr -Rname` option can be used to specify the accounting name.

The `S` (symbolic link) and `U` (unlink after printing) lines were used by the original BSD lpd print system to control how it passed files to the print server. LPRng ignores these lines. In fact, it will remove `S` lines and force the `U` lines to refer only to job data files. This closes a nasty security loophole on non-LPRng print spoolers.

The `T` (pr job title) is used with the `lpr -p` operation to supply a banner to the `pr` program.

The `Z` (filter options) value is specified with `lpr -Zoption` and is passed to the data file filters during the printing operation. See Filters for details on how the this is used during the printing process.

All of the lower case letters are reserved for format specifications for data files. In the control file, these are followed by the name of the data file to which they correspond. While in principle different data files in the control file can have different formats, this has not been implemented in any known spooling system. See Filters for details on how the data file formats are used during the printing process.

Prev | Home | Next
Data File Transfer | Up | lpq Requests