Bug 139: portability fixes and documentation.
[exim.git] / src / src / EDITME
index d093eb6907f635d5883a89557e0ef146a810b3ac..74c507d3a22ea5db7949f18feebab70830a65f2d 100644 (file)
@@ -248,6 +248,15 @@ TRANSPORT_SMTP=yes
 # SUPPORT_MBX=yes
 
 
+#------------------------------------------------------------------------------
+# See below for dynamic lookup modules.
+# LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/
+
+# To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for
+# your platform.  Eg:
+# CFLAGS_DYNAMIC=-shared -rdynamic
+# CFLAGS_DYNAMIC=-shared -rdynamic -fPIC
+
 #------------------------------------------------------------------------------
 # These settings determine which file and database lookup methods are included
 # in the binary. See the manual chapter entitled "File and database lookups"
@@ -256,6 +265,18 @@ TRANSPORT_SMTP=yes
 # LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is
 # for the specialist case of using the DNS as a general database facility (not
 # common).
+# If set to "2" instead of "yes" then the corresponding lookup will be
+# built as a module and must be installed into LOOKUP_MODULE_DIR. You need to
+# add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to
+# EXTRALIBS so that dlopen() is available to Exim. You need to define
+# LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup
+# modules.
+# Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and
+# LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS
+# (where * is the name as given here in this list). That ensures that only
+# the dynamic library and not the exim binary will be linked against the
+# library.
+# NOTE: LDAP cannot be built as a module!
 
 LOOKUP_DBM=yes
 LOOKUP_LSEARCH=yes
@@ -476,13 +497,13 @@ FIXED_NEVER_USERS=root
 # When a user other than root uses the -C option to override the configuration
 # file (including the Exim user when re-executing Exim to regain root
 # privileges for local message delivery), this will normally cause Exim to
-# drop root privileges. The TRUSTED_CONFIG_PREFIX_LIST option, specifies
-# a file which contains a list of trusted configuration prefixes (like the
-# ALT_CONFIG_PREFIX above), one per line. If the -C option is used to specify
-# a configuration file which matches a trusted prefix, root privileges are not
-# dropped by Exim.
+# drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which
+# contains a list of trusted configuration filenames, one per line. If the -C
+# option is used by the Exim user or by the user specified in the
+# CONFIGURE_OWNER setting, to specify a configuration file which is listed in
+# the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim.
 
-# TRUSTED_CONFIG_PREFIX_LIST=/usr/exim/trusted_configs
+# TRUSTED_CONFIG_LIST=/usr/exim/trusted_configs
 
 
 #------------------------------------------------------------------------------
@@ -498,7 +519,7 @@ FIXED_NEVER_USERS=root
 # to override values with -D and assumes that these will be passed through to
 # the delivery processes.  As of Exim 4.73, this is no longer the case by
 # default.  Going forward, we strongly recommend that you use a shim Exim
-# configuration file owned by root stored under TRUSTED_CONFIG_PREFIX_LIST.
+# configuration file owned by root stored under TRUSTED_CONFIG_LIST.
 # That shim can set macros before .include'ing your main configuration file.
 #
 # As a strictly transient measure to ease migration to 4.73, the