1 ################################################## |
|
2 # The Exim mail transport agent # |
|
3 ################################################## |
|
4 |
|
5 # This is the template for Exim's main build-time configuration file. It |
|
6 # contains settings that are independent of any operating system. These are |
|
7 # things that are mostly sysadmin choices. The items below are divided into |
|
8 # those you must specify, those you probably want to specify, those you might |
|
9 # often want to specify, and those that you almost never need to mention. |
|
10 |
|
11 # Edit this file and save the result to a file called Local/Makefile within the |
|
12 # Exim distribution directory before running the "make" command. |
|
13 |
|
14 # Things that depend on the operating system have default settings in |
|
15 # OS/Makefile-Default, but these are overridden for some OS by files called |
|
16 # called OS/Makefile-<osname>. You can further override these by creating files |
|
17 # called Local/Makefile-<osname>, where "<osname>" stands for the name of your |
|
18 # operating system - look at the names in the OS directory to see which names |
|
19 # are recognized. |
|
20 |
|
21 # However, if you are building Exim for a single OS only, you don't need to |
|
22 # worry about setting up Local/Makefile-<osname>. Any build-time configuration |
|
23 # settings you require can in fact be placed in the one file called |
|
24 # Local/Makefile. It is only if you are building for several OS from the same |
|
25 # source files that you need to worry about splitting off your own OS-dependent |
|
26 # settings into separate files. (There's more explanation about how this all |
|
27 # works in the toplevel README file, under "Modifying the building process", as |
|
28 # well as in the Exim specification.) |
|
29 |
|
30 # One OS-specific thing that may need to be changed is the command for running |
|
31 # the C compiler; the overall default is gcc, but some OS Makefiles specify cc. |
|
32 # You can override anything that is set by putting CC=whatever in your |
|
33 # Local/Makefile. |
|
34 |
|
35 # NOTE: You should never need to edit any of the distributed Makefiles; all |
|
36 # overriding can be done in your Local/Makefile(s). This will make it easier |
|
37 # for you when the next release comes along. |
|
38 |
|
39 # The location of the X11 libraries is something else that is quite variable |
|
40 # even between different versions of the same operating system (and indeed |
|
41 # there are different versions of X11 as well, of course). The four settings |
|
42 # concerned here are X11, XINCLUDE, XLFLAGS (linking flags) and X11_LD_LIB |
|
43 # (dynamic run-time library). You need not worry about X11 unless you want to |
|
44 # compile the Exim monitor utility. Exim itself does not use X11. |
|
45 |
|
46 # Another area of variability between systems is the type and location of the |
|
47 # DBM library package. Exim has support for ndbm, gdbm, tdb, and Berkeley DB. |
|
48 # By default the code assumes ndbm; this often works with gdbm or DB, provided |
|
49 # they are correctly installed, via their compatibility interfaces. However, |
|
50 # Exim can also be configured to use the native calls for Berkeley DB (obsolete |
|
51 # versions 1.85, 2.x, 3.x, or the current 4.x version) and also for gdbm. |
|
52 |
|
53 # For some operating systems, a default DBM library (other than ndbm) is |
|
54 # selected by a setting in the OS-specific Makefile. Most modern OS now have |
|
55 # a DBM library installed as standard, and in many cases this will be selected |
|
56 # for you by the OS-specific configuration. If Exim compiles without any |
|
57 # problems, you probably do not have to worry about the DBM library. If you |
|
58 # do want or need to change it, you should first read the discussion in the |
|
59 # file doc/dbm.discuss.txt, which also contains instructions for testing Exim's |
|
60 # interface to the DBM library. |
|
61 |
|
62 # In Local/Makefiles blank lines and lines starting with # are ignored. It is |
|
63 # also permitted to use the # character to add a comment to a setting, for |
|
64 # example |
|
65 # |
|
66 # EXIM_GID=42 # the "mail" group |
|
67 # |
|
68 # However, with some versions of "make" this works only if there is no white |
|
69 # space between the end of the setting and the #, so perhaps it is best |
|
70 # avoided. A consequence of this facility is that it is not possible to have |
|
71 # the # character present in any setting, but I can't think of any cases where |
|
72 # this would be wanted. |
|
73 ############################################################################### |
|
74 |
|
75 |
|
76 |
|
77 ############################################################################### |
|
78 # THESE ARE THINGS YOU MUST SPECIFY # |
|
79 ############################################################################### |
|
80 |
|
81 # Exim will not build unless you specify BIN_DIRECTORY, CONFIGURE_FILE, and |
|
82 # EXIM_USER. You also need EXIM_GROUP if EXIM_USER specifies a uid by number. |
|
83 |
|
84 # If you don't specify SPOOL_DIRECTORY, Exim won't fail to build. However, it |
|
85 # really is a very good idea to specify it here rather than at run time. This |
|
86 # is particularly true if you let the logs go to their default location in the |
|
87 # spool directory, because it means that the location of the logs is known |
|
88 # before Exim has read the run time configuration file. |
|
89 |
|
90 #------------------------------------------------------------------------------ |
|
91 # BIN_DIRECTORY defines where the exim binary will be installed by "make |
|
92 # install". The path is also used internally by Exim when it needs to re-invoke |
|
93 # itself, either to send an error message, or to recover root privilege. Exim's |
|
94 # utility binaries and scripts are also installed in this directory. There is |
|
95 # no "standard" place for the binary directory. Some people like to keep all |
|
96 # the Exim files under one directory such as /usr/exim; others just let the |
|
97 # Exim binaries go into an existing directory such as /usr/sbin or |
|
98 # /usr/local/sbin. The installation script will try to create this directory, |
|
99 # and any superior directories, if they do not exist. |
|
100 |
|
101 #BIN_DIRECTORY=/usr/exim/bin |
|
102 BIN_DIRECTORY=/usr/local/exim/etc |
|
103 |
|
104 |
|
105 #------------------------------------------------------------------------------ |
|
106 # CONFIGURE_FILE defines where Exim's run time configuration file is to be |
|
107 # found. It is the complete pathname for the file, not just a directory. The |
|
108 # location of all other run time files and directories can be changed in the |
|
109 # run time configuration file. There is a lot of variety in the choice of |
|
110 # location in different OS, and in the preferences of different sysadmins. Some |
|
111 # common locations are in /etc or /etc/mail or /usr/local/etc or |
|
112 # /usr/local/etc/mail. Another possibility is to keep all the Exim files under |
|
113 # a single directory such as /usr/exim. Whatever you choose, the installation |
|
114 # script will try to make the directory and any superior directories if they |
|
115 # don't exist. It will also install a default runtime configuration if this |
|
116 # file does not exist. |
|
117 |
|
118 #CONFIGURE_FILE=/usr/exim/configure |
|
119 CONFIGURE_FILE=/usr/local/exim/etc/exim.conf |
|
120 |
|
121 # It is possible to specify a colon-separated list of files for CONFIGURE_FILE. |
|
122 # In this case, Exim will use the first of them that exists when it is run. |
|
123 # However, if a list is specified, the installation script no longer tries to |
|
124 # make superior directories or to install a default runtime configuration. |
|
125 |
|
126 |
|
127 #------------------------------------------------------------------------------ |
|
128 # The Exim binary must normally be setuid root, so that it starts executing as |
|
129 # root, but (depending on the options with which it is called) it does not |
|
130 # always need to retain the root privilege. These settings define the user and |
|
131 # group that is used for Exim processes when they no longer need to be root. In |
|
132 # particular, this applies when receiving messages and when doing remote |
|
133 # deliveries. (Local deliveries run as various non-root users, typically as the |
|
134 # owner of a local mailbox.) Specifying these values as root is not supported. |
|
135 |
|
136 # EXIM_USER= |
|
137 |
|
138 # If you specify EXIM_USER as a name, this is looked up at build time, and the |
|
139 # uid number is built into the binary. However, you can specify that this |
|
140 # lookup is deferred until runtime. In this case, it is the name that is built |
|
141 # into the binary. You can do this by a setting of the form: |
|
142 |
|
143 EXIM_USER=exim |
|
144 |
|
145 # In other words, put "ref:" in front of the user name. If you set EXIM_USER |
|
146 # like this, any value specified for EXIM_GROUP is also passed "by reference". |
|
147 # Although this costs a bit of resource at runtime, it is convenient to use |
|
148 # this feature when building binaries that are to be run on multiple systems |
|
149 # where the name may refer to different uids. It also allows you to build Exim |
|
150 # on a system where there is no Exim user defined. |
|
151 |
|
152 # If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must |
|
153 # also be a setting of EXIM_GROUP. If, on the other hand, you use a name |
|
154 # for EXIM_USER (e.g. EXIM_USER=exim), you don't need to set EXIM_GROUP unless |
|
155 # you want to use a group other than the default group for the given user. |
|
156 |
|
157 # EXIM_GROUP= |
|
158 |
|
159 # Many sites define a user called "exim", with an appropriate default group, |
|
160 # and use |
|
161 # |
|
162 # EXIM_USER=exim |
|
163 # |
|
164 # while leaving EXIM_GROUP unspecified (commented out). |
|
165 |
|
166 |
|
167 #------------------------------------------------------------------------------ |
|
168 # SPOOL_DIRECTORY defines the directory where all the data for messages in |
|
169 # transit is kept. It is strongly recommended that you define it here, though |
|
170 # it is possible to leave this till the run time configuration. |
|
171 |
|
172 # Exim creates the spool directory if it does not exist. The owner and group |
|
173 # will be those defined by EXIM_USER and EXIM_GROUP, and this also applies to |
|
174 # all the files and directories that are created in the spool directory. |
|
175 |
|
176 # Almost all installations choose this: |
|
177 |
|
178 SPOOL_DIRECTORY=/var/spool/exim |
|
179 |
|
180 |
|
181 |
|
182 ############################################################################### |
|
183 # THESE ARE THINGS YOU PROBABLY WANT TO SPECIFY # |
|
184 ############################################################################### |
|
185 |
|
186 # If you need extra header file search paths on all compiles, put the -I |
|
187 # options in INCLUDE. If you want the extra searches only for certain |
|
188 # parts of the build, see more specific xxx_INCLUDE variables below. |
|
189 |
|
190 # INCLUDE=-I/example/include |
|
191 |
|
192 # You need to specify some routers and transports if you want the Exim that you |
|
193 # are building to be capable of delivering mail. You almost certainly need at |
|
194 # least one type of lookup. You should consider whether you want to build |
|
195 # the Exim monitor or not. |
|
196 |
|
197 |
|
198 #------------------------------------------------------------------------------ |
|
199 # These settings determine which individual router drivers are included in the |
|
200 # Exim binary. There are no defaults in the code; those routers that are wanted |
|
201 # must be defined here by setting the appropriate variables to the value "yes". |
|
202 # Including a router in the binary does not cause it to be used automatically. |
|
203 # It has also to be configured in the run time configuration file. By |
|
204 # commenting out those you know you don't want to use, you can make the binary |
|
205 # a bit smaller. If you are unsure, leave all of these included for now. |
|
206 |
|
207 ROUTER_ACCEPT=yes |
|
208 ROUTER_DNSLOOKUP=yes |
|
209 ROUTER_IPLITERAL=yes |
|
210 ROUTER_MANUALROUTE=yes |
|
211 ROUTER_QUERYPROGRAM=yes |
|
212 ROUTER_REDIRECT=yes |
|
213 |
|
214 # This one is very special-purpose, so is not included by default. |
|
215 |
|
216 # ROUTER_IPLOOKUP=yes |
|
217 |
|
218 |
|
219 #------------------------------------------------------------------------------ |
|
220 # These settings determine which individual transport drivers are included in |
|
221 # the Exim binary. There are no defaults; those transports that are wanted must |
|
222 # be defined here by setting the appropriate variables to the value "yes". |
|
223 # Including a transport in the binary does not cause it to be used |
|
224 # automatically. It has also to be configured in the run time configuration |
|
225 # file. By commenting out those you know you don't want to use, you can make |
|
226 # the binary a bit smaller. If you are unsure, leave all of these included for |
|
227 # now. |
|
228 |
|
229 TRANSPORT_APPENDFILE=yes |
|
230 TRANSPORT_AUTOREPLY=yes |
|
231 TRANSPORT_PIPE=yes |
|
232 TRANSPORT_SMTP=yes |
|
233 |
|
234 # This one is special-purpose, and commonly not required, so it is not |
|
235 # included by default. |
|
236 |
|
237 TRANSPORT_LMTP=yes |
|
238 |
|
239 |
|
240 #------------------------------------------------------------------------------ |
|
241 # The appendfile transport can write messages to local mailboxes in a number |
|
242 # of formats. The code for three specialist formats, maildir, mailstore, and |
|
243 # MBX, is included only when requested. If you do not know what this is about, |
|
244 # leave these settings commented out. |
|
245 |
|
246 SUPPORT_MAILDIR=yes |
|
247 SUPPORT_MAILSTORE=yes |
|
248 SUPPORT_MBX=yes |
|
249 |
|
250 |
|
251 #------------------------------------------------------------------------------ |
|
252 # See below for dynamic lookup modules. |
|
253 # |
|
254 # If not using package management but using this anyway, then think about how |
|
255 # you perform upgrades and revert them. You should consider the benefit of |
|
256 # embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can |
|
257 # maintain two concurrent sets of modules. |
|
258 # |
|
259 # *BEWARE*: ability to modify the files in LOOKUP_MODULE_DIR is equivalent to |
|
260 # the ability to modify the Exim binary, which is often setuid root! The Exim |
|
261 # developers only intend this functionality be used by OS software packagers |
|
262 # and we suggest that such packagings' integrity checks should be paranoid |
|
263 # about the permissions of the directory and the files within. |
|
264 |
|
265 # LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/ |
|
266 |
|
267 # To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for |
|
268 # your platform. Eg: |
|
269 # CFLAGS_DYNAMIC=-shared -rdynamic |
|
270 CFLAGS_DYNAMIC=-shared -rdynamic -fPIC |
|
271 |
|
272 #------------------------------------------------------------------------------ |
|
273 # These settings determine which file and database lookup methods are included |
|
274 # in the binary. See the manual chapter entitled "File and database lookups" |
|
275 # for discussion. DBM and lsearch (linear search) are included by default. If |
|
276 # you are unsure about the others, leave them commented out for now. |
|
277 # LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is |
|
278 # for the specialist case of using the DNS as a general database facility (not |
|
279 # common). |
|
280 # If set to "2" instead of "yes" then the corresponding lookup will be |
|
281 # built as a module and must be installed into LOOKUP_MODULE_DIR. You need to |
|
282 # add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to |
|
283 # EXTRALIBS so that dlopen() is available to Exim. You need to define |
|
284 # LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup |
|
285 # modules. |
|
286 # Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and |
|
287 # LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS |
|
288 # (where * is the name as given here in this list). That ensures that only |
|
289 # the dynamic library and not the exim binary will be linked against the |
|
290 # library. |
|
291 # NOTE: LDAP cannot be built as a module! |
|
292 # |
|
293 # If your system has pkg-config then the _INCLUDE/_LIBS setting can be |
|
294 # handled for you automatically by also defining the _PC variable to reference |
|
295 # the name of the pkg-config package, if such is available. |
|
296 |
|
297 LOOKUP_DBM=yes |
|
298 LOOKUP_LSEARCH=yes |
|
299 LOOKUP_DNSDB=yes |
|
300 |
|
301 LOOKUP_CDB=yes |
|
302 LOOKUP_DSEARCH=yes |
|
303 # LOOKUP_IBASE=yes |
|
304 LOOKUP_LDAP=yes |
|
305 LOOKUP_MYSQL=yes |
|
306 # LOOKUP_NIS=yes |
|
307 # LOOKUP_NISPLUS=yes |
|
308 # LOOKUP_ORACLE=yes |
|
309 LOOKUP_PASSWD=yes |
|
310 LOOKUP_PGSQL=yes |
|
311 LOOKUP_SQLITE=yes |
|
312 # LOOKUP_SQLITE_PC=sqlite3 |
|
313 # LOOKUP_WHOSON=yes |
|
314 |
|
315 # These two settings are obsolete; all three lookups are compiled when |
|
316 # LOOKUP_LSEARCH is enabled. However, we retain these for backward |
|
317 # compatibility. Setting one forces LOOKUP_LSEARCH if it is not set. |
|
318 |
|
319 # LOOKUP_WILDLSEARCH=yes |
|
320 # LOOKUP_NWILDLSEARCH=yes |
|
321 |
|
322 |
|
323 #------------------------------------------------------------------------------ |
|
324 # If you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate |
|
325 # which LDAP library you have. Unfortunately, though most of their functions |
|
326 # are the same, there are minor differences. Currently Exim knows about four |
|
327 # LDAP libraries: the one from the University of Michigan (also known as |
|
328 # OpenLDAP 1), OpenLDAP 2, the Netscape SDK library, and the library that comes |
|
329 # with Solaris 7 onwards. Uncomment whichever of these you are using. |
|
330 |
|
331 # LDAP_LIB_TYPE=OPENLDAP1 |
|
332 LDAP_LIB_TYPE=OPENLDAP2 |
|
333 # LDAP_LIB_TYPE=NETSCAPE |
|
334 # LDAP_LIB_TYPE=SOLARIS |
|
335 |
|
336 # If you don't set any of these, Exim assumes the original University of |
|
337 # Michigan (OpenLDAP 1) library. |
|
338 |
|
339 |
|
340 #------------------------------------------------------------------------------ |
|
341 # The PCRE library is required for exim. There is no longer an embedded |
|
342 # version of the PCRE library included with the source code, instead you |
|
343 # must use a system library or build your own copy of PCRE. |
|
344 # In either case you must specify the library link info here. If the |
|
345 # PCRE header files are not in the standard search path you must also |
|
346 # modify the INCLUDE path (above) |
|
347 # |
|
348 # Use PCRE_CONFIG to query the pcre-config command (first found in $PATH) |
|
349 # to find the include files and libraries, else use PCRE_LIBS and set INCLUDE |
|
350 # too if needed. |
|
351 |
|
352 PCRE_CONFIG=yes |
|
353 # PCRE_LIBS=-lpcre |
|
354 |
|
355 |
|
356 #------------------------------------------------------------------------------ |
|
357 # Additional libraries and include directories may be required for some |
|
358 # lookup styles (e.g. LDAP, MYSQL or PGSQL). LOOKUP_LIBS is included only on |
|
359 # the command for linking Exim itself, not on any auxiliary programs. You |
|
360 # don't need to set LOOKUP_INCLUDE if the relevant directories are already |
|
361 # specified in INCLUDE. The settings below are just examples; -lpq is for |
|
362 # PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite. |
|
363 # |
|
364 # You do not need to use this for any lookup information added via pkg-config. |
|
365 |
|
366 LOOKUP_INCLUDE=-I /usr/include/mysql -I /usr/include/postgresql/ |
|
367 LOOKUP_LIBS=-L/usr/local/lib -L/usr/lib64/mysql -lldap -llber -lmysqlclient -lpq -lsqlite3 |
|
368 |
|
369 |
|
370 #------------------------------------------------------------------------------ |
|
371 # Compiling the Exim monitor: If you want to compile the Exim monitor, a |
|
372 # program that requires an X11 display, then EXIM_MONITOR should be set to the |
|
373 # value "eximon.bin". Comment out this setting to disable compilation of the |
|
374 # monitor. The locations of various X11 directories for libraries and include |
|
375 # files are defaulted in the OS/Makefile-Default file, but can be overridden in |
|
376 # local OS-specific make files. |
|
377 |
|
378 #EXIM_MONITOR=eximon.bin |
|
379 |
|
380 |
|
381 #------------------------------------------------------------------------------ |
|
382 # Compiling Exim with content scanning support: If you want to compile Exim |
|
383 # with support for message body content scanning, set WITH_CONTENT_SCAN to |
|
384 # the value "yes". This will give you malware and spam scanning in the DATA ACL, |
|
385 # and the MIME ACL. Please read the documentation to learn more about these |
|
386 # features. |
|
387 |
|
388 WITH_CONTENT_SCAN=yes |
|
389 |
|
390 # If you want to use the deprecated "demime" condition in the DATA ACL, |
|
391 # uncomment the line below. Doing so will also explicitly turn on the |
|
392 # WITH_CONTENT_SCAN option. If possible, use the MIME ACL instead of |
|
393 # the "demime" condition. |
|
394 |
|
395 # WITH_OLD_DEMIME=yes |
|
396 |
|
397 # If you're using ClamAV and are backporting fixes to an old version, instead |
|
398 # of staying current (which is the more usual approach) then you may need to |
|
399 # use an older API which uses a STREAM command, now deprecated, instead of |
|
400 # zINSTREAM. If you need to set this, please let the Exim developers know, as |
|
401 # if nobody reports a need for it, we'll remove this option and clean up the |
|
402 # code. zINSTREAM was introduced with ClamAV 0.95. |
|
403 # |
|
404 # WITH_OLD_CLAMAV_STREAM=yes |
|
405 |
|
406 #------------------------------------------------------------------------------ |
|
407 # By default Exim includes code to support DKIM (DomainKeys Identified |
|
408 # Mail, RFC4871) signing and verification. Verification of signatures is |
|
409 # turned on by default. See the spec for information on conditionally |
|
410 # disabling it. To disable the inclusion of the entire feature, set |
|
411 # DISABLE_DKIM to "yes" |
|
412 |
|
413 # DISABLE_DKIM=yes |
|
414 |
|
415 |
|
416 #------------------------------------------------------------------------------ |
|
417 # By default, Exim has support for checking the AD bit in a DNS response, to |
|
418 # determine if DNSSEC validation was successful. If your system libraries |
|
419 # do not support that bit, then set DISABLE_DNSSEC to "yes" |
|
420 |
|
421 # DISABLE_DNSSEC=yes |
|
422 |
|
423 # DISABLE_PRDR=yes |
|
424 # DISABLE_OCSP=yes |
|
425 |
|
426 |
|
427 #------------------------------------------------------------------------------ |
|
428 # Compiling Exim with experimental features. These are documented in |
|
429 # experimental-spec.txt. "Experimental" means that the way these features are |
|
430 # implemented may still change. Backward compatibility is not guaranteed. |
|
431 |
|
432 # Uncomment the following line to add support for talking to dccifd. This |
|
433 # defaults the socket path to /usr/local/dcc/var/dccifd. |
|
434 |
|
435 EXPERIMENTAL_DCC=yes |
|
436 |
|
437 # Uncomment the following lines to add SPF support. You need to have libspf2 |
|
438 # installed on your system (www.libspf2.org). Depending on where it is installed |
|
439 # you may have to edit the CFLAGS and LDFLAGS lines. |
|
440 |
|
441 # EXPERIMENTAL_SPF=yes |
|
442 # CFLAGS += -I/usr/local/include |
|
443 # LDFLAGS += -lspf2 |
|
444 |
|
445 # Uncomment the following lines to add SRS (Sender rewriting scheme) support. |
|
446 # You need to have libsrs_alt installed on your system (srs.mirtol.com). |
|
447 # Depending on where it is installed you may have to edit the CFLAGS and |
|
448 # LDFLAGS lines. |
|
449 |
|
450 # EXPERIMENTAL_SRS=yes |
|
451 # CFLAGS += -I/usr/local/include |
|
452 # LDFLAGS += -lsrs_alt |
|
453 |
|
454 # Uncomment the following lines to add Brightmail AntiSpam support. You need |
|
455 # to have the Brightmail client SDK installed. Please check the experimental |
|
456 # documentation for implementation details. You need to edit the CFLAGS and |
|
457 # LDFLAGS lines. |
|
458 |
|
459 # EXPERIMENTAL_BRIGHTMAIL=yes |
|
460 # CFLAGS += -I/opt/brightmail/bsdk-6.0/include |
|
461 # LDFLAGS += -lxml2_single -lbmiclient_single -L/opt/brightmail/bsdk-6.0/lib |
|
462 |
|
463 # Uncomment the following line to add DMARC checking capability, implemented |
|
464 # using libopendmarc libraries. |
|
465 #EXPERIMENTAL_DMARC=yes |
|
466 #CFLAGS += -I/usr/local/include |
|
467 #LDFLAGS += -lopendmarc |
|
468 |
|
469 EXPERIMENTAL_DANE=yes |
|
470 EXPERIMENTAL_EVENT=yes |
|
471 EXPERIMENTAL_CERTNAMES=yes |
|
472 EXPERIMENTAL_SOCKS=yes |
|
473 EXPERIMENTAL_INTERNATIONAL=yes |
|
474 |
|
475 |
|
476 ############################################################################### |
|
477 # THESE ARE THINGS YOU MIGHT WANT TO SPECIFY # |
|
478 ############################################################################### |
|
479 |
|
480 # The items in this section are those that are commonly changed according to |
|
481 # the sysadmin's preferences, but whose defaults are often acceptable. The |
|
482 # first five are concerned with security issues, where differing levels of |
|
483 # paranoia are appropriate in different environments. Sysadmins also vary in |
|
484 # their views on appropriate levels of defence in these areas. If you do not |
|
485 # understand these issues, go with the defaults, which are used by many sites. |
|
486 |
|
487 |
|
488 #------------------------------------------------------------------------------ |
|
489 # Although Exim is normally a setuid program, owned by root, it refuses to run |
|
490 # local deliveries as root by default. There is a runtime option called |
|
491 # "never_users" which lists the users that must never be used for local |
|
492 # deliveries. There is also the setting below, which provides a list that |
|
493 # cannot be overridden at runtime. This guards against problems caused by |
|
494 # unauthorized changes to the runtime configuration. You are advised not to |
|
495 # remove "root" from this option, but you can add other users if you want. The |
|
496 # list is colon-separated. It must NOT contain any spaces. |
|
497 |
|
498 # FIXED_NEVER_USERS=root:bin:daemon |
|
499 FIXED_NEVER_USERS=root |
|
500 |
|
501 |
|
502 #------------------------------------------------------------------------------ |
|
503 # By default, Exim insists that its configuration file be owned by root. You |
|
504 # can specify one additional permitted owner here. |
|
505 |
|
506 CONFIGURE_OWNER=exim-test |
|
507 |
|
508 # If the configuration file is group-writeable, Exim insists by default that it |
|
509 # is owned by root. You can specify one additional permitted group owner here. |
|
510 |
|
511 CONFIGURE_GROUP=exim-test |
|
512 |
|
513 # If you specify CONFIGURE_OWNER or CONFIGURE_GROUP as a name, this is looked |
|
514 # up at build time, and the uid or gid number is built into the binary. |
|
515 # However, you can specify that the lookup is deferred until runtime. In this |
|
516 # case, it is the name that is built into the binary. You can do this by a |
|
517 # setting of the form: |
|
518 |
|
519 # CONFIGURE_OWNER=ref:mail |
|
520 # CONFIGURE_GROUP=ref:sysadmin |
|
521 |
|
522 # In other words, put "ref:" in front of the user or group name. Although this |
|
523 # costs a bit of resource at runtime, it is convenient to use this feature when |
|
524 # building binaries that are to be run on multiple systems where the names may |
|
525 # refer to different uids or gids. It also allows you to build Exim on a system |
|
526 # where the relevant user or group is not defined. |
|
527 |
|
528 |
|
529 #------------------------------------------------------------------------------ |
|
530 # The -C option allows Exim to be run with an alternate runtime configuration |
|
531 # file. When this is used by root, root privilege is retained by the binary |
|
532 # (for any other caller including the Exim user, it is dropped). You can |
|
533 # restrict the location of alternate configurations by defining a prefix below. |
|
534 # Any file used with -C must then start with this prefix (except that /dev/null |
|
535 # is also permitted if the caller is root, because that is used in the install |
|
536 # script). If the prefix specifies a directory that is owned by root, a |
|
537 # compromise of the Exim account does not permit arbitrary alternate |
|
538 # configurations to be used. The prefix can be more restrictive than just a |
|
539 # directory (the second example). |
|
540 |
|
541 # ALT_CONFIG_PREFIX=/some/directory/ |
|
542 # ALT_CONFIG_PREFIX=/some/directory/exim.conf- |
|
543 |
|
544 |
|
545 #------------------------------------------------------------------------------ |
|
546 # When a user other than root uses the -C option to override the configuration |
|
547 # file (including the Exim user when re-executing Exim to regain root |
|
548 # privileges for local message delivery), this will normally cause Exim to |
|
549 # drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which |
|
550 # contains a list of trusted configuration filenames, one per line. If the -C |
|
551 # option is used by the Exim user or by the user specified in the |
|
552 # CONFIGURE_OWNER setting, to specify a configuration file which is listed in |
|
553 # the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim. |
|
554 |
|
555 TRUSTED_CONFIG_LIST=/tmp/exim/trusted-configs |
|
556 |
|
557 |
|
558 #------------------------------------------------------------------------------ |
|
559 # Uncommenting this option disables the use of the -D command line option, |
|
560 # which changes the values of macros in the runtime configuration file. |
|
561 # This is another protection against somebody breaking into the Exim account. |
|
562 |
|
563 # DISABLE_D_OPTION=yes |
|
564 |
|
565 |
|
566 #------------------------------------------------------------------------------ |
|
567 # By contrast, you might be maintaining a system which relies upon the ability |
|
568 # to override values with -D and assumes that these will be passed through to |
|
569 # the delivery processes. As of Exim 4.73, this is no longer the case by |
|
570 # default. Going forward, we strongly recommend that you use a shim Exim |
|
571 # configuration file owned by root stored under TRUSTED_CONFIG_LIST. |
|
572 # That shim can set macros before .include'ing your main configuration file. |
|
573 # |
|
574 # As a strictly transient measure to ease migration to 4.73, the |
|
575 # WHITELIST_D_MACROS value definies a colon-separated list of macro-names |
|
576 # which are permitted to be overridden from the command-line which will be |
|
577 # honoured by the Exim user. So these are macros that can persist to delivery |
|
578 # time. |
|
579 # Examples might be -DTLS or -DSPOOL=/some/dir. The values on the |
|
580 # command-line are filtered to only permit: [A-Za-z0-9_/.-]* |
|
581 # |
|
582 # This option is highly likely to be removed in a future release. It exists |
|
583 # only to make 4.73 as easy as possible to migrate to. If you use it, we |
|
584 # encourage you to schedule time to rework your configuration to not depend |
|
585 # upon it. Most people should not need to use this. |
|
586 # |
|
587 # By default, no macros are whitelisted for -D usage. |
|
588 |
|
589 # WHITELIST_D_MACROS=TLS:SPOOL |
|
590 WHITELIST_D_MACROS=DIR:EXIM_PATH:AA:ACL:ACLRCPT:ACL_MAIL:ACL_PREDATA:ACL_RCPT:AFFIX:ALLOW:ARG1:ARG2:AUTHF:AUTHS:AUTH_ID_DOMAIN:BAD:BANNER:BB:BR:BRB:CERT:COM:COMMAND_USER:CONNECTCOND:CONTROL:CREQCIP:CREQMAC:CRL:CSS:D6:DATA:DCF:DDF:DEFAULTDWC:DELAY:DETAILS:DRATELIMIT:DYNAMIC_OPTION:ELI:ERROR_DETAILS:ERT:FAKE:FALLBACK:FILTER:FILTER_PREPEND_HOME:FORBID:FORBID_SMTP_CODE:FUSER:HAI:HAP:HARDLIMIT:HEADER_LINE_MAXSIZE:HEADER_MAXSIZE:HELO_MSG:HL:HOSTS:HOSTS_AVOID_TLS:HOSTS_MAX_TRY:HVH:IFACE:IGNORE_QUOTA:INC:INSERT:IP1:IP2:LAST:LDAPSERVERS:LENCHECK:LIMIT:LIST:LOG_SELECTOR:LS:MAXNM:MESSAGE_LOGS:MSIZE:NOTDAEMON:ONCE:ONLY:OPT:OPTION:ORDER:PAH:PEX:PORT:PTBC:QDG:QOLL:QUOTA:QUOTA_FILECOUNT:QWM:RCPT_MSG:REMEMBER:REQUIRE:RETRY:RETRY1:RETRY2:RETURN:RETURN_ERROR_DETAILS:REWRITE:ROUTE_DATA:RRATELIMIT:RT:S:SELECTOR:SELF:SERVER:SERVERS:SREQCIP:SREQMAC:SRV:STD:STRICT:SUB:SUBMISSION_OPTIONS:TIMEOUTDEFER:TIMES:TRUSTED:TRYCLEAR:UL:USE_SENDER:UTF8:VALUE:WMF:X:Y |
|
591 |
|
592 #------------------------------------------------------------------------------ |
|
593 # Exim has support for the AUTH (authentication) extension of the SMTP |
|
594 # protocol, as defined by RFC 2554. If you don't know what SMTP authentication |
|
595 # is, you probably won't want to include this code, so you should leave these |
|
596 # settings commented out. If you do want to make use of SMTP authentication, |
|
597 # you must uncomment at least one of the following, so that appropriate code is |
|
598 # included in the Exim binary. You will then need to set up the run time |
|
599 # configuration to make use of the mechanism(s) selected. |
|
600 |
|
601 AUTH_CRAM_MD5=yes |
|
602 # AUTH_CYRUS_SASL=yes |
|
603 AUTH_DOVECOT=yes |
|
604 # AUTH_GSASL=yes |
|
605 # AUTH_GSASL_PC=libgsasl |
|
606 # AUTH_HEIMDAL_GSSAPI=yes |
|
607 # AUTH_HEIMDAL_GSSAPI_PC=heimdal-gssapi |
|
608 AUTH_PLAINTEXT=yes |
|
609 AUTH_SPA=yes |
|
610 |
|
611 |
|
612 #------------------------------------------------------------------------------ |
|
613 # If you specified AUTH_CYRUS_SASL above, you should ensure that you have the |
|
614 # Cyrus SASL library installed before trying to build Exim, and you probably |
|
615 # want to uncomment the first line below. |
|
616 # Similarly for GNU SASL, unless pkg-config is used via AUTH_GSASL_PC. |
|
617 # Ditto for AUTH_HEIMDAL_GSSAPI(_PC). |
|
618 |
|
619 # AUTH_LIBS=-lsasl2 |
|
620 # AUTH_LIBS=-lgsasl |
|
621 # AUTH_LIBS=-lgssapi -lheimntlm -lkrb5 -lhx509 -lcom_err -lhcrypto -lasn1 -lwind -lroken -lcrypt |
|
622 |
|
623 |
|
624 #------------------------------------------------------------------------------ |
|
625 # When Exim is decoding MIME "words" in header lines, most commonly for use |
|
626 # in the $header_xxx expansion, it converts any foreign character sets to the |
|
627 # one that is set in the headers_charset option. The default setting is |
|
628 # defined by this setting: |
|
629 |
|
630 HEADERS_CHARSET="ISO-8859-1" |
|
631 |
|
632 # If you are going to make use of $header_xxx expansions in your configuration |
|
633 # file, or if your users are going to use them in filter files, and the normal |
|
634 # character set on your host is something other than ISO-8859-1, you might |
|
635 # like to specify a different default here. This value can be overridden in |
|
636 # the runtime configuration, and it can also be overridden in individual filter |
|
637 # files. |
|
638 # |
|
639 # IMPORTANT NOTE: The iconv() function is needed for character code |
|
640 # conversions. Please see the next item... |
|
641 |
|
642 |
|
643 #------------------------------------------------------------------------------ |
|
644 # Character code conversions are possible only if the iconv() function is |
|
645 # installed on your operating system. There are two places in Exim where this |
|
646 # is relevant: (a) The $header_xxx expansion (see the previous item), and (b) |
|
647 # the Sieve filter support. For those OS where iconv() is known to be installed |
|
648 # as standard, the file in OS/Makefile-xxxx contains |
|
649 # |
|
650 # HAVE_ICONV=yes |
|
651 # |
|
652 # If you are not using one of those systems, but have installed iconv(), you |
|
653 # need to uncomment that line above. In some cases, you may find that iconv() |
|
654 # and its header file are not in the default places. You might need to use |
|
655 # something like this: |
|
656 # |
|
657 # HAVE_ICONV=yes |
|
658 # CFLAGS=-O -I/usr/local/include |
|
659 # EXTRALIBS_EXIM=-L/usr/local/lib -liconv |
|
660 # |
|
661 # but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM |
|
662 # as well. |
|
663 |
|
664 |
|
665 #------------------------------------------------------------------------------ |
|
666 # The passwords for user accounts are normally encrypted with the crypt() |
|
667 # function. Comparisons with encrypted passwords can be done using Exim's |
|
668 # "crypteq" expansion operator. (This is commonly used as part of the |
|
669 # configuration of an authenticator for use with SMTP AUTH.) At least one |
|
670 # operating system has an extended function called crypt16(), which uses up to |
|
671 # 16 characters of a password (the normal crypt() uses only the first 8). Exim |
|
672 # supports the use of crypt16() as well as crypt() but note the warning below. |
|
673 |
|
674 # You can always indicate a crypt16-encrypted password by preceding it with |
|
675 # "{crypt16}". If you want the default handling (without any preceding |
|
676 # indicator) to use crypt16(), uncomment the following line: |
|
677 |
|
678 # DEFAULT_CRYPT=crypt16 |
|
679 |
|
680 # If you do that, you can still access the basic crypt() function by preceding |
|
681 # an encrypted password with "{crypt}". For more details, see the description |
|
682 # of the "crypteq" condition in the manual chapter on string expansions. |
|
683 |
|
684 # Some operating systems do not include a crypt16() function, so Exim has one |
|
685 # of its own, which it uses unless HAVE_CRYPT16 is defined. Normally, that will |
|
686 # be set in an OS-specific Makefile for the OS that have such a function, so |
|
687 # you should not need to bother with it. |
|
688 |
|
689 # *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** |
|
690 # It turns out that the above is not entirely accurate. As well as crypt16() |
|
691 # there is a function called bigcrypt() that some operating systems have. This |
|
692 # may or may not use the same algorithm, and both of them may be different to |
|
693 # Exim's built-in crypt16() that is used unless HAVE_CRYPT16 is defined. |
|
694 # |
|
695 # However, since there is now a move away from the traditional crypt() |
|
696 # functions towards using SHA1 and other algorithms, tidying up this area of |
|
697 # Exim is seen as very low priority. In practice, if you need to, you can |
|
698 # define DEFAULT_CRYPT to the name of any function that has the same interface |
|
699 # as the traditional crypt() function. |
|
700 # *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** |
|
701 |
|
702 |
|
703 #------------------------------------------------------------------------------ |
|
704 # Exim can be built to support the SMTP STARTTLS command, which implements |
|
705 # Transport Layer Security using SSL (Secure Sockets Layer). To do this, you |
|
706 # must install the OpenSSL library package or the GnuTLS library. Exim contains |
|
707 # no cryptographic code of its own. Uncomment the following lines if you want |
|
708 # to build Exim with TLS support. If you don't know what this is all about, |
|
709 # leave these settings commented out. |
|
710 |
|
711 # This setting is required for any TLS support (either OpenSSL or GnuTLS) |
|
712 SUPPORT_TLS=yes |
|
713 |
|
714 # Uncomment one of these settings if you are using OpenSSL; pkg-config vs not |
|
715 USE_OPENSSL_PC=openssl |
|
716 #TLS_LIBS=-lssl -lcrypto |
|
717 |
|
718 # Uncomment the first and either the second or the third of these if you |
|
719 # are using GnuTLS. If you have pkg-config, then the second, else the third. |
|
720 #USE_GNUTLS=yes |
|
721 # USE_GNUTLS_PC=gnutls |
|
722 #TLS_LIBS=-lgnutls -ltasn1 -lgcrypt |
|
723 |
|
724 # If you are running Exim as a server, note that just building it with TLS |
|
725 # support is not all you need to do. You also need to set up a suitable |
|
726 # certificate, and tell Exim about it by means of the tls_certificate |
|
727 # and tls_privatekey run time options. You also need to set tls_advertise_hosts |
|
728 # to specify the hosts to which Exim advertises TLS support. On the other hand, |
|
729 # if you are running Exim only as a client, building it with TLS support |
|
730 # is all you need to do. |
|
731 |
|
732 # If you are using pkg-config then you should not need to worry where the |
|
733 # libraries and headers are installed, as the pkg-config .pc specification |
|
734 # should include all -L/-I information necessary. If not using pkg-config |
|
735 # then you might need to specify the locations too. |
|
736 |
|
737 # Additional libraries and include files are required for both OpenSSL and |
|
738 # GnuTLS. The TLS_LIBS settings above assume that the libraries are installed |
|
739 # with all your other libraries. If they are in a special directory, you may |
|
740 # need something like |
|
741 |
|
742 # TLS_LIBS=-L/usr/local/openssl/lib -lssl -lcrypto |
|
743 # or |
|
744 # TLS_LIBS=-L/opt/gnu/lib -lgnutls -ltasn1 -lgcrypt |
|
745 |
|
746 # TLS_LIBS is included only on the command for linking Exim itself, not on any |
|
747 # auxiliary programs. If the include files are not in a standard place, you can |
|
748 # set TLS_INCLUDE to specify where they are, for example: |
|
749 |
|
750 # TLS_INCLUDE=-I/usr/local/openssl/include/ |
|
751 # or |
|
752 # TLS_INCLUDE=-I/opt/gnu/include |
|
753 |
|
754 # You don't need to set TLS_INCLUDE if the relevant directories are already |
|
755 # specified in INCLUDE. |
|
756 |
|
757 |
|
758 #------------------------------------------------------------------------------ |
|
759 # The default distribution of Exim contains only the plain text form of the |
|
760 # documentation. Other forms are available separately. If you want to install |
|
761 # the documentation in "info" format, first fetch the Texinfo documentation |
|
762 # sources from the ftp directory and unpack them, which should create files |
|
763 # with the extension "texinfo" in the doc directory. You may find that the |
|
764 # version number of the texinfo files is different to your Exim version number, |
|
765 # because the main documentation isn't updated as often as the code. For |
|
766 # example, if you have Exim version 4.43, the source tarball upacks into a |
|
767 # directory called exim-4.43, but the texinfo tarball unpacks into exim-4.40. |
|
768 # In this case, move the contents of exim-4.40/doc into exim-4.43/doc after you |
|
769 # have unpacked them. Then set INFO_DIRECTORY to the location of your info |
|
770 # directory. This varies from system to system, but is often /usr/share/info. |
|
771 # Once you have done this, "make install" will build the info files and |
|
772 # install them in the directory you have defined. |
|
773 |
|
774 # INFO_DIRECTORY=/usr/share/info |
|
775 |
|
776 |
|
777 #------------------------------------------------------------------------------ |
|
778 # Exim log directory and files: Exim creates several log files inside a |
|
779 # single log directory. You can define the directory and the form of the |
|
780 # log file name here. If you do not set anything, Exim creates a directory |
|
781 # called "log" inside its spool directory (see SPOOL_DIRECTORY above) and uses |
|
782 # the filenames "mainlog", "paniclog", and "rejectlog". If you want to change |
|
783 # this, you can set LOG_FILE_PATH to a path name containing one occurrence of |
|
784 # %s. This will be replaced by one of the strings "main", "panic", or "reject" |
|
785 # to form the final file names. Some installations may want something like this: |
|
786 |
|
787 # LOG_FILE_PATH=/var/log/exim_%slog |
|
788 |
|
789 # which results in files with names /var/log/exim_mainlog, etc. The directory |
|
790 # in which the log files are placed must exist; Exim does not try to create |
|
791 # it for itself. It is also your responsibility to ensure that Exim is capable |
|
792 # of writing files using this path name. The Exim user (see EXIM_USER above) |
|
793 # must be able to create and update files in the directory you have specified. |
|
794 |
|
795 # You can also configure Exim to use syslog, instead of or as well as log |
|
796 # files, by settings such as these |
|
797 |
|
798 # LOG_FILE_PATH=syslog |
|
799 # LOG_FILE_PATH=syslog:/var/log/exim_%slog |
|
800 |
|
801 # The first of these uses only syslog; the second uses syslog and also writes |
|
802 # to log files. Do not include white space in such a setting as it messes up |
|
803 # the building process. |
|
804 |
|
805 |
|
806 #------------------------------------------------------------------------------ |
|
807 # When logging to syslog, the following option caters for syslog replacements |
|
808 # that are able to accept log entries longer than the 1024 characters allowed |
|
809 # by RFC 3164. It is up to you to make sure your syslog daemon can handle this. |
|
810 # Non-printable characters are usually unacceptable regardless, so log entries |
|
811 # are still split on newline characters. |
|
812 |
|
813 # SYSLOG_LONG_LINES=yes |
|
814 |
|
815 # If you are not interested in the process identifier (pid) of the Exim that is |
|
816 # making the call to syslog, then comment out the following line. |
|
817 |
|
818 SYSLOG_LOG_PID=yes |
|
819 |
|
820 |
|
821 #------------------------------------------------------------------------------ |
|
822 # Cycling log files: this variable specifies the maximum number of old |
|
823 # log files that are kept by the exicyclog log-cycling script. You don't have |
|
824 # to use exicyclog. If your operating system has other ways of cycling log |
|
825 # files, you can use them instead. The exicyclog script isn't run by default; |
|
826 # you have to set up a cron job for it if you want it. |
|
827 |
|
828 EXICYCLOG_MAX=10 |
|
829 |
|
830 |
|
831 #------------------------------------------------------------------------------ |
|
832 # The compress command is used by the exicyclog script to compress old log |
|
833 # files. Both the name of the command and the suffix that it adds to files |
|
834 # need to be defined here. See also the EXICYCLOG_MAX configuration. |
|
835 |
|
836 COMPRESS_COMMAND=/usr/bin/gzip |
|
837 COMPRESS_SUFFIX=gz |
|
838 |
|
839 |
|
840 #------------------------------------------------------------------------------ |
|
841 # If the exigrep utility is fed compressed log files, it tries to uncompress |
|
842 # them using this command. |
|
843 |
|
844 ZCAT_COMMAND=/usr/bin/zcat |
|
845 |
|
846 |
|
847 #------------------------------------------------------------------------------ |
|
848 # Compiling in support for embedded Perl: If you want to be able to |
|
849 # use Perl code in Exim's string manipulation language and you have Perl |
|
850 # (version 5.004 or later) installed, set EXIM_PERL to perl.o. Using embedded |
|
851 # Perl costs quite a lot of resources. Only do this if you really need it. |
|
852 |
|
853 EXIM_PERL=perl.o |
|
854 |
|
855 |
|
856 #------------------------------------------------------------------------------ |
|
857 # Support for dynamically-loaded string expansion functions via ${dlfunc. If |
|
858 # you are using gcc the dynamically-loaded object must be compiled with the |
|
859 # -shared option, and you will need to add -export-dynamic to EXTRALIBS so |
|
860 # that the local_scan API is made available by the linker. You may also need |
|
861 # to add -ldl to EXTRALIBS so that dlopen() is available to Exim. |
|
862 |
|
863 EXPAND_DLFUNC=yes |
|
864 |
|
865 #jgh |
|
866 EXTRALIBS= -export-dynamic |
|
867 |
|
868 #------------------------------------------------------------------------------ |
|
869 # Exim has support for PAM (Pluggable Authentication Modules), a facility |
|
870 # which is available in the latest releases of Solaris and in some GNU/Linux |
|
871 # distributions (see http://ftp.kernel.org/pub/linux/libs/pam/). The Exim |
|
872 # support, which is intended for use in conjunction with the SMTP AUTH |
|
873 # facilities, is included only when requested by the following setting: |
|
874 |
|
875 # SUPPORT_PAM=yes |
|
876 |
|
877 # You probably need to add -lpam to EXTRALIBS, and in some releases of |
|
878 # GNU/Linux -ldl is also needed. |
|
879 |
|
880 |
|
881 #------------------------------------------------------------------------------ |
|
882 # Support for authentication via Radius is also available. The Exim support, |
|
883 # which is intended for use in conjunction with the SMTP AUTH facilities, |
|
884 # is included only when requested by setting the following parameter to the |
|
885 # location of your Radius configuration file: |
|
886 |
|
887 # RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf |
|
888 # RADIUS_CONFIG_FILE=/etc/radius.conf |
|
889 |
|
890 # If you have set RADIUS_CONFIG_FILE, you should also set one of these to |
|
891 # indicate which RADIUS library is used: |
|
892 |
|
893 # RADIUS_LIB_TYPE=RADIUSCLIENT |
|
894 # RADIUS_LIB_TYPE=RADIUSCLIENTNEW |
|
895 # RADIUS_LIB_TYPE=RADLIB |
|
896 |
|
897 # RADIUSCLIENT is the radiusclient library; you probably need to add |
|
898 # -lradiusclient to EXTRALIBS. |
|
899 # |
|
900 # The API for the radiusclient library was changed at release 0.4.0. |
|
901 # Unfortunately, the header file does not define a version number that clients |
|
902 # can use to support both the old and new APIs. If you are using version 0.4.0 |
|
903 # or later of the radiusclient library, you should use RADIUSCLIENTNEW. |
|
904 # |
|
905 # RADLIB is the Radius library that comes with FreeBSD (the header file is |
|
906 # called radlib.h); you probably need to add -lradius to EXTRALIBS. |
|
907 # |
|
908 # If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library, |
|
909 # using the original API. |
|
910 |
|
911 |
|
912 #------------------------------------------------------------------------------ |
|
913 # Support for authentication via the Cyrus SASL pwcheck daemon is available. |
|
914 # Note, however, that pwcheck is now deprecated in favour of saslauthd (see |
|
915 # next item). The Exim support for pwcheck, which is intented for use in |
|
916 # conjunction with the SMTP AUTH facilities, is included only when requested by |
|
917 # setting the following parameter to the location of the pwcheck daemon's |
|
918 # socket. |
|
919 # |
|
920 # There is no need to install all of SASL on your system. You just need to run |
|
921 # ./configure --with-pwcheck, cd to the pwcheck directory within the sources, |
|
922 # make and make install. You must create the socket directory (default |
|
923 # /var/pwcheck) and chown it to exim's user and group. Once you have installed |
|
924 # pwcheck, you should arrange for it to be started by root at boot time. |
|
925 |
|
926 # CYRUS_PWCHECK_SOCKET=/var/pwcheck/pwcheck |
|
927 |
|
928 |
|
929 #------------------------------------------------------------------------------ |
|
930 # Support for authentication via the Cyrus SASL saslauthd daemon is available. |
|
931 # The Exim support, which is intented for use in conjunction with the SMTP AUTH |
|
932 # facilities, is included only when requested by setting the following |
|
933 # parameter to the location of the saslauthd daemon's socket. |
|
934 # |
|
935 # There is no need to install all of SASL on your system. You just need to run |
|
936 # ./configure --with-saslauthd (and any other options you need, for example, to |
|
937 # select or deselect authentication mechanisms), cd to the saslauthd directory |
|
938 # within the sources, make and make install. You must create the socket |
|
939 # directory (default /var/state/saslauthd) and chown it to exim's user and |
|
940 # group. Once you have installed saslauthd, you should arrange for it to be |
|
941 # started by root at boot time. |
|
942 |
|
943 # CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux |
|
944 |
|
945 |
|
946 #------------------------------------------------------------------------------ |
|
947 # TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment |
|
948 # this setting. See the manual section entitled "Use of tcpwrappers" in the |
|
949 # chapter on building and installing Exim. |
|
950 # |
|
951 # USE_TCP_WRAPPERS=yes |
|
952 # |
|
953 # You may well also have to specify a local "include" file and an additional |
|
954 # library for TCP wrappers, so you probably need something like this: |
|
955 # |
|
956 # USE_TCP_WRAPPERS=yes |
|
957 # CFLAGS=-O -I/usr/local/include |
|
958 # EXTRALIBS_EXIM=-L/usr/local/lib -lwrap |
|
959 # |
|
960 # but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM |
|
961 # as well. |
|
962 # |
|
963 # To use a name other than exim in the tcpwrappers config file, |
|
964 # e.g. if you're running multiple daemons with different access lists, |
|
965 # or multiple MTAs with the same access list, define |
|
966 # TCP_WRAPPERS_DAEMON_NAME accordingly |
|
967 # |
|
968 # TCP_WRAPPERS_DAEMON_NAME="exim" |
|
969 |
|
970 |
|
971 #------------------------------------------------------------------------------ |
|
972 # The default action of the exim_install script (which is run by "make |
|
973 # install") is to install the Exim binary with a unique name such as |
|
974 # exim-4.43-1, and then set up a symbolic link called "exim" to reference it, |
|
975 # moving the symbolic link from any previous version. If you define NO_SYMLINK |
|
976 # (the value doesn't matter), the symbolic link is not created or moved. You |
|
977 # will then have to "turn Exim on" by setting up the link manually. |
|
978 |
|
979 # NO_SYMLINK=yes |
|
980 |
|
981 |
|
982 #------------------------------------------------------------------------------ |
|
983 # Another default action of the install script is to install a default runtime |
|
984 # configuration file if one does not exist. This configuration has a router for |
|
985 # expanding system aliases. The default assumes that these aliases are kept |
|
986 # in the traditional file called /etc/aliases. If such a file does not exist, |
|
987 # the installation script creates one that contains just comments (no actual |
|
988 # aliases). The following setting can be changed to specify a different |
|
989 # location for the system alias file. |
|
990 |
|
991 SYSTEM_ALIASES_FILE=/etc/aliases |
|
992 |
|
993 |
|
994 #------------------------------------------------------------------------------ |
|
995 # There are some testing options (-be, -bt, -bv) that read data from the |
|
996 # standard input when no arguments are supplied. By default, the input lines |
|
997 # are read using the standard fgets() function. This does not support line |
|
998 # editing during interactive input (though the terminal's "erase" character |
|
999 # works as normal). If your operating system has the readline() function, and |
|
1000 # in addition supports dynamic loading of library functions, you can cause |
|
1001 # Exim to use readline() for the -be testing option (only) by uncommenting the |
|
1002 # following setting. Dynamic loading is used so that the library is loaded only |
|
1003 # when the -be testing option is given; by the time the loading occurs, |
|
1004 # Exim has given up its root privilege and is running as the calling user. This |
|
1005 # is the reason why readline() is NOT supported for -bt and -bv, because Exim |
|
1006 # runs as root or as exim, respectively, for those options. When USE_READLINE |
|
1007 # is "yes", as well as supporting line editing, a history of input lines in the |
|
1008 # current run is maintained. |
|
1009 |
|
1010 # USE_READLINE=yes |
|
1011 |
|
1012 # You may need to add -ldl to EXTRALIBS when you set USE_READLINE=yes. |
|
1013 # Note that this option adds to the size of the Exim binary, because the |
|
1014 # dynamic loading library is not otherwise included. |
|
1015 |
|
1016 |
|
1017 #------------------------------------------------------------------------------ |
|
1018 # Uncomment this setting to include IPv6 support. |
|
1019 |
|
1020 HAVE_IPV6=yes |
|
1021 |
|
1022 ############################################################################### |
|
1023 # THINGS YOU ALMOST NEVER NEED TO MENTION # |
|
1024 ############################################################################### |
|
1025 |
|
1026 # The settings in this section are available for use in special circumstances. |
|
1027 # In the vast majority of installations you need not change anything below. |
|
1028 |
|
1029 |
|
1030 #------------------------------------------------------------------------------ |
|
1031 # The following commands live in different places in some OS. Either the |
|
1032 # ultimate default settings, or the OS-specific files should already point to |
|
1033 # the right place, but they can be overridden here if necessary. These settings |
|
1034 # are used when building various scripts to ensure that the correct paths are |
|
1035 # used when the scripts are run. They are not used in the Makefile itself. Perl |
|
1036 # is not necessary for running Exim unless you set EXIM_PERL (see above) to get |
|
1037 # it embedded, but there are some utilities that are Perl scripts. If you |
|
1038 # haven't got Perl, Exim will still build and run; you just won't be able to |
|
1039 # use those utilities. |
|
1040 |
|
1041 # CHOWN_COMMAND=/usr/bin/chown |
|
1042 # CHGRP_COMMAND=/usr/bin/chgrp |
|
1043 # CHMOD_COMMAND=/usr/bin/chmod |
|
1044 # MV_COMMAND=/bin/mv |
|
1045 # RM_COMMAND=/bin/rm |
|
1046 # TOUCH_COMMAND=/usr/bin/touch |
|
1047 # PERL_COMMAND=/usr/bin/perl |
|
1048 |
|
1049 |
|
1050 #------------------------------------------------------------------------------ |
|
1051 # The following macro can be used to change the command for building a library |
|
1052 # of functions. By default the "ar" command is used, with options "cq". |
|
1053 # Only in rare circumstances should you need to change this. |
|
1054 |
|
1055 # AR=ar cq |
|
1056 |
|
1057 |
|
1058 #------------------------------------------------------------------------------ |
|
1059 # In some operating systems, the value of the TMPDIR environment variable |
|
1060 # controls where temporary files are created. Exim does not make use of |
|
1061 # temporary files, except when delivering to MBX mailboxes. However, if Exim |
|
1062 # calls any external libraries (e.g. DBM libraries), they may use temporary |
|
1063 # files, and thus be influenced by the value of TMPDIR. For this reason, when |
|
1064 # Exim starts, it checks the environment for TMPDIR, and if it finds it is set, |
|
1065 # it replaces the value with what is defined here. Commenting this setting |
|
1066 # suppresses the check altogether. |
|
1067 |
|
1068 TMPDIR="/tmp" |
|
1069 |
|
1070 |
|
1071 #------------------------------------------------------------------------------ |
|
1072 # The following macros can be used to change the default modes that are used |
|
1073 # by the appendfile transport. In most installations the defaults are just |
|
1074 # fine, and in any case, you can change particular instances of the transport |
|
1075 # at run time if you want. |
|
1076 |
|
1077 # APPENDFILE_MODE=0600 |
|
1078 # APPENDFILE_DIRECTORY_MODE=0700 |
|
1079 # APPENDFILE_LOCKFILE_MODE=0600 |
|
1080 |
|
1081 |
|
1082 #------------------------------------------------------------------------------ |
|
1083 # In some installations there may be multiple machines sharing file systems, |
|
1084 # where a different configuration file is required for Exim on the different |
|
1085 # machines. If CONFIGURE_FILE_USE_NODE is defined, then Exim will first look |
|
1086 # for a configuration file whose name is that defined by CONFIGURE_FILE, |
|
1087 # with the node name obtained by uname() tacked on the end, separated by a |
|
1088 # period (for example, /usr/exim/configure.host.in.some.domain). If this file |
|
1089 # does not exist, then the bare configuration file name is tried. |
|
1090 |
|
1091 # CONFIGURE_FILE_USE_NODE=yes |
|
1092 |
|
1093 |
|
1094 #------------------------------------------------------------------------------ |
|
1095 # In some esoteric configurations two different versions of Exim are run, |
|
1096 # with different setuid values, and different configuration files are required |
|
1097 # to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then |
|
1098 # Exim will first look for a configuration file whose name is that defined |
|
1099 # by CONFIGURE_FILE, with the effective uid tacked on the end, separated by |
|
1100 # a period (for eximple, /usr/exim/configure.0). If this file does not exist, |
|
1101 # then the bare configuration file name is tried. In the case when both |
|
1102 # CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files |
|
1103 # are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>. |
|
1104 |
|
1105 # CONFIGURE_FILE_USE_EUID=yes |
|
1106 |
|
1107 |
|
1108 #------------------------------------------------------------------------------ |
|
1109 # The size of the delivery buffers: These specify the sizes (in bytes) of |
|
1110 # the buffers that are used when copying a message from the spool to a |
|
1111 # destination. There is rarely any need to change these values. |
|
1112 |
|
1113 # DELIVER_IN_BUFFER_SIZE=8192 |
|
1114 # DELIVER_OUT_BUFFER_SIZE=8192 |
|
1115 |
|
1116 |
|
1117 #------------------------------------------------------------------------------ |
|
1118 # The mode of the database directory: Exim creates a directory called "db" |
|
1119 # in its spool directory, to hold its databases of hints. This variable |
|
1120 # determines the mode of the created directory. The default value in the |
|
1121 # source is 0750. |
|
1122 |
|
1123 # EXIMDB_DIRECTORY_MODE=0750 |
|
1124 |
|
1125 |
|
1126 #------------------------------------------------------------------------------ |
|
1127 # Database file mode: The mode of files created in the "db" directory defaults |
|
1128 # to 0640 in the source, and can be changed here. |
|
1129 |
|
1130 # EXIMDB_MODE=0640 |
|
1131 |
|
1132 |
|
1133 #------------------------------------------------------------------------------ |
|
1134 # Database lock file mode: The mode of zero-length files created in the "db" |
|
1135 # directory to use for locking purposes defaults to 0640 in the source, and |
|
1136 # can be changed here. |
|
1137 |
|
1138 # EXIMDB_LOCKFILE_MODE=0640 |
|
1139 |
|
1140 |
|
1141 #------------------------------------------------------------------------------ |
|
1142 # This parameter sets the maximum length of the header portion of a message |
|
1143 # that Exim is prepared to process. The default setting is one megabyte. The |
|
1144 # limit exists in order to catch rogue mailers that might connect to your SMTP |
|
1145 # port, start off a header line, and then just pump junk at it for ever. The |
|
1146 # message_size_limit option would also catch this, but it may not be set. |
|
1147 # The value set here is the default; it can be changed at runtime. |
|
1148 |
|
1149 # HEADER_MAXSIZE="(1024*1024)" |
|
1150 |
|
1151 |
|
1152 #------------------------------------------------------------------------------ |
|
1153 # The mode of the input directory: The input directory is where messages are |
|
1154 # kept while awaiting delivery. Exim creates it if necessary, using a mode |
|
1155 # which can be defined here (default 0750). |
|
1156 |
|
1157 # INPUT_DIRECTORY_MODE=0750 |
|
1158 |
|
1159 |
|
1160 #------------------------------------------------------------------------------ |
|
1161 # The mode of Exim's log directory, when it is created by Exim inside the spool |
|
1162 # directory, defaults to 0750 but can be changed here. |
|
1163 |
|
1164 # LOG_DIRECTORY_MODE=0750 |
|
1165 |
|
1166 |
|
1167 #------------------------------------------------------------------------------ |
|
1168 # The log files themselves are created as required, with a mode that defaults |
|
1169 # to 0640, but which can be changed here. |
|
1170 |
|
1171 # LOG_MODE=0640 |
|
1172 |
|
1173 |
|
1174 #------------------------------------------------------------------------------ |
|
1175 # The TESTDB lookup is for performing tests on the handling of lookup results, |
|
1176 # and is not useful for general running. It should be included only when |
|
1177 # debugging the code of Exim. |
|
1178 |
|
1179 LOOKUP_TESTDB=yes |
|
1180 |
|
1181 |
|
1182 #------------------------------------------------------------------------------ |
|
1183 # /bin/sh is used by default as the shell in which to run commands that are |
|
1184 # defined in the makefiles. This can be changed if necessary, by uncommenting |
|
1185 # this line and specifying another shell, but note that a Bourne-compatible |
|
1186 # shell is expected. |
|
1187 |
|
1188 # MAKE_SHELL=/bin/sh |
|
1189 |
|
1190 |
|
1191 #------------------------------------------------------------------------------ |
|
1192 # The maximum number of named lists of each type (address, domain, host, and |
|
1193 # local part) can be increased by changing this value. It should be set to |
|
1194 # a multiple of 16. |
|
1195 |
|
1196 # MAX_NAMED_LIST=16 |
|
1197 |
|
1198 |
|
1199 #------------------------------------------------------------------------------ |
|
1200 # Network interfaces: Unless you set the local_interfaces option in the runtime |
|
1201 # configuration file to restrict Exim to certain interfaces only, it will run |
|
1202 # code to find all the interfaces there are on your host. Unfortunately, |
|
1203 # the call to the OS that does this requires a buffer large enough to hold |
|
1204 # data for all the interfaces - it was designed in the days when a host rarely |
|
1205 # had more than three or four interfaces. Nowadays hosts can have very many |
|
1206 # virtual interfaces running on the same hardware. If you have more than 250 |
|
1207 # virtual interfaces, you will need to uncomment this setting and increase the |
|
1208 # value. |
|
1209 |
|
1210 # MAXINTERFACES=250 |
|
1211 |
|
1212 |
|
1213 #------------------------------------------------------------------------------ |
|
1214 # Per-message logs: While a message is in the process of being delivered, |
|
1215 # comments on its progress are written to a message log, for the benefit of |
|
1216 # human administrators. These logs are held in a directory called "msglog" |
|
1217 # in the spool directory. Its mode defaults to 0750, but can be changed here. |
|
1218 # The message log directory is also used for storing files that are used by |
|
1219 # transports for returning data to a message's sender (see the "return_output" |
|
1220 # option for transports). |
|
1221 |
|
1222 # MSGLOG_DIRECTORY_MODE=0750 |
|
1223 |
|
1224 |
|
1225 #------------------------------------------------------------------------------ |
|
1226 # There are three options which are used when compiling the Perl interface and |
|
1227 # when linking with Perl. The default values for these are placed automatically |
|
1228 # at the head of the Makefile by the script which builds it. However, if you |
|
1229 # want to override them, you can do so here. |
|
1230 |
|
1231 # PERL_CC= |
|
1232 # PERL_CCOPTS= |
|
1233 # PERL_LIBS= |
|
1234 |
|
1235 |
|
1236 #------------------------------------------------------------------------------ |
|
1237 # If you wish to disable valgrind in the binary, define NVALGRIND=1. |
|
1238 # This should not be needed. |
|
1239 |
|
1240 # NVALGRIND=1 |
|
1241 |
|
1242 #------------------------------------------------------------------------------ |
|
1243 # Identifying the daemon: When an Exim daemon starts up, it writes its pid |
|
1244 # (process id) to a file so that it can easily be identified. The path of the |
|
1245 # file can be specified here. Some installations may want something like this: |
|
1246 |
|
1247 # PID_FILE_PATH=/var/lock/exim.pid |
|
1248 |
|
1249 # If PID_FILE_PATH is not defined, Exim writes a file in its spool directory |
|
1250 # using the name "exim-daemon.pid". |
|
1251 |
|
1252 # If you start up a daemon without the -bd option (for example, with just |
|
1253 # the -q15m option), a pid file is not written. Also, if you override the |
|
1254 # configuration file with the -oX option, no pid file is written. In other |
|
1255 # words, the pid file is written only for a "standard" daemon. |
|
1256 |
|
1257 |
|
1258 #------------------------------------------------------------------------------ |
|
1259 # If Exim creates the spool directory, it is given this mode, defaulting in the |
|
1260 # source to 0750. |
|
1261 |
|
1262 # SPOOL_DIRECTORY_MODE=0750 |
|
1263 |
|
1264 |
|
1265 #------------------------------------------------------------------------------ |
|
1266 # The mode of files on the input spool which hold the contents of messages can |
|
1267 # be changed here. The default is 0640 so that information from the spool is |
|
1268 # available to anyone who is a member of the Exim group. |
|
1269 |
|
1270 # SPOOL_MODE=0640 |
|
1271 |
|
1272 |
|
1273 #------------------------------------------------------------------------------ |
|
1274 # Moving frozen messages: If the following is uncommented, Exim is compiled |
|
1275 # with support for automatically moving frozen messages out of the main spool |
|
1276 # directory, a facility that is found useful by some large installations. A |
|
1277 # run time option is required to cause the moving actually to occur. Such |
|
1278 # messages become "invisible" to the normal management tools. |
|
1279 |
|
1280 # SUPPORT_MOVE_FROZEN_MESSAGES=yes |
|
1281 |
|
1282 |
|
1283 #------------------------------------------------------------------------------ |
|
1284 # Expanding match_* second paramters: BE CAREFUL IF ENABLING THIS! |
|
1285 # It has proven too easy in practice for administrators to configure security |
|
1286 # problems into their Exim install, by treating match_domain{}{} and friends |
|
1287 # as a form of string comparison, where the second string comes from untrusted |
|
1288 # data. Because these options take lists, which can include lookup;LOOKUPDATA |
|
1289 # style elements, a foe can then cause Exim to, eg, execute an arbitrary MySQL |
|
1290 # query, dropping tables. |
|
1291 # From Exim 4.77 onwards, the second parameter is not expanded; it can still |
|
1292 # be a list literal, or a macro, or a named list reference. There is also |
|
1293 # the new expansion condition "inlisti" which does expand the second parameter, |
|
1294 # but treats it as a list of strings; also, there's "eqi" which is probably |
|
1295 # what is normally wanted. |
|
1296 # |
|
1297 # If you really need to have the old behaviour, know what you are doing and |
|
1298 # will not complain if your system is compromised as a result of doing so, then |
|
1299 # uncomment this option to get the old behaviour back. |
|
1300 |
|
1301 # EXPAND_LISTMATCH_RHS=yes |
|
1302 |
|
1303 #------------------------------------------------------------------------------ |
|
1304 # Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you |
|
1305 # really, really, really know what you are doing. And even then, think again. |
|
1306 # You should never uncomment this when compiling a binary for distribution. |
|
1307 # Use it only when compiling Exim for your own use. |
|
1308 # |
|
1309 # Uncommenting this line enables the use of a runtime option called |
|
1310 # disable_fsync, which can be used to stop Exim using fsync() to ensure that |
|
1311 # files are written to disc before proceeding. When this is disabled, crashes |
|
1312 # and hardware problems such as power outages can cause data to be lost. This |
|
1313 # feature should only be used in very exceptional circumstances. YOU HAVE BEEN |
|
1314 # WARNED. |
|
1315 |
|
1316 # ENABLE_DISABLE_FSYNC=yes |
|
1317 |
|
1318 # End of EDITME for Exim 4. |
|