diff options
Diffstat (limited to 'upstream/debian-bookworm/man5/lpd.conf.5')
-rw-r--r-- | upstream/debian-bookworm/man5/lpd.conf.5 | 747 |
1 files changed, 747 insertions, 0 deletions
diff --git a/upstream/debian-bookworm/man5/lpd.conf.5 b/upstream/debian-bookworm/man5/lpd.conf.5 new file mode 100644 index 00000000..9e9260c4 --- /dev/null +++ b/upstream/debian-bookworm/man5/lpd.conf.5 @@ -0,0 +1,747 @@ +.ds VE LPRng-3.9.0 +.TH LPD.CONF 5 \*(VE "LPRng" +.SH NAME +.nf +lpd.conf \- configuration file for the LPRng line printer spooler system +.fi +.SH DESCRIPTION +The file \fBlpd.conf\fR is used to provide configuration information for +the LPRng Printer spooler system and defaults for printcap information. +Leading spaces on lines are ignored, +and blank lines and lines whose first nonblank character is a sharp +(``#'') are ignored. +Trailing blanks and tabs (whitespace) for an option value +are deleted unless the last one is escaped with a backslash +(``\\''). +All other lines +specify parameters and should be of the following form: +.RS +.nf +keyword +keyword@ +keyword#value +keyword=value +.RE +.fi +Note that these values are the same format as +.BR printcap (5) +values. +Values in the configuration can contain +host or machine dependent information; +to assist with this, +the following +.I "escape sequences" +in the configuration information are +replaced as follows: +.TP +\fB%h\fR +the short form +of the host name +(i.e.- non fully qualified). +.TP +\fB%H\fR +the fully qualified host name. +.TP +\fB%a\fR +the abbreviated architecture name, +\fIsun4\fR, \fIsol2\fR, \fIhpux\fR, \fIaix\fR, \fIirix5\fR, etc. +This value can be set using the \fBarchitecture\fR +keyword in the configuration file and is set to a +default value at compile_time. +.TP +\fB%P\fR +the printer name from the printcap entry +(see below). +.TP +\fB%R\fR +the remote printer name from the printcap entry. +.TP +\fB%M\fR +the remote host name from the printcap entry. +This is truncated to the short host name. +.PP +For example, +on host +.I dickory.sdsu.edu, +the strings +.I "short=\fB%h\fR" +.I "long=\fB%H\fR" +.I "arch=\fB%a\fR" +would be expanded as +.I "short=dickory" +.I "long=dickory.sdsu.edu" +.I "arch=sun4" . +.PP +The P, R, and M tags are provided for use with combined +configuration and printcap information. +These values are not expanded when the printcap information is +initially processed, +and can be used only in a limited number of printcap or +other entries. +Currently only the +printcap :sd: (spool directory) +and :forward_server: (forward server) entries use these. +.PP +.SH "GENERAL CONFIGURATION PARAMETERS" +.PP +Some of the following parameters take lists of files or directories. +Unless otherwise explicitly stated, +these lists can be separated by commas (,), +semicolons (;), or colons, (punctuation) +and possibly tabs or spaces (whitespace) as well. +.PP +Keyword names can use either underscores (_) or hyphens (-) +in their names, +but the underscore is preferred. +.TP +\fBinclude\fR pathname [pathname*] (no default) +This can be used to include files into +the \fBlpd.conf\fR file. +The include file parameter a whitespace separated +list of files; the files must have absolute pathnames and must +be readable. +.TP +\fBae\fR (default: "jobend $H $n $P $k $b $t") +This specifies either a script or a filter to be invoked +at the send of a job for accounting purposes. +See \fBas\fP for the matching accounting at start, +and the +.BR printcap (5) +and +.BR lpd (8) +man pages for details. +.TP +\fBallow_getenv\fR (default: "LPD_CONF") +This option specifies an environment variable +whose value is a configuration file. +Use of this is restricted to test purposes, +and SUID ROOT client and server will not run when the variable is enabled. +.TP +\fBar\fR (default: yes) +See +.BR printcap (5) +for details. +.TP +\fBarchitecture\fR +The default value is set at compile time and can be +overwritten with this parameter. +The default value of this parameter is set at compile time +and it is used when +expanding the special sequence \fB%a\fR in +pathname and filename strings in this config file. +.TP +\fBauth\fR (default: NULL) +Authentication type to be used for client to server communication. +.TP +\fBauth_client_filter\fR (default: NULL) +Program to be used for client to server communication. +.TP +\fBauth_forward\fR (default: NULL) +Authentication type to be used for server to server communication. +.TP +\fBauth_forward_filter\fR (default: NULL) +Program to be used for server to server communication. +.TP +\fBauth_forward_id\fR (default: NULL) +Authentication id of remote server for server to server communication. +.TP +\fBauth_receive_filter\fR (default: NULL) +Program to be used by server receive server or client communication. +.TP +\fBauth_server_id\fR (default: NULL) +Authentication id of originating client or server. +.TP +\fBas\fR (default: "jobstart $H $n $P $k $b $t") +See \fBas\fR. +.TP +\fBbk\fR (default: no) +See \fBprintcap\fP(5) for details. +.TP +\fBbk_filter_options\fR +(default: "$P $w $l $x $y $F $c $L $i $J $C $0n $0h $-a") +If the "bkf" (backwards compatible filter) flags is set in the +printcap entry and the original filter specification does not have +a `$` in it, +this option string is appended to a filter specification, +and the string expanded with values from the printcap information +and job information. +(see of_filter_options, filter_options, bk_filter_options, bk_of_filter_options) +.TP +\fBbk_of_filter_options\fR +(default: "$w $l $x $y") +If the "bkf" (backwards compatible filter) flags is set in the +printcap entry and the original filter specification does not have +a `$` in it, +this option string is appended to the OF filter specification, +and the string expanded with values from the printcap information +and job information. +(see of_filter_options, filter_options, bk_filter_options, bk_of_filter_options) +.TP +\fBcheck_for_nonprintable\fR (default: "") +(Used by LPR) check f and p formats +for non_printable characters unless +\fB\-b\fR (binary) +or +\fB\-l\fR (literal) +command_line option is supplied. Note that +files containing HPGL or other printer control +languages would often be classed as ``non_printable''. +.TP +\fBconnect_grace\fR (default: 0 seconds) +The time to pause before opening a new connection to a printer. +This allows the printer time to recover from the previous job. +.TP +\fBconnect_interval\fR (default: 10 (seconds)) +The time to pause after a failed connection or open +of the printing device before attempting a new connection or open. +.TP +\fBconnect_timeout\fR (default: 10 (seconds)) +The time to wait for a device open or connection to complete. +A zero value is infinite timeout. +.TP +\fBretry_nolink\fR (default: true) +When TRUE and the LPD server is printing or transferring a job, +then an indefinite number of attempts to connect to or open the IO device +will be made. +.TP +\fBdefault_banner_printer\fR (default: "") +The default banner printer program to be used for printing banners. +This should be specified in the LPD configuration file. +.TP +\fBdefault_format\fR (default: "f") +Default format for printing jobs. +.TP +\fBdefault_logger_port\fR +(default: 2001) +specifies a default port number for logger information. +See logger_destination for details. +.TP +\fBdefault_logger_protocol\fR +(default: UDP) +specifies a default protocol for logger information. +See logger_destination for details. +.TP +\fBdefault_permission\fR (default: ACCEPT) +Default permission for operations. +.TP +\fBdefault_printer\fR (default: "") +The default printer to use if there is no +PRINTER environment variable, +the user has not specified a printer, +or there is no printcap information. +.TP +\fBdefault_priority\fR (default: "A") +Default priority (class) for printing jobs. +This is also used as the job class. +.TP +\fBdefault_remote_host\fR (default: "%H") +The default remote host to use. +.TP +\fBdefault_tmp_dir\fR (default: /tmp) +Directory for temporary files. +.TP +\fBdomain_name\fR (default: "") +This parameter is optional, and is appended to +the hostname to make it into a fully_qualified +domain name, ie. \fIclass.iona.ie\fR. It will only +be used if the software cannot determine the domain name +using other means, such as \fBgethostbyname(3n)\fR. +.TP +\fBff\fR (default: \\f) +Formfeed string. +.TP +\fBfilter_ld_path\fR +(default: ) +The value for the environment variable LD_LIBRARY_PATH, +both used when executing, and passed on to filters. +This variable is used to find shared libraries on +SunOS, Solaris and Linux. +.TP +\fBfilter_options\fR +(default: "$C $F $H $J $L $P $Q $R $Z +$a $c $d $e $f $h $i $j $k $l $n $p $r $s $w $x $y $-a") +If the "bkf" (backwards compatible filter) flags is not set in the +printcap entry and the original filter specification does not have +a `$` in it, +this option string is appended to a filter specification, +and the string expanded with values from the printcap information +and job information. +(see of_filter_options, filter_options, bk_filter_options, bk_of_filter_options) +.TP +\fBfilter_path\fR +(default: /bin:/usr/bin:/usr/local/bin) +The value for the environment variable PATH, both used to find filters +and passed on to filters run by \fBlpd\fR and \fBlpr\fR. +.TP +\fBforce_poll\fR (default: no) +Some software packages put print jobs directly into the spool queues. +The +\fBforce_poll\fR flag forces lpd to periodically poll spool queues +looking for jobs and no server. +The +\fBpoll_time\fR variable sets the interval between polls. +.TP +\fBfull_time\fR (default: no) +Use full time and date format in logging and error messages. +.TP +\fBfx\fR (default: "") +See \fBprintcap\fP(5) for details. +This specifies the job formats allowed for this queue. +.TP +\fBgroup\fR (default "daemon") +The group to use for file ownership and process permissions. +Used only by lpd; +this can be the name of a group or a number. +All filters will run as the specified group. +Note that if the group value is 0, +then the real user group of the process at startup will be used. +.TP +\fBkerberos_keytab\fR (default "/etc/lpd.keytab") +The keytab file to be used by the LPD server when using +built-in kerberos authentication. +The keytab file should be owned by the LPD server, +and be readable/writable only by it (i.e. - 600 permissions). +.TP +\fBkerberos_life\fR (default NULL) +The lifetime of a Kerberos ticket. +NULL selects the default lifetime. +Time should be specified using the standard Kerberos time representations. +.TP +\fBkerberos_forward_principal\fR (default NULL) +remote principal used by server when forwarding +.TP +\fBkerberos_renew\fR (default NULL) +The renewal of a Kerberos ticket. +NULL selects a non-renewable ticket. +Time should be specified using the standard Kerberos time representations. +.TP +\fBkerberos_server_principal\fR (default "lpr") +Server principal used when client sending to server or +when server is originating connection to another server for forwarding. +.TP +\fBkerberos_service\fR (default "lpr") +The service name used to make requests to the LPD server +when using kerberos authentication. +For example, +if kerberos_service has the value lpr, +the server is on host alpha.com, +and the kerberos domain is ALPHA.COM, +then the kerberos principal name would be: +.br +lpr/alpha.com@ALPHA.COM. +.br +.TP +\fBla\fR (default: yes) +See \fBprintcap\fP(5) for details. +.TP +\fBlf\fR (default: log) +Name of the log file. +.TP +\fBlo\fR (default: lock) +Name of the lock file. +.TP +\fBlocalhost\fR +(default "localhost") +The name of the localhost entry to be used for the TCP/IP +loopback interface. +The TCP/IP connection may originate from the local host; +use this name to check to see if the local host address +is in the IP address database, +and use it as the origination address for local connections. +This is done to avoid problems with multi-homed hosts +who originate connections from different interfaces. +.TP +\fBlockfile\fR (default: /var/spool/lpd/lpd) +The file used to indicate the presence of an \fBlpd\fR +server running on the host. The lpd_port value is appended +to the lockfile value to provide a unique lockfile +even when different versions of LPRng are running +on the same system. +.TP +\fBlogger_destination\fR +(default: "") +This specifies a destination for logger information generated by the lpd server. +The formation of the destination specification is +host[%port][,(TCP|UDP)]. +For example, +localhost%2001,UDP would send logger information to the localhost IP address, +on port 2001 using the UPD protocol. +The default port and protocol are set by the +default_logger_port and default_logger_protocol configuration variables respectively. +.TP +\fBlongnumber\fR +(default: no) +RFC1179 requires 3 digit job numbers; +setting longnumber to yes allows 6 digit numbers. +If the backwards_compatible flag is set, +only 3 digit numbers will be used. +.TP +\fBlpd_listen_port\fR (default: =off) [ipaddr%]port +The port that \fBlpd\fR binds to. If the parameter is set to off then +\fBlpd\fR does not listen to any TCP port. See \fBlpd_port\fR for +details of the format of the argument. + +If this is not set at all, then \fBlpd\dP will listen on \fBlpd_port\fP. +.TP +\fBlpd_port\fR (default: \fIprinter\fR) [ipaddr%]port +The port that \fBlpr\fR and +the other client programs send their requests to. +The specification has the format ipaddr%port. +If the IP address is specified then a bind to only this address and +port is done. +If the port value is not a number +a service lookup is performed and the corresponding +service port is used; see services(5). +This parameter is useful for debugging a new +installation of LPRng, in that running LPRng on +a different port from the default will not +interfere with a previous installation of +LPD or LPRng. +.TP +\fBlpd_printcap_path\fR (default: "") +The location of +.B lpd +server only printcap database information. +If this is nonblank the \fBprintcap_path\P will not be used by the +.B lpd +server. +.TP +\fBmail_operator_on_error\fR (default: "") +Put this person on the CC-list of the mail, if it is not +a success mail. (So in addition to the person who made the +printer request, also this person gets error messages, but +no success messages.) +.TP +\fBmax_status_line\fR (default: 79) +An integer value specifying the numbers of characters to be +used for displaying simple job status; this includes the queue position, +job identifier, job contents, size, and time. +A 0 (zero) value indicates no restrictions. +.TP +\fBmax_status_size\fR (default: 10 (Kbytes)) +An integer value specifying (in K bytes) +the maximum size of the status file +to be generated during printing operations. +A 0 value will create unlimited size status files. +When the file size exceeds this value, +it is truncated to +.B min_status_size +K bytes. +.TP +\fBmc\fR (default: 1) +See \fBprintcap\fP(5) for details. +.TP +\fBmin_status_size\fR (default: 0 (Kbytes)) +Minimum status size. +If 0, defaults to 20 percent of max_status_size. +.TP +\fBminfree\fR (default: 0) +The amount of free space (in Kbytes) +needed in the spool directory in order +for a job to be accepted. +If 0, there is no limit; +if the parameter is the name of a file rather than a number, +the file must contain a numerical minimum free value (in Kbytes). +This value is overridden by the printcap +.I mi +field value. +.TP +\fBms_time_resolution\fR +(default: FALSE) +This flag causes the time information to be printed to millisecond +accuracy. +This is overkill for most purposes. +.TP +\fBof_filter_options\fR +(default: "") +If this is not set, +the value defaults to the same as the filter_options value. +This string is appended to a OF filter specification, +and the string expanded with values from the printcap information +and job information. +If the "bkf" (backwards compatible filter) flags is set in the +printcap entry, +of bk_of_filter_options value is appended instead +(see of_filter_options, filter_options, bk_filter_options, bk_of_filter_options) +.TP +\fBoriginate_port\fR +(default: "721 731") +A range of port numbers to originate requests from. +When sending service requests, +the software will try to open and bind to these ports to +originate a request to a server. +If no port is given, +or all of the requested ports are unavailable or cannot be +bound to, +then a normal use port is requested. +Note that on UNIX systems, +if a port in the range 0-1023 is requested the EUID of the +process must be root for the request to be granted. +Note that RFC1179 specifies that requests must +originate from ports in the range 721-731. +.TP +\fBpass_env\fR +(default: "LANG,LC_CTYPE,LC_NUMERIC,LC_TIME,LC_COLLATE,LC_MONETARY, LC_MESSAGES,LC_PAPER,LC_NAME,LC_ADDRESS,LC_TELEPHONE,LC_MEASUREMENT, LC_IDENTIFICATION,LC_ALL") +Client programs such as LPR, LPC, etc., will pass these +environment variables to any filter programs they start. +.TP +\fBpoll_time\fR (default: 6000) +Interval in seconds at which LPD checks for queues with jobs and no +server active. +See +\fBforce_poll\fR as well. +.TP +\fBpl\fR (default: 66) +See \fBprintcap\fP(5) for details. +.TP +\fBpr\fR (default: /bin/pr) +See \fBprintcap\fP(5) for details. +.TP +\fBprintcap_path\fR +(default: "/etc/printcap") +The location of the printcap database file. +If a file or filter does not exist, it is considered a fatal error. +All valid entries in these files will be used. +See PRINTCAP LOOKUP for details. +.TP +\fBperms_path\fR +(default: /etc/lpd.perms:/usr/etc/lpd.perms: /var/spool/lpd/lpd.perms.%h) +The location of the printer permissions database. +If a file or filter does not exist, it is skipped. +The first file or filter that exists and is readable will be used. +See PERMISSIONS LOOKUP for details. +.TP +\fBpw\fR (default: 80) +See \fBprintcap\fP(5) for details. +.TP +\fBsave_on_error\fR +(default: no) +Save a job in the spool queue if it has an error +rather than removing it. +.TP +\fBsave_when_done\fR +(default: no) +Save a job in the spool queue after completion +rather than removing it. +.TP +\fBsend_data_first\fR +(default: no) +Send data files of a job first, +followed by the control file. +.TP +\fBsend_failure_action\fR (default: "") +The lpd server uses this to determine the action to take when +unable to print or process a job. +The keyword +\fIabort\fR +will cause it to terminate operations, +leaving the job in the queue, +\fIremove\fR +will cause it to remove the job, +\fIretry\fR +will cause it to retry the job, +and +\fIhold\fR +will cause it to hold the job with an error indication. +If the value is a filter, +then the filter will be invoked and the exit status of the +filter used to determine the actions. +.TP +\fBsend_job_rw_timeout\fR (default: 6000) +When printing or sending a job to a remote printer, +use this as a write to the device or remote host timeout value. +If a timeout occurs, +then a FAIL status is returned and +the send_failure_action value is used to determine what to do on failure. +.TP +\fBsend_try\fR (default: 3) +Numbers of times to try to send a job to the printer or remote host. +A 0 value means an infinite number of times. +.TP +\fBsendmail\fR (default: "/usr/lib/sendmail -oi -t") +If the argument is empty then all mail_related +functionality is disabled. +The arguments are the command to run +when mail is to be sent. +The command used needs to be able to +accept the message on stdin, with \fIno\fR arguments. +The message will contain the \fBTo:\fR, \fBFrom:\fR, +\fBCc:\fR and \fBSubject:\fR headers. +.TP +\fBserver_tmp_dir\fR (default: /tmp) +Temporary dir for the server. +.TP +\fBspool_dir_perms\fR (default: 042700) +Permissions of the spool directories. +.TP +\fBspool_file_perms\fR (default: 0600) +Permissions of the spool files. +.TP +\fBsyslog_device\fR (default: /dev/console) +Log to this device if all else fails. +.TP +.BR unix_socket_path " (default: /var/run/lprng/socket)" +Location of the Unix socket that lpd listens on and LPRng clients +attempt to communicate to when host is localhost. Set to \fIoff\fR +to disable listening and connecting via a Unix socket. +.TP +\fBuse_date\fR (default: no) +No information about this parameter available. +.TP +\fBuse_identifier\fR (default: no) +Add a job identifier line to the control file, +using the 'A' entry in the control file. +.TP +\fBuse_info_cache\fR (default: yes) +If this is set to \fIyes\fR, lpd.perms and printcap information +lookups will be cached for later use. +Only lookups in the main databases will be cached, +not lookups in the per_printer databases. +You can force +the \fBlpd\fR to flush its cache and reread the +permissions file by sending it a SIGHUP. +.TP +\fBuse_queuename\fR (default: no) +Put an entry into control files identifying the spool queue +the job was originally sent to. +The entry has the form 'Qspoolname', +and its value can be passed to filters. +This is useful for setting up a spool queue which formats +jobs in different ways, +depending on the name of the queue. +.TP +\fBuse_shorthost\fR (default: no) +By default, names of lpr job files used the +originating host fully qualified domain name. +This can exceed 14 characters, +the limit of file names on some UNIX systems. +If this is set to \fIyes\fR, the non-qualified name will be used, +and if the host name is at most 8 characters the file name will be at +most 14 characters long. +.TP +\fBuser\fR (default: daemon) +The user that \fBlpd\fR and its filters runs as, +and the owner of the spool directories and +other lpd_writable files. +This can be the name of a user or a number. +If the user value is 0, +then the real UID of the program when started will be used. +This allows a non_root user to test the functionality +of the LRPng software. + +.SH "PRINTCAP LOOKUP, DATABASE FILES AND FILTERS" +.PP +The printcap_path +and +printer_perms_path +variables specify a list of either data base files or filters to use to +get printcap or permission entries for a printer. +To get information, +the filter is started and a single line with the printer name is +sent to it. +Note that the printer name +.I all +is used to request information either about all printers, +or a specific printer entry that has a list of +all printers. +See +.BR printcap (5) +for more details. +.PP +To find the printcap information, +LPRng programs will read the database files specified in the +.I printcap_path +entry. +The +.I lpd +server will read any additional files specified in the +.I lpd_printcap_path +entry. +If any of the files is missing or non-readable a fatal error will result. +After having searched the various files, +if a filter has been specified the filter will be started and +the required printer name will be sent to the filter. +The output from the filter will be used as the printcap information. +.SH "SECURITY-RELATED PARAMETERS" +.PP +Environment variables are sanitized by \fBlpd\fR and the other +executables, in that the variables \fIIFS\fR, \fILD_PRELOAD\fR +and \fILD_PROFILE\fR are all deleted from the environment passed +to filters and any other sub_processes. +For more reliability, +script filters should set their own +PATH and LD_LIBRARY_PATH variables. +.PP +All filters will run as the user and group specified by the +group and user variables. + +.SH EXAMPLE +.nf +# lpd.conf generated from on Wed Apr 7 07:59:48 PDT 1999 + +# The values in this file are the default values. +# If you modify the file, set the value to something other than the default +# For example, '# default force_localhost' means +# the 'force_localhost' option value is on or 1. +# Uncomment this and change it to read 'force_localhost@' + +# Purpose: always print banner, ignore lpr -h option +# default ab@ +# Purpose: query accounting server when connected +# default achk@ +# Purpose: accounting at end (see also af, la, ar, as) +# default ae=jobend $H $n $P $k $b $t +# Purpose: name of accounting file (see also la, ar) +# default af= +af=acct +# Purpose: automatically hold all jobs +# default ah@ +ah +# Purpose: Allow duplicate command line arguments (legacy requirement) +# default allow_duplicate_args@ +.fi +.SH FILES +.PP +The files used by LPRng are set by values in the +printer configuration file. +The following are a commonly used set of default values. +.nf +.ta \w'/var/spool/lpd/printcap.<hostname> 'u +/etc/lprng/lpd.conf LPRng configuration file +${HOME}/.printcap user printer description file +/etc/printcap printer description file +/etc/lprng/lpd.perms permissions +/var/run/lprng/lpd lock file for queue control +/var/spool/lpd spool directories +/var/spool/lpd/QUEUE/control queue control +/var/spool/lpd/QUEUE/log trace or debug log file +/var/spool/lpd/QUEUE/acct accounting file +/var/spool/lpd/QUEUE/status status file +.fi +.SH "SEE ALSO" +lpc(8), +lpd(8), +checkpc(8), +lpr(1), +lpq(1), +lprm(1), +printcap(5), +lpd.perms(5), +pr(1), lprng_certs(1), lprng_index_certs(1). +.SH DIAGNOSTICS +.nf +Most of the diagnostics are self explanatory. +If you are puzzled over the exact cause of failure, +set the debugging level on (-D5) and run again. +The debugging information will +help you to pinpoint the exact cause of failure. +.fi +.SH "HISTORY" +LPRng is a enhanced printer spooler system +with functionality similar to the Berkeley LPR software. +The LPRng mailing list is lprng@lprng.com; +subscribe by sending mail to lprng-request@lprng.com with +the word subscribe in the body. +The software is available from ftp://ftp.lprng.com/pub/LPRng. +.SH "AUTHOR" +Patrick Powell <papowell@lprng.com>. |