printcap(4) printcap(4)NAME printcap - printer-capability database SYNOPSIS /etc/printcap DESCRIPTION printcap is a simplified version of the termcap(4) database used to describe line printers. The spooling system accesses the printcap file every time it is used, allowing dynamic addition and deletion of printers. Each entry in the database is used to describe one printer. This database may not be substituted, as is possible for termcap, because it may allow accounting to be bypassed. The default printer is normally lp, though the environment variable PRINTER may be used to override this. Each spooling utility supports the flag option -Pprinter to allow explicit naming of a destination printer. For a complete discussion on how to set up the database for a given printer, see A/UX Local System Administration. Capabilities Refer to termcap(4) for a description of the file layout. Name Type Default Description af str NULL Name of accounting file. br num none If lp is a tty, set the baud rate (ioctl call). cc num 0 If lp is a tty, clear control flag bits (termio.h). cf str NULL cifplot data filter. cs num 0 Similar to cc, but set the bits. df str NULL Tex data filter (DVI format). fd bool FALSE If lp is a tty, use DTR/DCD flow control. ff str ``\f'' String to send for a form feed. fo bool FALSE Print a form feed when device is opened. gf str NULL Graph data filter (plot(3X) format). hl bool FALSE Print the burst header page last. ic num 0 If lp is a tty, clear input flag bits (termio.h). if str NULL Name of text filter that does accounting. is num 0 Similar to ic, but set the bits. lc num 0 If lp is a tty, clear the local flag bits (termio.h). lf str ``/dev/console'' Error logging filename. lo str ``lock'' Name of lock file. lp str ``/dev/printer'' Device name to be opened for output. ls num 0 Similar to lc, but set the bits. mx num 1000 Maximum file size (in BUFSIZ blocks). Use 0 for unlimited size. nd str NULL Next directory for list of queues (unimplemented). nf str NULL Ditroff data filter (device independent troff). oc num 0 If lp is a tty, clear output flag bits (termio.h). of str NULL Name of the output filtering program. os num 0 Similar to oc but set the bits. January 1992 1
printcap(4) printcap(4)pc num 200 Price per foot or page in hundredths of a cent. pl num 66 Page length (in lines). pw num 132 Page width (in characters). px num 0 Page width in pixels (horizontal). py num 0 Page length in pixels (vertical). rf str NULL Filter for printing FORTRAN-style text files. rg str NULL Restricted group. Only members of the group are allowed access. rm str NULL Machine name for remote printer. rp str ``lp'' Remote printer-name argument. rs bool FALSE Restrict remote users to those with local accounts. rw bool FALSE Open the printer device for reading and writing. sb bool FALSE Short banner (one line only). sc bool FALSE Suppress multiple copies. sd str ``/usr/spool/lpd'' Spool directory. sf bool FALSE Suppress form feeds. sh bool FALSE Suppress printing of burst page header. st str ``status'' Status filename. tf str NULL Troff data filter (cat phototypesetter). tr str NULL Trailer string to print when queue empties. vf str NULL Raster image filter. If the local line-printer driver supports indentation, the daemon must understand how to invoke it. Filters The lpd(8) daemon creates a pipeline of filters to process files for various printer types. The filters selected depend on the flags passed to lpr(1). The pipeline setup is: -p pr | if Regular text + pr(1) none if Regular text -c cf cifplot -d df CVI (tex) -g gf plot(3) -n nf ditroff -f rf Fortran -t tf troff -v vf Raster image The if filter is invoked with arguments: if [ -c ] -wwidth -llength -iindent -n login -h host acct-file The -c flag option is passed only if the -l flag option (pass control characters literally) is specified to lpr. The values of width and length specify the page width and length (from pw and pl, respectively) in characters. The -n and -h parameters specify the login name and the host name of the owner of the job, respectively. The value of acct-file is passed from the af printcap entry. 2 January 1992
printcap(4) printcap(4)If no if filter is specified, the of filter is used instead, with the distinction that of is opened only once, while if is opened for every individual job. Thus, if is better suited to performing accounting. The of filter only has the width and length flag options. All other filters are called as follows: filter -xwidth -ylength -n login -h host acct-file where width and length are represented in pixels, specified by the px and py entries, respectively. All filters take stdin as the file and stdout as the printer, may log either to stderr or syslog(3), and must not ignore SIGINT. STATUS MESSAGES AND VALUES Error messages generated by the line printer programs themselves (the lp* programs) are logged by syslog(3) using the LPR facility. Messages printed on stderr of one of the filters are sent to the corresponding lf file. The filters may, of course, use syslog themselves. Error messages sent to the console have both a RETURN and a line feed appended to them, rather than just a line feed. SEE ALSO termcap(4), lpr(1), lpq(1), lprm(1) in A/UX Command Reference lpc(1M), lpd(1M), pac(1M) in A/UX System Administrator's Reference January 1992 3