Provided by: ifhp_3.5.20-5_i386 bug

NAME

       ifhp - Almost Universal LPRng Print Filter

SYNOPSIS

       ifhp
       [-F format] [-s statusfile] [-?value (other LPRng filter options)]
       [-Z[options[,options]*]*
       [-T[options[,options]*]*
       [accountingfile]

       ifhp.conf(configuration file)

DESCRIPTION

       The  ifhp  is a general purpose filter for allmost all PostScript, PJL,
       PCL, and text based line printers.

       The ifhp filter resets and synchronizes  the printer,  gets  accounting
       information,  and  then checks the file to determine its format.  Based
       on the format, it will do PCL, PostScript,  or  other  initializations,
       and  then  transfer the file to the printer.  Termination sequences are
       sent, followed by getting accounting information.

OPTIONS AND CONFIGURATION

       Options controlling  ifhp  operations  are  specified  by  -Toption  or
       -Zoption values.  These options have the form:
       Form          Same As
       flag          flag=1
       flag@         flag=0
       flag=str
       flag#str

       The  complete set of options and their effect on operation are detailed
       in the IFHP-HOWTO document.  The following is a brief list of the  more
       important ones that will have a dramatic effect on printer operation.

       model     =modelid
              Specifies  the  printer  modelid  information.   This is used to
              select an appropriate configuration from the ifhp  configuration
              file.

       status (status@)
              The  status  option enables checking for status information from
              the printer.  See  STATUS,  SYNC,  WAITEND,  AND  PAGECOUNT  for
              details.

       sync (sync@, sync=ps, sync=pjl)

       waitend (waitend@, waitend=ps, waitend=pjl)
              If the status option is enabled, sync will check to see that the
              printer is online and ready and the waitent will check that  the
              job  has  finished.   The sync@ and waitend@ will suppress these
              checks.  See STATUS, SYNC, WAITEND, AND PAGECOUNT for details.

       pagecount (pagecount@, pagecount=ps, pagecount=pjl)
              If the status option is enabled, pagecount will try to  get  the
              value  of  the  printer pagecounter.  See STATUS, SYNC, WAITEND,
              AND PAGECOUNT for details.

       config=path,path,...
              pathnames of configuration  files  to  read  to  obtain  printer
              configuration information.

       debug=debuglevel
              Set  the  debugging  level.  A larger number causes more verbose
              error messages.  You have been warned.

       trace
              Sends out debugging and tracing information on STDERR as well as
              to the status log file.

       stty=options
              Sets serial line configuration when a dev entry specified.

STATUS, SYNC, WAITEND, AND PAGECOUNT

       If the status option is true, then the ifhp filter will assume that the
       printer is attached by a bidirectional channel and will attempt to read
       status  information from the printer.  This also enables the sync, sync
       and pagecount handshaking and getting pagecount  information  from  the
       printer.

       The  sync flag causes a special PJL job or PostScript job to be sent to
       the printer at the start of printing at periodic intervals.   This  job
       has  the  property  that it will attempt to put the printer into a sane
       state and cause it to return status information.  By  default,  if  the
       printer supports PJL then the PJL job is used, otherwise if it supports
       PostScript, the PostScript job is used.  You can force the sync  method
       using sync=pjl or sync=ps if necessary, and suppress it using sync@

       The  waitend flag causes a special PJL job or PostScript job to be sent
       to the printer at the end of the job at periodic intervals.   This  job
       has  the  property  that it will attempt to put the printer into a sane
       state and cause it to return status information.  By  default,  if  the
       printer supports PJL then the PJL job is used, otherwise if it supports
       PostScript, the PostScript job is used.   You  can  force  the  waitend
       method  using  waitend=pjl  or waitend=ps if necessary, and suppress it
       using waitend@

       The pagecount flag causes a special PJL job or  PostScript  job  to  be
       sent  to the printer at the start and end of the job.  This job has the
       property that it causes the printer to return the value of  a  hardware
       page  counter.  By taking the difference of the start and end values of
       the pagecounter, an  accurate  measure  of  the  number  of  pages  (or
       impressions  for some duplex printers) can be done.  By default, if the
       printer supports PJL then the PJL job is used, otherwise if it supports
       PostScript,  the  PostScript  job is used.  You can force the pagecount
       method using pagecount=pjl or pagecount=ps if necessary,  and  suppress
       it using pagecount@

       The  IFHP  filter  will puts tracing and status information in the file
       specified by the -s command line flag.  If the  status  file  does  not
       exist,   it  will  not be created.  The diagnostic trace flag overrides
       this and directs the status to STDERR.

       The pagecount information is put into the accounting file specified  on
       the  command line.  If the accounting file does not exist,  it will not
       be created.

JOB PROCESSING (LPR -Z) OPTIONS

       The lpr program passes the command line -Z options or the lp program -o
       options  to  the  LPRng  lpd  server which then passes them to the ifhp
       filter.  The options are used to  control  various  printing  features.
       For example if duplex printing and landscape is wanted, then
            lpr -P<printer> -Zduplex,landscape<file>

       Since  each  printer  has  a different set of capabilities there are no
       standard set of -Z options.  The following is a sample of  the  options
       provided  by  ifhp.   Check  the  ifhp.conf file for all of the options
       supported by the printer.

       Input Tray Selection
              inupper, inlower, intray1, intray2, intray3, manual, envelope
              source=name
              The input tray selection options should start with the in prefix
              and  corresponds  to the various trays.  The manual and envelope
              options are included to select manual  feed  or  envelope  feed.
              There  is  a possible source of conflict here as there may be an
              envelope feeder as well as an envelope media. This is a  printer
              specific dependency.
              The  source=name  option  allows  users  to  use options such as
              -Zsource=inbin1, which may be useful for systems  that  have  an
              unusual  or  nonstandard  input  selection mechanism.  se select
              media (paper) from the specified tray or feeder.

       Output Bin Selection
              outupper, outlower, outbin1
              outbin=name
              The output bin selection should start with the out prefix.
              The  outbin=name  form  allow  users  to  use  options  such  as
              -Zoutbin=stapler,  which  may be useful for systems that have an
              unusual or nonstandard output selection mechanism.

       Media Size Selection
              a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 b0 b1 b2 b3 b4 b5
              archA archB archC archD archE flsa flse halfletter
              note letter legal 11x17 ledger tabloid
              paper=name
              The paper size selection facilities usually  are  quite  printer
              dependent, and the input tray selection and paper size selection
              mechanisms may interact in strange and mysterious ways.
              The  paper=name  form  allow  users  to  use  options  such   as
              -Zpaper=b3, which may be useful for systems that have an unusual
              or nonstandard input media selection mechanism.

       Media Type Selection
              plain, preprinted, letterhead, transparency, glossy, prepunched,
              labels
              bond, recycled, color, heavy, cardstock
              Media Type is not the same as paper size, and corresponds to the
              name assigned to a particular media. Of  course,  the  issue  is
              complicated  by  the fact that some media have standard sizes as
              well. Again, the input tray selection,  media  size,  and  media
              type  selection  will interact in confusing and mysterious ways,
              depending on the whim of the printer firmware iplementors.
              You  will  notice  that  there  is  no  generic   mediatype=name
              facility.   This  is  due  to  the  radically different way that
              PostScript,  PJL,  PCL,  etc.,  each  handle  media   name   and
              selection.   While  it  is  possible  to  determine  the various
              strings, numbers, escape codes, etc., that need to be  sent  for
              each  mediatype,  a general mechanism is too fragile and fraught
              with peril for the unwary administrator to  provide.   You  have
              been warned.  Been there and have the scars to prove it.
              These  are  commonly  used media type names gleaned from various
              PostScript Printer Description Files, Microsoft printer drivers,
              and  arcane  lore  of the Printer Working Group. Note that these
              are not accepted terms in the paper industry for  any  of  these
              type of media. You are warned.

       Duplex/Simplex
              duplex (lduplex) duplexshort (sduplex)
              simplex
              tumble (shortedge)
              The  duplex (alias lduplex) and duplexshort (alias sduplex) will
              print on both sides of the paper; duplexshort will  reverse  the
              orientation; simplex will print only on one side of the paper.
              The  tumble  (shortedge)  will  reverse  the  orientation of the
              paper.  Used when printing facing pages of duplex and there is a
              desperate need for this orientation.

       Copies
              copies=N
              Be  aware  that  this option is totally bogus is usually ignored
              (except when you expect  it  to  be  ignored).   You  have  been
              warned.

OF MODE

       The  OF  mode  of operation is selected by the -Fo command line option.
       When operationg in OF mode it will scan the input for a  two  character
       stop  sequence  \031\011.   When  it finds the sequence it will suspend
       itself.  The spooler will restart the filter with a SIGCONT signal when
       it has more output for it.

FILES

       /etc/ifhp.conf
              Configuration files
       /usr/lib/ifhp/ifhp
              Executables.

SEE ALSO

       The  IFHP-HOWTO  document,  which  is  included  as  part  of  the IFHP
       distribution.  This is the principle reference for this filter.

       lpd(8), printcap(5).

       FTP sites: ftp://ftp.lprng.com

       WEB sites: http://www.lprng.com

       Mailing List.  Send email to lprng-request@lprng.com
       with the word ’subscribe’ in the boyd.

BUGS

       They are not bugs.  They are mis-documented features.

AUTHOR

       The IFHP filter was inspired by the LPRng CTI-ifhp filter, which was  a
       descendent  of  the print filters developed by the CTI-Print project at
       the  Division  of  Computing  Facilities  of  the  Computer  Technology
       Institute (CTI), Patras, Greece.

AUTHORS

       Patrick Powell,
            Astart Technologies,
            San Diego, CA
            <papowell@lprng.com>

                                    3.5.20                             IFHP(8)