cups-driverd - cups driver daemon


cups-driverd cat ppd-name cups-driverd list request_id limit options


cups-driverd shows or lists PPD files. It is run in response to CUPS-Add-Modify-Printer or CUPS-Get-Devices requests. The first form ("cups-driverd cat ppd-name") writes the named PPD file to stdout. The output format is an uncompressed PPD file.

The second form lists the available manufacturers or PPD files to stdout as indicated by the options argument. The output format is an IPP response message. The request_id argument is the request ID from the original IPP request, typically 1. The limit argument is the limit value from the original IPP request - 0 means no limit. Finally, the options argument is a space-delimited list of attributes ("name=value name=value ...") that were passed in with the request. Currently cups-driverd looks for the ppd-make and requested-attributes attributes and tailors the output accordingly.


Drivers can be static PPD files under the /usr/share/cups/model directory or programs under the /usr/lib/cups/driver directory. Static PPD files must conform to the Adobe PPD File Format Specification version 4.3 and may be compressed using the gzip(1) program. Driver programs must implement the command-line interface shown in the next section.


Driver programs provide an interface to dynamically-generated PPD files. The following arguments are currently defined:
drivername list
 Lists the supported PPD files to stdout.
drivername cat ppdname
 Writes the named PPD file to stdout.

LISTING FILES (drivername list)

When run with the single argument "list", the program must list the available PPD files it can generate to stdout using the following format: "drivername:ppdname" language "make" "make and model" "1284 device id"

Drivername is the name of the driver program. Ppdname is the name used to select the given driver. Language is the locale associated with the default language of the PPD file, typically "en". Make is the Manufacturer name from the PPD file. Make and model is the NickName name from the PPD file. 1284 device id is the 1284DeviceId from the PPD file, if any.

WRITING FILES (drivername cat ppdname)

When the driver program is run with the "cat ppdname" arguments, it must write the named PPD file to stdout, uncompressed. If the named PPD file does not exist, the driver program must not write any output to stdout and report the error to stderr instead.


Error messages can be relayed back to cupsd by writing them to stderr. The following prefixes are recognized:
DEBUG: [drivername]
 Debugging messages
ERROR: [drivername]
 Error messages
INFO: [drivername]
 Informational messages


cupsd(8), cupsd.conf(5), cupstestppd(1), http://localhost:631/help


Copyright 2007-2008 by Apple Inc.

openSUSE Logo