papd
is the AppleTalk printer daemon. This daemon accepts print jobs from
AppleTalk clients (typically Macintosh computers) using the Printer
Access Protocol (PAP).
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 to avoid compatibility problems with all
the flavors of lpd in use.
papd
is typically started at boot time, out of system init scripts.
It first reads from its configuration file,
/usr/etc/netatalk/papd.conf.
The file is in the same format as
/etc/printcap.
See
printcap(5)
for details. The name of the entry is registered with
NBP.
The following options are supported:
Name
Type
Default
Descripton
pd
str
`.ppd'
Pathname to PPD file
pr
str
`lp'
LPD printer name (or print command)
op
str
`operator'
Operator name for LPD spooling
ca
str
NULL
Pathname used for CAP-style authentication
sp
bool
false
PSSP-style authentication
am
str
NULL
UAMS to use for authentication
pa
str
NULL
Printer's AppleTalk address?
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. Write some
debugging information to stderr.
-fconfigfile
Consult
configfile
instead of
/usr/etc/netatalk/papd.conf
for the configuration information.
-pprintcap
Consult
printcap
instead of
/etc/printcap
for LPD configuration information.
EXAMPLE
The following papd configuration file sets up three print spoolers.
The first spooler is known by the NBP name
Mac Printer Spooler,
and uses a PPD file located in /usr/share/lib/ppd.
In addition, the user mcs
will be the owner of all jobs that are spooled.
The second spooler is known as
HP Printer
and all options are the default. The third spooler is known as
HP 8100 .
It pipes the print job to lpr for printing. PSSP authenticated printing
is enabled, as is CAP-style authenticated printing. Both methods support
guest and cleartext authentication as specified by the 'am' option. The
PPD used is /etc/atalk/ppds/hp8100.ppd.
Mac Printer Spooler:\
:pr=ps:\
:pd=/usr/share/lib/ppd/HPLJ_4M.PPD:\
:op=mcs:
HP Printer:\
:
HP 8100:\
:pr=|/usr/bin/lpr -Plp:\
:sp:\
:ca=/tmp/print:\
:am=uams_guest.so,uams_pam.so:\
:pd=/etc/atalk/ppds/hp8100.ppd:
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
that CAP-style authentication, described below.
CAP-style authentication gets its name from the method the 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 clients
Appletalk address, and it deletes the temporary file when the user
disconnects.
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. CAP-style authenticated printing is a compile-time option for
netatalk. If both CAP and PSSP are enabled for a particular printer, CAP
will be tried first, then it 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 only
uams_guest.so, uams_passwd.so, and uams_pam.so are supported as printer
authentication methods. The guest method requires a valid username, but
not a password. The passwd and pam methods require both a valid username
and the correct password.
FILES
/usr/etc/netatalk/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, via anonymous ftp from ftp.adobe.com in /pub/adobe/printerdrivers/mac/all/ppdfiles/
(ftp://ftp.adobe.com//pub/adobe/printerdrivers/mac/all/ppdfiles/), 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 Computer's LaserWriter family)
only accept 7-bit characters on their serial interface by default. You will
need to configure your printer to accept a full 8 bits.