phandler(1)
phandler - generic parallel printer driver
As shipped in IRIX 6.5. First release of IRIX 6.5.
NAME phandler - generic parallel printer driver SYNOPSIS phandler -P printername [ options ] [ inputfile ] Where [ options ] consist of one or more of: [ -e ] [ -s ] [ -w ] [ -D ] [ -L logfilename ] [ -R ] [ -B buffersize ] [ -I ] [ -u ] [ -S papersize ] [ -d ] [ -K ] DESCRIPTION The phandler driver is a generic driver for printers attached to the built-in (/dev/plp*) parallel port. phandler uses libpod(3) functions to keep the printer object database (POD) current, provide feedback on any engine errors encountered, and to serve as an example program for developers. The source for phandler is part of the Impressario Developer's Kit. The driver opens and maintains the POD files for the specified printer. The file <printername>.config contains the detailed information on the printer's capabilities, <printername>.status contains the information on operational status of the printer, and <printername>.log contains the information on print job history. For more information on printer database files refer to the libpod(3) man page. While phandler has the port open, it performs an advisory file lock on the parallel port, thereby ensuring that only one phandler accesses the printer at a time. phandler also creates a child process to update the POD printer status database. This child is killed automatically upon the parent's death. USAGE phandler assumes that its input is coming from standard input (stdin) unless a filename is specified after any and all command line options. -P printername specifies the printer with which phandler is communicating. printername is the name under which the System VR3 spooler recognizes the printer, as given on the lp(1) command line. This option is required. -e specifies that driver should exit immediately on fault. By default, the driver waits indefinitely for faults to clear, retrying any errors every several seconds, where the exact number of seconds is defined in the POD config database entry error_retry_wait. -s specifies that the driver should exit after ascertaining printer status and updating the POD status file. If an error is encountered, however, phandler will block unless the -e switch is given as well. If a quick status update is what you want, invoke phandler with both the -s and the -e options to insure that phandler exits promptly. -w Specify this flag to suppress warning messages in the printer status file. By default, warning messages such as "low on ink" or other non-fatal errors are written to the printer status file. -D Turns on debugging information. Four levels of debugging information are supported: none, coarse detail, medium detail, and fine detail. These correspond to 0, 1, 2, and 3 or more -D switches given on the command line. That is, multiple -D options given on the command line result in progressively more detailed debugging information. -L logfilename specifies a filename to which error and debug information should be appended. If this option is not specified, error and debug information is appended to phandler's standard error (stderr), which is generally redirected by the System VR3 spooler to /var/spool/lp/log. -R specifies that the parallel port should be reset immediately after opening it. This may have detrimental effects on some printers, which may go offline for extended periods of time, and therefore the -R option should be used with care. -B buffersize specifies a positive number of bytes to buffer on each read and write. Setting the buffersize to 1 (one) results in single- byte reads and writes, which can be very inefficient. It is recommended that if this option is specified, the buffersize be an integral multiple of the system block size. -I if specified enables sensing of EOI pin on the parallel port (which is normally ignored). -u if specified the parallel port status is ignored. Only valid when -s is specified. -S papersize if specified the POD database will be updated with the paper size. Valid paper sizes are listed in /usr/include/pod.h. -d if specified, the driver will send a Control-D character at end of job. Some printers use this to determine that the end of the input stream has been reached. -K Ignore Interrupts. If specified, phandler will ignore interrupts and will continue to send output to the parallel port until end-of-file is encountered on standard input. If phandler receives a job cancellation (SIGTERM) signal it will continue to read the input until end of file is reached and will discard the input (it will not be sent to the printer). This means that if a printer is unable to accept data, cancelling the job may not kill the phandler process immediately. To do so, you must explicitly kill the process with SIGKILL (9), or reboot the machine. If a problem is detected on the parallel port then phandler will continue to run until the problem clears (this prevents subsequent print jobs from being sent to the parallel port until the problem is cleared). SEE ALSO lp(1), lpadmin(1), libpod(3), libspool(3), printstatus(1), printpanel(1).