Provided by: hylafax-server_4.2.5-1_i386 bug

NAME

       hfaxd - HylaFAX client-server protocol server

SYNOPSIS

       /usr/sbin/hfaxd [ -d ] [ -q dir ] [ -o port ] [ -O ] [ -l bindaddress ]
       [ -i port ] [ -I ] [ -s port ] [ -S ]

DESCRIPTION

       hfaxd is the HylaFAX program that implements the server portion of:

       ·  the (new) client-server protocol,

       ·  the  old  client-server  protocol  previously  implemented  by   the
          faxd.recv program, and

       ·  the  Simple  Network  Paging  Protocol (SNPP) used to submit message
          pager jobs to the IXO/TAP and UCP support.

       Additional client-server protocols are planned and hfaxd is intended to
       be the ‘‘carrier’’ through which they are supported.

       hfaxd  is  typically  used  in  one of two ways; either as a standalone
       process that is started at  system  boot  time  to  listen  for  client
       connections  on  one  or  more  ports  (in which case the -i, -o, or -s
       option must be used), or as  a  subservient  process  to  the  inetd(8)
       program.   The  two forms of use may however be combined so long as the
       same service is not provided both by the standalone hfaxd  and  through
       inetd.

HYLAFAX (NEW) CLIENT-SERVER PROTOCOL SUPPORT

       If  hfaxd  is  started with the -i option it will service clients using
       the (new) HylaFAX client-server protocol.  This  protocol  is  strongly
       related  to  the  Internet  File Transfer Protocol (FTP); so much so in
       fact that  FTP  client  programs  that  include  support  for  ‘‘quoted
       commands’’  may  be  used  to  communicate  with  hfaxd  using  the new
       protocol.  (It should also be possible to use FTP-aware World Wide  Web
       browsers  such  as  Mosaic  and  Netscape  Navigator  to access HylaFAX
       servers  through  the  new  protocol;  but  the  current   format   for
       information returned in directory listings confuses them.)

       The  hfaxd server currently recognizes the following protocol requests;
       case is not distinguished.  Entries marked with a ¹ can  be  used  only
       when the client has established administrative privileges with ADMIN.

       Request         Description
       ABOR            abort previous command
       ACCT            specify account (ignored)
       ADMIN           specify password for administrative privileges
       ALLO            allocate storage (vacuously)
       ANSWER¹         request that call be answered
       APPE            append to a file
       CDUP            change to parent of current working directory
       CHMOD           change mode of a file
       CHOWN¹          change owner of a file
       CWD             change working directory
       DELE            delete a file
       DISABLE¹        disable outbound use of modem
       ENABLE¹         enable outbound use of modem
       HELP            give help information
       FILEFMT         specify/query format for returning file status
       FORM            specify data transfer format
       IDLE            set idle-timer (in seconds)
       JDELE           delete done or suspended job
       JINTR           interrupt job
       JKILL           kill job
       JNEW            create new job
       JOB             set/query current job
       JOBFMT          specify/query format for returning job status
       JPARM           specify/query job state parameter
       JREST           reset current job state
       JSUBM           submit job to scheduler
       JSUSP           suspend job from scheduling
       JWAIT           wait for job to complete
       JGDELE          delete group of jobs
       JGKILL          kill group of jobs
       JGINTR          interrupt group of jobs
       JGNEW           place current job in a new job group
       JGPARM          set state parameter in a group of jobs
       JGREST          reset current state for a group of jobs
       JGRP            set/query current job group
       JGSUBM          submit group of jobs to scheduler
       JGSUSP          suspend group of jobs from scheduling
       JGWAIT          wait for group of jobs to complete
       LIST            list files in a directory
       MDTM            show last modification time of file
       MODE            specify data transfer mode
       MDMFMT          specify/query format for returning modem status
       NLST            give name list of files in directory
       NOOP            do nothing
       PASS            specify password
       PASV            prepare for server-to-server transfer
       PORT            specify data connection port
       PWD             print the current working directory
       QUIT            terminate session
       RCVFMT          specify/query format for returing received facsimile status
       REIN            reinitiate server state
       REST            restart incomplete transfer
       RETP            retrieve the next page in a file
       RETR            retrieve a file
       SHUT            schedule server shutdown
       SITE            non-standard commands (see next section)
       SIZE            return size of file
       STAT            return status of server or file
       STOR            store a file
       STOT            store a temporary file with a unique name
       STOU            store a file with a unique name
       STRU            specify data transfer structure
       SYST            show operating system type of server system
       TYPE            specify data transfer type
       TZONE           specify timezone handling for dates and times
       USER            specify user name
       VRFY            verify dialstring handling and/or least-cost routing

       The  following  non-standard  or  experimental  commands  are supported
       through the SITE request.

       Request          Description
       ADDMODEM¹        add/configure new modem for use
       ADDUSER¹         add client access control entry
       CONFIG¹          send configuration parameter setting to server
       DELMODEM¹        deconfigure/remove modem
       DELUSER¹         remove client access control entry
       TRIGGER          register realtime event trigger
       HELP             give help information, e.g., SITE HELP

       In addition FTP requests that are specified in Internet RFC 959 but not
       listed here are recognized, but not implemented.

       The  hfaxd server will abort an active data transfer only when the ABOR
       command is preceded by a Telnet "Interrupt Process" (IP) signal  and  a
       Telnet  "Synch"  signal  in  the command Telnet stream, as described in
       Internet RFC 959.   If  a  STAT  command  is  received  during  a  data
       transfer,  preceded  by  a Telnet IP and Synch, transfer status will be
       returned.

OLD CLIENT-SERVER PROTOCOL SUPPORT

       If hfaxd is started with the -o option it will  service  clients  using
       the  old  HylaFAX client-server protocol that was used in distributions
       prior to the 4.0 release.  Note  however  that  this  support  is  only
       available if hfaxd is compiled with the support enabled.

       Emulation  of  the  old  protocol  is important for supporting non-UNIX
       clients such as the WinFlex client for Windows systems and the  MacFlex
       client  for Macintosh systems.  It is strongly recommended however that
       unless you need to support these old-style clients that you not  enable
       support  for the old protocol because of the inherent misdesign of this
       protocol.

SIMPLE NETWORK PAGING PROTOCOL (SNPP) SUPPORT

       If hfaxd is started with the -s option it will  service  clients  using
       the  Simple  Network  Pager  Protocol  (SNPP)  as specified in RFC 1861
       (which obsoletes RFC 1645).

       The hfaxd server currently recognizes the SNPP protocol requests listed
       below.   Requests  marked  with  a ¹ are non-standard extensions to RFC
       1861 that may be added to SNPP  at  some  future  time.   Case  is  not
       distinguished  and  only the first four characters of requests are used
       in identifying commands.

       Request      Description
       2WAY         preface a 2-way transaction
       ABOR¹        abort previous command
       ACKR         set read acknowledgement handling for subsequent requests
       ALER         set the alter-level for subsequent requests
       CALL         set the caller-ID for subsequent requests
       COVE         set the alternate coverage area for subsequent requests
       DATA         specify a multi-line message
       EXPT         set the expiration time for subsequent requests
       HELP         give help information
       HOLD         set the time at which subsequent requests are to be delivered
       KTAG         kill a previously submitted request
       LEVE         set the service level for subsequent requests
       LOGI         login to server
       MCRE         specify multiple response text and code
       MESS         specify a single-line message
       MSTA         return the status of a previously submitted request
       NOQU         diable message queueing
       PAGE         specify the destination pager
       PING         locate/validate a pager
       QUIT         terminate session
       RESE         reset server state
       RTYP         set the reply type code for subsequent requests
       SEND         send message(s)
       SITE¹        site-specific commands (see next section)
       STAT¹        return server status
       SUBJ         set the message text for subsequent requests

       The hfaxd server will abort an  active  SEND  operation  when  an  ABOR
       command  is  preceded by a Telnet "Interrupt Process" (IP) signal and a
       Telnet "Synch" signal in the command Telnet stream.

       The following non-standard or experimental commands are also  supported
       through the SITE request.

       Request        Description
       FROMUSER       specify the sender’s identity
       IDLE           set idle-timer (in seconds)
       JPARM          query job parameter status
       JQUEUE         control whether or not job is queued
       LASTTIME       set the time to terminate an unfinished job
       MAILADDR       set the e-mail address to use for notification
       MAXDIALS       set the maximum number of times to dial the phone
       MAXTRIES       set the maximum number of times to try sending the page
       MODEM          set the modem or class of modems to use
       NOTIFY         set the e-mail notification
       RETRYTIME      set the time to delay between job retries
       SCHEDPRI       set the scheduling priority for the job
       HELP           give help information, e.g., SITE HELP

       Note  that  hfaxd  requires that SNPP clients login first with the LOGI
       directive while RFC 1861 permits clients to submit pages anonymously.

CLIENT ACCESS CONTROL

       hfaxd controls client access according to the information in  the  file
       /var/spool/hylafax/etc/hosts.hfaxd.  This file defines the set of users
       and machines that may receive service and, optionally, defines password
       challenges  to use in authenticating clients.  Clients may be permitted
       access to services with or without a password  challenge.   Access  may
       also be restricted based on the host machine that a request for service
       originates from.  Consult hosts.hfaxd(5) for information on the  format
       and  content  of  this  file.   The  SITE  ADDUSER  protocol request is
       provided for adding new users to a server (available  only  to  clients
       with administrative privileges).

       Server resources are controlled based on clients’ identities.  Jobs and
       documents, both received and submitted, are protected  by  the  server.
       Typically  clients are permitted access to anything they own or that is
       publicly accessible.  There are  also  administrative  privileges  that
       clients  may  acquire and which permit them wide access to objects that
       reside on the server.

       A complete client-server protocol specification is still outstanding.

       hfaxd operates with its root directory set to the top  of  the  HylaFAX
       spooling  area; /var/spool/hylafax.  This is done so that clients see a
       virtual file hierarchy that is completely contained within the  HylaFAX
       operating  environment  on  the server machine.  Administrators however
       must be aware of  this  action  when  specifying  files  in  the  hfaxd
       configuration  file:  absolute  pathnames  relative  to the root of the
       spooling should be used to specify filenames.

SERVER ACCESS CONTROL

       The file /var/spool/hylafax/etc/shutdown, when present, specifies  when
       to  restrict access to a server machine.  When this file is present and
       contains  valid  information  hfaxd  will  permit   only   users   with
       administrative  privileges  to access the server.  Any other users that
       request service will be denied access  and  negative  server  responses
       will  include  any  shutdown  message  specified  in the shutdown file.
       Consult hylafax-shutdown(5) for information on the format  and  content
       of this file.

       The SHUT protocol request can be used to schedule a server shutdown; it
       is available only to clients with administrative privileges.  To make a
       shutdown  server  available again the shutdown file can be deleted with
       the DELE protocol request (this is to be replaced  with  an  unshut
       protocol  request  so  that  implementation details are not part of the
       protocol).

CONFIGURATION FILES

       hfaxd    reads    configuration    information    from     the     file
       /etc/hylafax/hfaxd.conf each time a new server process is started (i.e.
       for each new client).  This file uses  the  same  conventions  used  by
       other  HylaFAX  configuration files; as described in hylafax-config(5).
       The following configuration parameters  are  recognized;  items  marked
       ‘‘(SNPP)’’ are used only by the SNPP support.
       Tag                      Type       Default                             Description
       FaxContact               string     see below                           contact address to show in help text
       FileFmt                  string     see below                           format string for file status results
       IdleTimeout              integer    900                                 client idle timeout in seconds
       JobFmt                   string     see below                           format string for job status results
       KillTimeMap              string     see below                           mapping from service level to job kill time (SNPP)
       LogFacility              string     daemon                              syslog facility name for tracing messages
       MaxAdminAttempts         integer    5                                   maximum admin attempts before disconnecting
       MaxConsecutiveBadCmds    integer    10                                  maximum invalid commands before disconnecting
       MaxIdleTimeout           integer    7200                                maximum client idle timeout permitted
       MaxLoginAttempts         integer    5                                   maximum login attempts before disconnecting
       MaxMsgLength             integer    128                                 maximum pager message length (SNPP)
       ModemFmt                 string     see below                           format string for modem status results
       PagerIDMapFile           string     /var/spool/hylafax/etc/pagermap     name of file for mapping pager IDs (SNPP)
       PriorityMap              string     see below                           mapping from service level to job priority (SNPP)
       RcvFmt                   string     see below                           format string for received facsimile status results
       RetryTimeMap             string     see below                           mapping from service level to job retry time (SNPP)
       ServerTracing            integer    1                                   server tracing control vector
       ShutdownFile             string     /var/spool/hylafax/etc/shutdown     name of shutdown control file
       UserAccessFile           string     /var/spool/hylafax/etc/hosts.hfaxd  name of access control file
       XferLogFile              string     /var/spool/hylafax/etc/clientlog    name of file for logging client data transfers

       The configuration parameters are explained below:

       FaxContact
                 The  e-mail  address  to display as a point of contact in the
                 help text returned to a client in response  to  the  HELP  or
                 SITE     HELP     commands.      By     default    this    is
                 ‘‘FaxMaster@hostname’’, where hostname is the fully qualified
                 name for the machine where the server is running.

       FileFmt   The   format   string  to  use  when  returning  file  status
                 information with the LIST and  STAT  commands.   Formats  are
                 specified  using  printf(3S)  style conventions but using the
                 field identifiers listed below.  Each item can include  field
                 width, precision, left-justification, 0-filling, etc. just as
                 for  printf;  e.g.  %-8p  for  an  8-character  wide,   left-
                 justified,  blank-padded field containing the file protection
                 flags.

                 Format    Description
                 a         Last access time
                 c         Creation time
                 d         Device number (octal)
                 f         Filename
                 g         Group identifier (decimal)
                 i         Inode number (decimal)
                 l         Link count (decimal)
                 m         Last modification time
                 o         Owner (based on file GID)
                 p         Fax-style protection flags (no group bits)
                 q         UNIX-style protection flags
                 r         Root device number (octal)
                 s         File size in bytes (decimal)
                 u         User identifier (decimal)

                 The default format string is  ‘‘%-7p  %3l  %8o  %8s  %-12.12m
                 %.48f’’.   It  is  recommended that all items include a field
                 width so that client applications that construct headers from
                 the  format  string  can  constrain the width of column title
                 strings.

       IdleTimeout
                 The  initial/default  timeout  to  use  in  timing  out  idle
                 clients.   This  value defines the maximum amount of time (in
                 seconds) that hfaxd will wait for a  command  from  a  client
                 before  terminating the connection.  Unprivileged clients may
                 alter the idle timeout up to  the  value  of  MaxIdleTimeout;
                 privileged clients may set the timeout to any value.

       JobFmt    The   format   string   to  use  when  returning  job  status
                 information for jobs in  the  sendq  and  doneq  directories.
                 Formats  are specified using printf(3S) style conventions but
                 using the field identifiers  listed  below.   Each  item  can
                 include    field    width,   precision,   left-justification,
                 0-filling,  etc.  just  as  for  printf;  e.g.  %-3j  for   a
                 3-character    wide,   left-justified,   blank-padded   field
                 containing the job state.

                 Format    Description
                 A         Destination SubAddress
                 B         Destination Password
                 C         Destination company name
                 D         Total # dials/maximum # dials
                 E         Desired signalling rate
                 F         Client-specific tagline format string
                 G         Desired min-scanline time
                 H         Desired data format
                 I         Client-specified scheduling priority
                 J         Client-specified job tag string
                 K         Desired use of ECM
                 L         Destination geographic location
                 M         Notification e-mail address
                 N         Desired use of private tagline (one-character symbol)
                 O         Whether to use continuation cover page (one-character symbol)
                 P         # pages transmitted/total # pages to transmit
                 Q         Client-specified minimum acceptable signalling rate
                 R         Destination person (receiver)
                 S         Sender’s identity
                 T         Total # tries/maximum # tries
                 U         Page chopping threshold (inches)
                 V         Job done operation
                 W         Communication identifier
                 X         Job type (one-character symbol)
                 Y         Scheduled date and time
                 Z         Scheduled time in seconds since the UNIX epoch
                 a         Job state (one-character symbol)
                 b         # consecutive failed tries
                 c         Client machine name
                 d         Total # dials
                 e         Public (external) format of dialstring
                 f         # consecutive failed dials
                 g         Group identifier
                 h         Page chop handling (one-character symbol)
                 i         Current scheduling priority
                 j         Job identifier
                 k         Job kill time
                 l         Page length in mm
                 m         Assigned modem
                 n         E-mail notification handling (one-character symbol)
                 o         Job owner
                 p         # pages transmitted
                 q         Job retry time (MM::SS)
                 r         Document resolution in lines/inch
                 s         Job status information from last failure
                 t         Total # tries attempted
                 u         Maximum # tries
                 v         Client-specified dialstring
                 w         Page width in mm
                 x         Maximum # dials
                 y         Total # pages to transmit
                 z         Time to send job

                 The default format string is ‘‘%-4j %3i  %1a  %6.6o  %-12.12e
                 %5P %5D %7z %.25s’’.  This string constrains each status line
                 to be less than 80 characters.  It is  recommended  that  all
                 items include a field width so that client applications, such
                 as faxstat(1) that construct headers from the  format  string
                 can constrain the width of column title strings.

       KillTimeMap
                 The  mapping from SNPP service level (0-11) to job expiration
                 time (kill time).  A mapping is  specified  as  a  string  of
                 space-separate  numbers  where  each  value  is the number of
                 minutes to permit a job to run.  The default mapping is ‘‘5 5
                 5  15  60  240 720 1440 1440 1440 1440 1440’’ which expires a
                 job in 5 minutes for service levels 0-2, 15 minutes for level
                 three, 60 minutes for level four, etc.

       LogFacility
                 The  symbolic  name  for  the  syslog(3) facility to use when
                 logging error messages and  informational/debugging  messages
                 requested  through  the ServerTracing parameter.  The list of
                 facility  names  is  found  in  the   system   include   file
                 <syslog.h>; comparisons are case-insensitive.

       MaxAdminAttempts
                 The    maximum   number   of   unsuccessful   attempts   gain
                 adminstrative privileges with the ADMIN  command  that  hfaxd
                 will permit a client before terminating the connection.  Note
                 that the count  of  attempts  is  reset  if/when  the  client
                 successfully gains administrative privileges.

       MaxConsecutiveBadCmds
                 The    maximum    number    of    consecutive   unrecognized,
                 unimplemented,   syntactically   incorrect,   or    otherwise
                 unacceptable  commands  to permit a client before terminating
                 the connection.  This control has  two  purposes:  to  handle
                 naive  or  malicious  clients  from  sending  long streams of
                 nonsense commands to a server, and to insure that clients are
                 forcibly terminated when a server is marked shutdown.

       MaxIdleTimeout
                 The  maximum value that a client may set the idle timeout to.
                 This value is not enforced if the client  has  administrative
                 privileges.

       MaxLoginAttempts
                 The maximum number of unsuccessful attempts to login with the
                 USER and PASS commands that hfaxd will permit a client before
                 terminating the connection.

       MaxMsgLength
                 The maximum number of characters to accept in a pager message
                 specified with the DATA or MESS  commands.   Messages  longer
                 than this value are rejected.

       ModemFmt  The   format  string  to  use  when  returning  modem  status
                 information  for  modems  listed  in  the  status  directory.
                 Formats  are specified using printf(3S) style conventions but
                 using the field identifiers  listed  below.   Each  item  can
                 include    field    width,   precision,   left-justification,
                 0-filling,  etc.  just  as  for  printf;  e.g.  %-8h  for  an
                 8-character    wide,   left-justified,   blank-padded   field
                 containing the name of the host the server is running on.

                 Format    Description
                 h         Server hostname
                 l         Local identifier string
                 m         Canonical modem name
                 n         FAX phone number
                 r         Maximum pages that can be received in a single call
                 s         Status information string
                 t         Server and session tracing levels (xxxxx:yyyyy)
                 v         Modem speaker volume as one-character symbol
                 z         A ‘‘*’’ if a faxgetty(8) process is running; otherwise ‘‘ ’’ (space)

                 The default format string is ‘‘Modem %m (%n): %s’’.

       PagerIDMapFile
                 The absolute pathname of the file  that  contains  directions
                 for  mapping  pager  identifiers  to  IXO/TAP  or UCP service
                 providers (and optionally  a  pager  identification  number).
                 Consult pagermap(5) for information on the format and content
                 of this file.  (Note that absolute pathnames are relative  to
                 the root of the spooling area).

       PriorityMap
                 The  mapping from SNPP service level (0-11) to job scheduling
                 priority.  A mapping is  specified  as  a  string  of  space-
                 separate  numbers  where each value is the priority to assign
                 to a job.  The default mapping is ‘‘63 127 127  127  127  127
                 127  127  127  127 127 127’’ which assigns a high priority to
                 service level zero and normal (default) priority to all other
                 service levels.

       RcvFmt    The  format  string  to use when returning status information
                 for received facsimile in the recvq directory.   Formats  are
                 specified  using  printf(3S)  style conventions but using the
                 field identifiers listed below.  Each item can include  field
                 width, precision, left-justification, 0-filling, etc. just as
                 for printf; e.g. %-3b for a 3-character wide, left-justified,
                 blank-padded field containing the signalling rate.

                 Format    Description
                 a         SubAddress received from sender (if any)
                 b         Signalling rate used during receive
                 d         Data format used during receive
                 e         Error description if an error occurred during receive
                 f         Document filename (relative to the recvq directory)
                 h         Time spent receiving document (HH:MM:SS)
                 l         Page length in mm
                 m         Fax-style protection mode string (‘‘-rwxrwx’’)
                 n         File size (number of bytes)
                 o         File owner
                 p         Number of pages in document
                 q         UNIX-style protection flags
                 r         Resolution of received data
                 s         Sender identity (TSI)
                 t         Compact representation of the time when the receive happened
                 w         Page width in mm
                 z         A ‘‘*’’ if receive is going on; otherwise ‘‘ ’’ (space)

                 The default format string is ‘‘%-7m %4p%1z %-8.8o %14.14s %7t
                 %f’’.  This string constrains each status  line  to  be  less
                 than 80 characters.  It is recommended that all items include
                 a field width so that client applications, such as faxstat(1)
                 that  construct  headers from the format string can constrain
                 the width of column title strings.

       RetryTimeMap
                 The mapping from SNPP service level (0-11) to job retry time.
                 A  mapping is specified as a string of space-separate numbers
                 where each value is the number of seconds  to  delay  between
                 delivery  attempts.   A  value  of  zero causes retries to be
                 scheduled using the default algorithm used by the HylaFAX job
                 scheduler.  The default mapping is ‘‘30 60 60 180 0 0 0 0 0 0
                 0 0’’ which retries a level 0 job after a  30  second  delay,
                 levels 1 and 2 after 60 seconds, level 3 after 3 minutes, and
                 other jobs are retried  according  to  the  usual  scheduling
                 algorithm.

       ServerTracing
                 A  number that controls the generation of tracing information
                 by a server.  areas that  are  individually  controlled.   To
                 enable  tracing  of  multiple  areas  of  operation, the flag
                 associated with each area should  be  bit-or’d  to  form  the
                 value for this tag.
                 Flag             Description
                 1 (0x00001)      General server operation
                 2 (0x00002)      Client-server protocol requests and responses
                 4 (0x00004)      File transfers from client to server
                 8 (0x00008)      File transfers from server to client
                 16 (0x00010)     Client logins
                 32 (0x00020)     All network connections
                 64 (0x00040)     FIFO messages to and from faxq(8)
                 128 (0x00080)    TIFF Library errors and warnings
                 256 (0x00100)    Configuration file processing

                 Tracing messages are directed to syslog(3) using the facility
                 specified with the LogFacility configuration parameter.  Note
                 that  syslogd(8) must be configured to capture facility.info,
                 facility.debug, facility.warning, and facility.err  messages.

       ShutdownFile
                 The  absolute  pathname  of  the  server  shutdown  file; see
                 hylafax-shutdown(5) for information on the format and content
                 of  this file.  (Note that absolute pathnames are relative to
                 the root of the spooling area).

       UserAccessFile
                 The absolute pathname of the user access  control  file;  see
                 hosts.hfaxd(5)  for  information on the format and content of
                 this file.  (Note that absolute pathnames are relative to the
                 root of the spooling area).

       XferLogFile
                 The  absolute pathname of the file to use for logging client-
                 server file transfers (when enabled through the ServerTracing
                 parameter).   (Note  that  absolute pathnames are relative to
                 the root of the spooling area).

OPTIONS

       -q dir    The specified directory is treated as the spooling area.  The
                 default  spooling area, /var/spool/hylafax, is defined at the
                 time the software is built.

       -d        Stop  hfaxd  from  detaching  itself  from  the   controlling
                 terminal.   This  option  is  normally used only when running
                 hfaxd under a debugger or when hfaxd is started up  from  the
                 inetd(8) process.

       -l bindaddress
                 Bind  to  the specified bindaddress the tcp port. Please note
                 that this  argument  need  to  be  specified  before  the  -i
                 otherwise  it  will  be ignored. A better approach to improve
                 security would be to  run  hfaxd  from  xinetd,  binding  its
                 service  to  the  specific  port. This will also make hylafax
                 benefits from tcp wrappers  and  other  options  provided  by
                 xinetd.

       -i port   Listen on the specified port for service requests and respond
                 with the (new)  client-server  protocol.   The  port  may  be
                 specified    either   symbolically,   e.g.   ‘‘hylafax’’   or
                 numerically.  This flag may be specified  multiple  times  to
                 request service on multiple different ports.

       -o port   Listen on the specified port for service requests and respond
                 with  the  old  client-server  protocol.   The  port  may  be
                 specified  either  symbolically, e.g. ‘‘fax’’ or numerically.
                 This flag may be specified multiple times to request  service
                 on multiple different ports.

       -s port   Listen on the specified port for service requests and respond
                 with the Simple Network Paging (SNPP) protocol.  The port may
                 be   specified   either   symbolically,   e.g.   ‘‘snpp’’  or
                 numerically.  This flag may be specified  multiple  times  to
                 request service on multiple different ports.

       -I        Service  the  (new) client-server protocol using the standard
                 input and output.   This  option  is  useful  when  hfaxd  is
                 started up by inetd(8).

       -O        Service  the  old  client-server  protocol using the standard
                 input and output.   This  option  is  useful  when  hfaxd  is
                 started up by inetd(8).

       -S        Service  the  Simple Network Paging (SNPP) protocol using the
                 standard input and output.  This option is useful when  hfaxd
                 is started up by inetd(8).

DIAGNOSTICS

       Diagnostics generated by hfaxd are logged using syslog(3).

FILES

       /etc/hylafax/hfaxd.conf             server configuration file
       /var/spool/hylafax                  spooling area
       /var/spool/hylafax/FIFO             for submitting the job
       /var/spool/hylafax/sendq            where job description is placed
       /var/spool/hylafax/sendq/seqf       for assigning job identifiers
       /var/spool/hylafax/docq/seqf        for assigning document identifiers
       /var/spool/hylafax/tmp              temporary location of job-related files
       /var/spool/hylafax/docq             where document files are placed
       /var/spool/hylafax/recvq            where received facsimile are found
       /var/spool/hylafax/archive          where archived jobs are placed
       /var/spool/hylafax/log              for server log files
       /var/spool/hylafax/client           for FIFO files used in communicating with faxq
       /var/spool/hylafax/status           for server status information
       /var/spool/hylafax/config.device    for returning server status
       /var/spool/hylafax/etc/hosts.hfaxd  host access control list
       /var/spool/hylafax/etc/shutdown     server shutdown control
       /var/spool/hylafax/etc/pagermap     SNPP pager ID mapping file

BUGS

       To be filled in.

SEE ALSO

       sendfax(1),  sendpage(1),  faxalter(1),  faxrm(1), faxstat(1), faxq(8),
       syslog(3)  hylafax-server(5),   hosts.hfaxd(5),   status(5),   hylafax-
       shutdown(5),

                                 July 12, 1996                        HFAXD(8)