config.h.in
上传用户:weiyuanprp
上传日期:2020-05-20
资源大小:1169k
文件大小:12k
源码类别:

传真(Fax)编程

开发平台:

C/C++

  1. /* $Id: config.h.in,v 1.5 2008/09/30 14:39:51 faxguy Exp $ */
  2. /*
  3.  * Copyright (c) 1990-1996 Sam Leffler
  4.  * Copyright (c) 1991-1996 Silicon Graphics, Inc.
  5.  * HylaFAX is a trademark of Silicon Graphics
  6.  *
  7.  * Permission to use, copy, modify, distribute, and sell this software and 
  8.  * its documentation for any purpose is hereby granted without fee, provided
  9.  * that (i) the above copyright notices and this permission notice appear in
  10.  * all copies of the software and related documentation, and (ii) the names of
  11.  * Sam Leffler and Silicon Graphics may not be used in any advertising or
  12.  * publicity relating to the software without the specific, prior written
  13.  * permission of Sam Leffler and Silicon Graphics.
  14.  * 
  15.  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  16.  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  17.  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  18.  * 
  19.  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  20.  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  21.  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  22.  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  23.  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  24.  * OF THIS SOFTWARE.
  25.  */
  26. /*
  27.  * Warning, this file was automatically created by the HylaFAX configure script
  28.  *
  29.  * VERSION: @VERSION@
  30.  * DATE: @DATE@
  31.  * TARGET: @TARGET@
  32.  * CCOMPILER: @CCOMPILER@
  33.  * CXXCOMPILER: @CXXCOMPILER@
  34.  */
  35. #ifndef _CONFIG_
  36. #define _CONFIG_
  37. #include "port.h"
  38. /*
  39.  * HylaFAX version number string
  40.  */
  41. #define HYLAFAX_VERSION HYLAFAX_VERSION_STRING
  42. #define FAX_SPOOLDIR "@SPOOL@" /* pathname to top of spooling area */
  43. #define FAX_CLIENTBIN "@BIN@" /* place for client apps */
  44. #define FAX_LIBEXEC "@LIBEXEC@" /* place for lib executables */
  45. #define FAX_LIBDATA "@LIBDATA@" /* place for lib data files */
  46. /*
  47.  * Client-server configuration definitions.
  48.  *
  49.  * There are currently 2 possible transport methods: INET
  50.  * (TCP/IP sockets), and Unix (Unix-domain sockets).
  51.  * The latter has some limitations but may be useful to folks
  52.  * not working in a network environment.
  53.  *
  54.  * NB: The Unix-domain support is unfinished.
  55.  */
  56. #define FAX_USER "@FAXUID@" /* account name of the ``fax user'' */
  57. #define FAX_SERVICE "hylafax" /* client-server service name */
  58. #define FAX_PROTONAME "tcp" /* protocol used by client+server */
  59. #define FAX_DEFPORT 4559 /* port to use if service is unknown */
  60. #define FAX_DEFHOST "localhost" /* default host for inet-service */
  61. #define FAX_DEFUNIX "/tmp/hyla.unix"/* default Unix-domain socket */
  62. #ifndef CONFIG_INETTRANSPORT
  63. #define CONFIG_INETTRANSPORT 1 /* support for TCP/IP sockets */
  64. #endif
  65. #ifndef CONFIG_UNIXTRANSPORT
  66. #define CONFIG_UNIXTRANSPORT 0 /* support for Unix domain sockets */
  67. #endif
  68. #define FAX_TYPERULES "typerules" /* file type and conversion rules */
  69. #define FAX_DIALRULES "dialrules" /* client dialstring conversion rules */
  70. #define FAX_PAGESIZES "pagesizes" /* page size database */
  71. #define FAX_COVER "faxcover.ps" /* prototype cover sheet file */
  72. /*
  73.  * System-wide configuration files for client applications (and
  74.  * the hfaxd process) are located in the LIBDATA directory.  Apps
  75.  * look first for FAX_SYSCONF, possibly followed by an
  76.  * application-specific configuration file (e.g. sendfax.conf),
  77.  * followed by a per-user configuration file located (by default)
  78.  * in the user's home directory (~).  This multi-level scheme
  79.  * is intended to simplify both site and user customization.
  80.  */
  81. #define FAX_SYSCONF FAX_LIBDATA "/hyla.conf"
  82. #define FAX_USERCONF "~/.hylarc" /* per-user configuration file */
  83. /*
  84.  * Server configuration definitions.
  85.  *
  86.  * The master spooling directory is broken up into several
  87.  * subdirectories to isolate information that should be
  88.  * protected (e.g. documents) and to minimize the number
  89.  * of files in a single directory (e.g. the send queue).
  90.  */
  91. #define FAX_ARCHDIR "archive" /* subdir for archived jobs */
  92. #define FAX_BINDIR "bin" /* subdir for server helper cmds */
  93. #define FAX_CLIENTDIR "client" /* subdir for client FIFO files */
  94. #define FAX_DOCDIR "docq" /* subdir for documents to send */
  95. #define FAX_DONEDIR "doneq" /* subdir for completed jobs */
  96. #define FAX_ETCDIR "etc" /* subdir for configuration files  */
  97. #define FAX_INFODIR "info" /* subdir for remote machine info */
  98. #define FAX_LOGDIR "log" /* subdir for log files */
  99. #define FAX_POLLDIR "pollq" /* subdir for pollable documents */
  100. #define FAX_RECVDIR "recvq" /* subdir for received facsimiles  */
  101. #define FAX_SENDDIR "sendq" /* subdir for send description files */
  102. #define FAX_STATUSDIR "status" /* subdir for server status files */
  103. #define FAX_TMPDIR "tmp" /* subdir for temp copies of docs */
  104. /*
  105.  * Files that reside in FAX_DOCDIR, FAX_SENDDIR, FAX_RECVDIR,
  106.  * FAX_POLLDIR, and FAX_ARCHDIR are named using sequence number
  107.  * information that is kept in a sequence file in the specific
  108.  * directory (e.g. docq/seqf for document files).
  109.  */
  110. #define FAX_SEQF "seqf" /* sequencing info filename */
  111. /*
  112.  * Job description files that reside in FAX_SENDDIR and
  113.  * FAX_DONEDIR are named using the job identifier and a
  114.  * prefix string (``q'' currently).
  115.  */
  116. #define FAX_QFILEPREF "q" /* prefix for job queue file */
  117. /*
  118.  * Configuration files that reside in the spooling area
  119.  * are all named with a ``config'' prefix to uniquely
  120.  * identify them.
  121.  */
  122. #define FAX_CONFIG FAX_ETCDIR "/config"
  123. /*
  124.  * Send/recv logging information is written to an xferfaxlog
  125.  * file; currently in an ASCII format designed for processing
  126.  * by programs like awk and perl.
  127.  */
  128. #define FAX_XFERLOG FAX_ETCDIR "/xferfaxlog"
  129. /*
  130.  * Client access to services on the server machine is controlled
  131.  * by information in the ``hosts.hfaxd'' file.  This is actually a
  132.  * minsomer; the file has much more information than host names
  133.  * (but it used to only have host-related information).
  134.  */
  135. #define FAX_PERMFILE FAX_ETCDIR "/hosts.hfaxd"
  136. /*
  137.  * Server processes write various status information to files
  138.  * that reside in the ``status'' directory.  These files are
  139.  * named, by convention using their device identifier ad an
  140.  * ``info'' suffix (e.g. ttyf2.info).
  141.  */
  142. #define FAX_INFOSUF "info" /* suffix for server info files */
  143. #define FAX_FIFO "FIFO" /* FIFO file for talking to daemon */
  144. #define MODEM_ANY "any" /* any modem acceptable identifier */
  145. /* NB: all times are given in seconds */
  146. #define FAX_REQBUSY (3*60) /* requeue interval on busy answer */
  147. #define FAX_REQPROTO (1*60) /* requeue interval on protocol error */
  148. #define FAX_REQUEUE (5*60) /* requeue interval on other */
  149. #define FAX_RETBUSY (u_int)-1 /* retry maximum on busy answer */
  150. #define FAX_RETRY (u_int)-1 /* retry maximum for others */
  151. #define FAX_RETRIES 3 /* number times to retry send */
  152. #define FAX_REDIALS 12 /* number times to dial phone */
  153. #define FAX_TIMEOUT "now + 3 hours" /* default job timeout (at syntax) */
  154. #define FAX_DEFVRES @DEFVRES@ /* default vertical resolution */
  155. /* default is no email notification */
  156. #define FAX_DEFNOTIFY SendFaxJob::no_notice
  157. #define FAX_DEFPRIORITY 127 /* default job priority */
  158. /*
  159.  * UUCP lock file support exists for both ASCII-style and
  160.  * binary-style files.  The difference refers to whether
  161.  * the process ID's written to the lock file are written
  162.  * in ASCII or binary.  HylaFAX server programs can be
  163.  * configured to use either through the configuration files
  164.  * and there is also support for certain lock file naming
  165.  * conventions required by different systems such as SCO
  166.  * and SVR4.  Consult the documentation for more details.
  167.  */
  168. #define UUCP_LOCKDIR "@UUCP_LOCKDIR@" /* directory for UUCP lock files */
  169. #define UUCP_LOCKTYPE "@UUCP_LOCKTYPE@" /* UUCP lock file type */
  170. #define UUCP_LOCKMODE 0444 /* UUCP lock file creation mode */
  171. #define UUCP_PIDDIGITS 10 /* # digits to write to lock file */
  172. /*
  173.  * HylaFAX server processes that create UUCP lock files
  174.  * check that the lock file owner exists and if they do
  175.  * not they can be configured to automatically purge the
  176.  * lock file.  This operation is only done for lock files
  177.  * that appear to be orphaned longer than some period of
  178.  * time.  The default value for this interval is 30 seconds
  179.  * but it can be changed through the configuration files.
  180.  * Setting this value to 0 disables this automatic purging
  181.  * of UUCP lock files.
  182.  */
  183. #define UUCP_LCKTIMEOUT 30 /* UUCP lock auto-expiration (secs) */
  184. /*
  185.  * Default syslog facility.  This value can be redefined
  186.  * through the LogFaclity configuration parameters read
  187.  * by all the server programs.
  188.  */
  189. #define LOG_FAX "daemon" /* logging identity */
  190. /*
  191.  * The pathnames of the getty, vgetty, and egetty programs
  192.  * invoked by faxgetty to handle inbound data and voice
  193.  * calls and for doing adaptive call type deduction.  These
  194.  * parameters are compiled into the binary to avoid possible
  195.  * security problems.
  196.  */
  197. #ifndef _PATH_GETTY
  198. #define _PATH_GETTY "@PATHGETTY@" /* getty program for data call */
  199. #endif
  200. #ifndef _PATH_VGETTY
  201. #define _PATH_VGETTY "@PATHVGETTY@" /* vgetty program for voice call */
  202. #endif
  203. #ifndef _PATH_EGETTY
  204. #define _PATH_EGETTY "@PATHEGETTY@" /* egetty for deducing call type */
  205. #endif
  206. /*
  207.  * The default pathname for the Fontmap(s) file
  208.  * is compiled into util/TextFormat.o but can be overridden
  209.  * through configuration files.
  210.  */
  211. #ifndef _PATH_FONTMAP
  212. #define _PATH_FONTMAP "@FONTMAP@" /* location of Fontmap(s) */
  213. #endif
  214. /*
  215.  * The default pathname for the location of the fonts
  216.  * is compiled into util/TextFormat.o but can be overridden
  217.  * through configuration files.
  218.  */
  219. #ifndef _PATH_AFM
  220. #define _PATH_AFM "@FONTPATH@" /* location of Fonts */
  221. #endif
  222. /*
  223.  * The following commands are invoked by server processes
  224.  * to do work that might need to be customized.  Typically
  225.  * these ``commands'' are shell scripts, but there's nothing
  226.  * to stop them from being something else.
  227.  *
  228.  * Note that non-absolute pathnames must be given relative
  229.  * to the top of the spooling area.
  230.  */
  231. #define FAX_NOTIFYCMD FAX_BINDIR "/notify" /* cmd to do job notification */
  232. #define FAX_TRANSCMD FAX_BINDIR "/transcript"/* cmd to return transcript */
  233. #define FAX_FAXRCVDCMD FAX_BINDIR "/faxrcvd" /* cmd to process a recvd fax */
  234. #define FAX_POLLRCVDCMD FAX_BINDIR "/pollrcvd" /* cmd to process a recvd fax */
  235. #define FAX_PS2FAXCMD FAX_BINDIR "/ps2fax" /* cmd to convert postscript */
  236. #define FAX_PDF2FAXCMD FAX_BINDIR "/pdf2fax" /* cmd to convert PDF */ 
  237. #define FAX_PCL2FAXCMD FAX_BINDIR "/pcl2fax" /* cmd to convert PCL */
  238. #define FAX_TIFF2FAXCMD FAX_BINDIR "/tiff2fax" /* cmd to convert TIFF */
  239. #define FAX_COVERCMD FAX_BINDIR "/mkcover" /* cmd to make cont coverpage */
  240. #define FAX_WEDGEDCMD FAX_BINDIR "/wedged" /* cmd to handle wedged modem */
  241. /*
  242.  * SNPP-related client-server definitions.
  243.  */
  244. #define SNPP_SERVICE "snpp" /* Simple Network Pager Protocol */
  245. #define SNPP_PROTONAME "tcp" /* protocol used by client+server */
  246. #define SNPP_DEFPORT 444 /* port to use if service is unknown */
  247. #define SNPP_DEFHOST "localhost" /* default host for SNPP service */
  248. /* default values for SNPP job scheduling and handling */
  249. #define SNPP_DEFQUEUE false /* default is synchronous delivery */
  250. #define SNPP_DEFLEVEL 1 /* default service level */
  251. #define SNPP_DEFRETRIES 3 /* number times to retry send */
  252. #define SNPP_DEFREDIALS 12 /* number times to dial phone */
  253. #define SNPP_DEFNOTIFY "none" /* default is no email notification */
  254. #define SNPP_DEFPRIORITY 127 /* default job priority */
  255. /*
  256.  * Sequence numbers are assigned for jobs and documents
  257.  * stored in the fax filesystem.  We no longer constrain these
  258.  * numbers to be 16-bit values.
  259.  */
  260. #define MAXSEQNUM 999999999
  261. #define NEXTSEQNUM(x) (((x)+1) % MAXSEQNUM)
  262. /*
  263.  * PAM Authentication
  264.  */
  265. @HAVE_PAM@
  266. /*
  267.  * JBIG library support
  268.  */
  269. @HAVE_JBIG@
  270. @HAVE_JBIGTIFF@
  271. /*
  272.  * LDAP Authentication
  273.  */
  274. @HAVE_LDAP@
  275. #endif