papd — AppleTalk print server daemon
papd is the AppleTalk printer daemon. This daemon accepts print jobs from AppleTalk clients (typically Macintosh computers) using the Printer Access Protocol (PAP). When used with System V printing systems, papd spools jobs directly into an lpd(8) spool directory and wakes up lpd after accepting a job from the network to have it re-examine the appropriate spool directory. The actual printing and spooling is handled entirely by lpd.
papd can also pipe the print job to an external program for processing, and this is the preferred method on systems not using CUPS to avoid compatibility problems with all the flavours of lpd in use.
As of Netatalk 2.0, CUPS is also supported. Simply using cupsautoadd as the first papd.conf entry will share all CUPS printers automagically. It is still possible to overwrite these defaults by individually defining printer shares. See papd.conf(5) for details on the configuration file format.
papd is typically started at boot time from
system init scripts or services. It first reads from its configuration
file, papd.conf
.
If no configuration file is given, the hostname of the machine is used as the NBP name, and all options take their default value.
Do not fork or disassociate from the terminal.
configfile
Consult configfile
instead of
papd.conf
for the configuration
information.
printcap
Consult printcap
instead of
/etc/printcap
for LPD configuration
information.
pidfile
Specifies the file in which papd stores its process id.
Print version information and exit.
PSSP (Print Server Security Protocol) is an authentication protocol carried out through postscript printer queries to the print server. Using PSSP requires LaserWriter 8.6.1 or greater on the client Mac. The user will be prompted to enter their username and password before they print. It may be necessary to re-setup the printer on each client the first time PSSP is enabled, so that the client can figure out that authentication is required to print. You can enable PSSP on a per-printer basis. PSSP is the recommended method of authenticating printers as it is more robust than CAP-style authentication, described below.
CAP-style authentication gets its name from the method CAP (Columbia AppleTalk Package) used to authenticate its Mac clients' printing. This method requires that a user login to a file share before they print. afpd records the username in a temporary file named after the client's AppleTalk address, and it deletes the temporary file when the user disconnects. Therefore CAP style authentication will not work for clients connected to afpd via TCP/IP. papd gets the username from the file with the same AppleTalk address as the machine connecting to it. CAP-style authentication will work with any Mac client. If both CAP and PSSP are enabled for a particular printer, CAP will be tried first, then papd will fall back to PSSP.
The list of UAMs to use for authentication (specified with the 'am' option) applies to all printers. It is not possible to define different authentication methods on each printer. You can specify the list of UAMS multiple times, but only the last setting will be used. Currently, uams_guest.so and uams_clrtxt.so are supported as printer authentication methods. The guest method requires a valid username, but not a password. The Cleartext UAM requires both a valid username and the correct password.
Print authentication is only supported on Mac OS 9 and earlier.
papd.conf
Default configuration file.
/etc/printcap
Printer capabilities database.
.ppd
PostScript Printer Description file. papd answers configuration and font queries from printing clients by consulting the configured PPD file. Such files are available from Adobe, Inc., or from the printer's manufacturer. If no PPD file is configured, papd will return the default answer, possibly causing the client to send excessively large jobs.
papd accepts characters with the high bit set (a full 8-bits) from the clients, but some PostScript printers (including Apple's LaserWriter family) only accept 7-bit characters on their serial interface by default. The same applies for some printers when they're accessed via TCP/IP methods (remote LPR or socket). You will need to configure your printer to accept a full 8 bits or take special precautions and convert the printjob's encoding (e.g. by using co="protocol=BCP" when using CUPS 1.1.19 or above).
When printing clients run Mac OS X 10.2 or later, take care that PPDs do not make use of *cupsFilter: comments unless the appropriate filters are installed at the client's side, too.