papd

8 24 May 2024 @NETATALK_VERSION@

papd

AppleTalk print server daemon

          papd

          -d

          -f configfile

          -p printcap

          -P pidfile

## Description

`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.

## Options

-d

- Do not fork or disassociate from the terminal.

-f `configfile`

- Consult `configfile` instead of `papd.conf` for the configuration information.

-p `printcap`

- Consult `printcap` instead of `/etc/printcap` for LPD configuration information.

-P `pidfile`

- Specifies the file in which `papd` stores its process id.

## Notes

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.

## Files

`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.

## Caveats

`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.

## See also

lp

1 ,lpr 1 ,

lprm

1 ,

printcap

5 ,

lpc

8 ,

lpd

8 ,

papd.conf

8 .