ports/57098: [PATCH] port mail/exim: update to version 4.24
Oliver Eikemeier
eikemeier at fillmore-labs.com
Mon Sep 22 16:50:51 UTC 2003
>Number: 57098
>Category: ports
>Synopsis: [PATCH] port mail/exim: update to version 4.24
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Mon Sep 22 09:50:23 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: Oliver Eikemeier
>Release: FreeBSD 4.8-STABLE i386
>Organization:
Fillmore Labs - http://www.fillmore-labs.com
>Environment:
System: FreeBSD nuuk.fillmore-labs.com 4.8-STABLE
>Description:
This patch supersedes PR 57023
Summary:
- update to 4.24
- exim announces its FreeBSD port revision as the build
number in `exim -bV'
- installed additional scripts in ${PREFIX}/share/examples/exim,
helping with the Exim 3 -> Exim 4 transition now that mail/exim-old is gone
- mention the ChangeLog, the transition scripts and the
mail/exim-doc-* ports in POST-INSTALL-NOTES, remove the
reference to the info files
- install manpages even if NOPORTDOCS is defined (fixing NOPORTDOCS build)
- made `make PREFIX=/somthing/other/than/usr/local' really work
- incorporated PR 56117 (WITH_MSQL_VER)
- made OpenLDAP selection more standard (WITH_OPENLDAP, WITH_OPENLDAP_VER),
deprecated all old LDAP options (sorry, but it got too tangly)
- made BerkeleyDB selection option WITH_BDB_VER, deprecated DB_LIB_VERSION
- respect bsd.ports.mk defaults of MySQL 4.0 and OpenLDAP 2.1
- added a message to show the zillions of options sorted in one place
- killed exim-ldap (OpenLDAP 1.2 is ancient)
- no wishlist item again: eqi is part of exim
- mark the exim-* slave ports as conflicting each other
- introduce WITH_DEFAULT_CHARSET
- introduce WITHOUT_ALT_CONFIG_PREFIX:
Per default, we only allow configuration files in
/usr/local/etc/exim/.
This may break some confiurations (and exim -bV -C /dev/null),
but the FreeBSD port has perl enabled by default, and it is
trivial to write a perl script that gives root access when
the mailnull account is compromised.
>How-To-Repeat:
>Fix:
*** THIS IS A TEST VERSION ***
This version is for testing purposes only, it assumes that
exiscan-acl-4.22-12.patch.bz2 is already in /usr/ports/distfiles/exim
To get a release version:
- wait until Tom is back ;-)
http://article.gmane.org/gmane.mail.exim.exiscan.user/1061
- do:
sed -i .bak -e '/^##### BEGIN REMOVE/,/^##### END REMOVE/d' Makefile
rm files/exiscan-acl-4.22-12.patch.patch
make makesum
- delete mail/exim-ldap, update mail/exim-ldap2
--- exim-4.24.patch begins here ---
diff -Nur mail/exim/Makefile.orig mail/exim/Makefile
--- mail/exim/Makefile.orig Wed Sep 10 15:49:08 2003
+++ mail/exim/Makefile Mon Sep 22 18:28:27 2003
@@ -6,8 +6,7 @@
#
PORTNAME= exim
-PORTVERSION= 4.22
-PORTREVISION= 4
+PORTVERSION= 4.24
CATEGORIES= mail
MASTER_SITES= ${MASTER_SITE_EXIM}
MASTER_SITE_SUBDIR= exim4
@@ -16,28 +15,40 @@
.if !defined(WITHOUT_EXISCAN)
PATCH_SITES= http://duncanthrax.net/%SUBDIR%/
PATCH_SITE_SUBDIR= exiscan-acl
-PATCHFILES= exiscan-acl-${EXISCAN_ACL_VERSION}.patch.bz2
+PATCHFILES= exiscan-acl-${EXISCAN_VERSION}.patch.bz2
PATCH_DIST_STRIP= -p1
.endif
MAINTAINER= sheldonh at FreeBSD.org
COMMENT= High performance MTA for Unix systems on the Internet
+.if defined(PKGNAMESUFFIX)
+CONFLICTS+= ${PKGNAMEPREFIX}${PORTNAME}-4*
+.endif
+.for suffix in -ldap2 -mysql -postgesql
+.if !defined(PKGNAMESUFFIX) || ${PKGNAMESUFFIX} != ${suffix}
+CONFLICTS+= ${PKGNAMEPREFIX}${PORTNAME}${suffix}*
+.endif
+.endfor
+
LIB_DEPENDS= iconv.3:${PORTSDIR}/converters/libiconv
USE_BZIP2= yes
USE_PERL5= yes
+USE_REINPLACE= yes
MAN8= exim.8
PORTDOC_FILES= ChangeLog Exim3.upgrade Exim4.upgrade NewStuff \
OptionLists.txt README README.SIEVE dbm.discuss.txt \
filter.txt pcrepattern.txt pcretest.txt spec.txt
+PORT_EXAMPLES= convert4r3 convert4r4 transport-filter.pl
+
DAILY_SCRIPTS= 150.exim-tidydb 460.exim-mail-rejects
-EXISCAN_ACL_VERSION= ${PORTVERSION}-12
+EXISCAN_VERSION= ${PORTVERSION}-12
-PLIST_SUB+= EXIM_VERSION="${PORTVERSION}"
+PLIST_SUB+= EXIM_VERSION="${PORTVERSION}-${PORTREVISION}"
.if defined(NOPORTDOCS)
PKGMESSAGE= ${WRKDIR}/POST-INSTALL-NOTES
@@ -61,8 +72,12 @@
# Define WITH_TCP_WRAPPERS, WITH_MYSQL, and WITH_PGSQL to link against
# libwrap, liblibmysqlclient and libpq respectively. Define
# WITH_SASLAUTHD to enable use of the Cyrus SASL authentication daemon.
+# Define WITH_MYSQL_VER to specify a particular version of MySQL to
+# use. Valid values are currently 323, 40 and 41. Defining WITH_MYSQL_VER
+# implies WITH_MYSQL.
#WITH_TCP_WRAPPERS= yes
#WITH_MYSQL= yes
+#WITH_MYSQL_VER= 40
#WITH_PGSQL= yes
#WITH_SASLAUTHD= yes
@@ -80,18 +95,24 @@
# be necessary.
#WITHOUT_IPV6= yes
-# Define WITH_OPENLDAP1, WITH_OPENLDAP20 or WITH_OPENLDAP21 to link
-# against the respective OpenLDAP library.
+# Define WITH_OPENLDAP or WITH_OPENLDAP_VER to link against libldap.
+# Define WITH_OPENLDAP_VER to specify a particular version of
+# OpenLDAP to use. Valid values are currently 12, 20, 21 and 22.
+# Defining WITH_OPENLDAP_VER implies WITH_OPENLDAP.
# Exim also supports NETSCAPE and SOLARIS7 lookup types, but no
# client libraries exist for these in the ports tree.
-#WITH_OPENLDAP1= yes
-#WITH_OPENLDAP20= yes
-#WITH_OPENLDAP21= yes
+#WITH_OPENLDAP= yes
+#WITH_OPENLDAP_VER= 21
-# DB_LIB_VERSION is the version of the Berkeley DB library to use, and
+# WITH_BDB_VER is the version of the Berkeley DB library to use, and
# may be 1, which corresponds to version 1.85 in the base system, 4 or
# 41 which depends on the databases/db4 or databases/db41 port.
-DB_LIB_VERSION?=1
+WITH_BDB_VER?=1
+
+# When Exim is decoding MIME "words" in header lines it converts any foreign
+# character sets to the one that is set in the headers_charset option.
+# The default setting is defined by this setting:
+WITH_DEFAULT_CHARSET?= ISO-8859-1
# The following options may be defined to turn off support for various
# features that this port enables by default.
@@ -128,6 +149,9 @@
# transport.
#WITHOUT_LMTP= yes
#
+# Allow alternate configuration files not only in ${PREFIX}/etc/exim
+#WITHOUT_ALT_CONFIG_PREFIX= yes
+#
# Include the unsupported patches in ${PATCHDIR}/wishlist-*.patch
#WITH_WISHLIST= yes
@@ -155,6 +179,7 @@
SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%DOCSDIR%%,${DOCSDIR},g' \
+ -e 's,%%EXAMPLESDIR%%,${EXAMPLESDIR},g' \
-e 's,%%RC_SUBR%%,${RC_SUBR},g' \
-e 's,%%RC_DIR%%,${RC_DIR},g' \
-e 's,%%RC_SUFX%%,${RC_SUFX},g'
@@ -173,10 +198,13 @@
WITHOUT_IPV6= yes
.endif
-SEDLIST= -e 's,XX_PREFIX_XX,${PREFIX},'
+SEDLIST= -e 's,XX_PREFIX_XX,${PREFIX},' \
+ -e 's,XX_LOCALBASE_XX,${LOCALBASE},' \
+ -e 's,XX_DEFAULT_CHARSET_XX,${WITH_DEFAULT_CHARSET},'
.if !defined(WITHOUT_TLS)
SEDLIST+= -e 's,^\# SUPPORT_TLS=,SUPPORT_TLS=,'
+USE_OPENSSL= yes
.else
SEDLIST+= -e 's,^TLS_LIBS=,\#TLS_LIBS=,'
.endif
@@ -192,38 +220,24 @@
SEDLIST+= -e 's,XX_TCP_WRAPPERS_LIBS_XX,,'
.endif
-.if defined(WITH_LDAP)
-LDAP_LIB_TYPE?=OPENLDAP1
-.if (${LDAP_LIB_TYPE} == OPENLDAP1) || (${LDAP_LIB_TYPE} == UMICHIGAN)
-WITH_OPENLDAP1= yes
-.elif ${LDAP_LIB_TYPE} == OPENLDAP2
-WITH_OPENLDAP2= yes
-.else
-.error LDAP_LIB_TYPE must be either OPENLDAP1 or OPENLDAP2
-.endif
+.if defined(WITH_LDAP) || defined(LDAP_LIB_TYPE) \
+ || defined(WITH_OPENLDAP1) || defined(WITH_OPENLDAP2) \
+ || defined(WITH_OPENLDAP20) || defined(WITH_OPENLDAP21)
+BROKEN= deprecated LDAP option defined, use WITH_OPENLDAP or WITH_OPENLDAP_VER
.endif
-.if defined(WITH_OPENLDAP1) && ( defined(WITH_OPENLDAP2) || \
- defined(WITH_OPENLDAP20) || defined(WITH_OPENLDAP21) )
-.error please select only one OpenLDAP version
-.elif defined(WITH_OPENLDAP20) && defined(WITH_OPENLDAP21)
-.error OpenLDAP 2.0 and 2.1 are mutually exclusive
+.if defined(WITH_OPENLDAP_VER)
+WITH_OPENLDAP= yes
+WANT_OPENLDAP_VER= ${WITH_OPENLDAP_VER}
.endif
-.if defined(WITH_OPENLDAP21)
-LDAP_LIB_TYPE= OPENLDAP2
-LIB_DEPENDS+= lber.2:${PORTSDIR}/net/openldap21-client
-.elif defined(WITH_OPENLDAP2) || defined(WITH_OPENLDAP20)
-LDAP_LIB_TYPE= OPENLDAP2
-LIB_DEPENDS+= lber.2:${PORTSDIR}/net/openldap20-client
-.elif defined(WITH_OPENLDAP1)
+.if defined(WITH_OPENLDAP)
+USE_OPENLDAP= yes
+.if defined(WANT_OPENLDAP_VER) && ${WANT_OPENLDAP_VER} == 12
LDAP_LIB_TYPE= OPENLDAP1
-LIB_DEPENDS+= lber.1:${PORTSDIR}/net/openldap12
-.elif defined(LDAP_LIB_TYPE)
-.error please choose the OpenLDAP version you want to use
+.else
+LDAP_LIB_TYPE= OPENLDAP2
.endif
-
-.if defined(LDAP_LIB_TYPE)
SEDLIST+= -e 's,XX_LDAP_LIBS_XX,-L${LOCALBASE}/lib -llber -lldap,' \
-e 's,XX_LDAP_INCLUDE_XX,-I${LOCALBASE}/include,' \
-e 's,XX_LDAP_TYPE_XX,${LDAP_LIB_TYPE},' \
@@ -233,26 +247,35 @@
-e 's,^LDAP_LIB_TYPE=,\#LDAP_LIB_TYPE=,'
.endif
-.if (${DB_LIB_VERSION} == 1)
+.if defined(DB_LIB_VERSION)
+BROKEN= deprecated option DB_LIB_VERSION used, use WITH_BDB_VER
+.endif
+
+.if ${WITH_BDB_VER} == 1
DB_LIBS=
DB_INCLUDES=
SEDLIST+= -e 's,^DBMLIB=,\#DBMLIB=,'
-.elif (${DB_LIB_VERSION} == 4)
+.elif (${WITH_BDB_VER} == 4)
DB_LIBS= -L${LOCALBASE}/lib -ldb4
DB_INCLUDES= -I${LOCALBASE}/include/db4
LIB_DEPENDS+= db4.0:${PORTSDIR}/databases/db4
-.elif (${DB_LIB_VERSION} == 41)
+.elif (${WITH_BDB_VER} == 41)
DB_LIBS= -L${LOCALBASE}/lib -ldb41
DB_INCLUDES= -I${LOCALBASE}/include/db41
LIB_DEPENDS+= db41.1:${PORTSDIR}/databases/db41
.else
-.error DB_LIB_VERSION must be either 1, 4 or 41
+BROKEN= WITH_BDB_VER must be either 1, 4 or 41
.endif
SEDLIST+= -e 's,XX_DB_LIBS_XX,${DB_LIBS},' \
-e 's,XX_DB_INCLUDES_XX,${DB_INCLUDES},'
+.if defined(WITH_MYSQL_VER)
+WITH_MYSQL= yes
+WANT_MYSQL_VER= ${WITH_MYSQL_VER}
+.endif
+
.if defined(WITH_MYSQL)
-LIB_DEPENDS+= mysqlclient.10:${PORTSDIR}/databases/mysql323-client
+USE_MYSQL= yes
SEDLIST+= -e 's,XX_MYSQL_LIBS_XX,-L${LOCALBASE}/lib/mysql -lmysqlclient,' \
-e 's,XX_MYSQL_INCLUDE_XX,-I${LOCALBASE}/include/mysql,' \
-e 's,^\# LOOKUP_MYSQL=,LOOKUP_MYSQL=,'
@@ -304,7 +327,7 @@
.endif
.if !defined(WITH_PGSQL) && !defined(WITH_MYSQL) && !defined(LDAP_LIB_TYPE) && \
- ${DB_LIB_VERSION} == 1
+ ${WITH_BDB_VER} == 1
SEDLIST+= -e 's,^LOOKUP_LIBS=,\#LOOKUP_LIBS=,' \
-e 's,^LOOKUP_INCLUDE=,\#LOOKUP_INCLUDE=,'
.endif
@@ -341,7 +364,52 @@
SEDLIST+= -e 's,^\# TRANSPORT_LMTP=,TRANSPORT_LMTP=,'
.endif
+.if defined(WITHOUT_ALT_CONFIG_PREFIX)
+SEDLIST+= -e 's,^\ALT_CONFIG_PREFIX=,# ALT_CONFIG_PREFIX=,'
+.endif
+
pre-everything::
+ @${ECHO} "============================================================="
+ @${ECHO}
+ @${ECHO} "You can build ${PKGNAME} with the following options:"
+ @${ECHO}
+ @${ECHO} "WITH_EXIMON with eximon, the exim monitor (requires XFree86)"
+ @${ECHO} "WITHOUT_EXISCAN without exiscan-acl (email content scanner)"
+ @${ECHO} "WITH_TCP_WRAPPERS with tcp wrappers (hosts_options(5))"
+ @${ECHO}
+ @${ECHO} "WITH_DEFAULT_CHARSET select header conversion target charset (ISO-8859-1)"
+ @${ECHO} "WITH_BDB_VER select BerkeleyDB library version, default 1"
+ @${ECHO} "WITHOUT_PERL without embedded Perl"
+ @${ECHO} "WITHOUT_TLS without TLS/SSL encryption support"
+ @${ECHO} "WITHOUT_IPV6 without IPv6 support"
+ @${ECHO} "WITHOUT_LMTP without LMTP transport"
+ @${ECHO} "WITHOUT_ALT_CONFIG_PREFIX accept config files everywhere (possible security hole)"
+ @${ECHO}
+ @${ECHO} "WITH_OPENLDAP with OpenLDAP lookup"
+ @${ECHO} "WITH_OPENLDAP_VER select OpenLDAP client library version, default 21"
+ @${ECHO} "WITH_MYSQL with MySQL lookup"
+ @${ECHO} "WITH_MYSQL_VER select MySQL client library version, default 40"
+ @${ECHO} "WITH_PGSQL with PostgrSQL lookup"
+ @${ECHO} "POSTGRESQL_PORT select PostgreSQL port, default databases/postgresql7"
+ @${ECHO} "WITHOUT_CDB without cdb lookup"
+ @${ECHO} "WITHOUT_DSEARCH without dsearch lookup"
+ @${ECHO} "WITHOUT_WILDLSEARCH without wildlsearch lookup"
+ @${ECHO} "WITHOUT_NIS without nis lookup"
+ @${ECHO}
+ @${ECHO} "WITH_SASLAUTHD with Cyrus saslauthd authentication"
+ @${ECHO} "WITHOUT_PAM without PAM authentication"
+ @${ECHO} "WITHOUT_AUTH_PLAINTEXT without plaintext authentication"
+ @${ECHO} "WITHOUT_AUTH_CRAM_MD5 without CRAM-MD5 authentication"
+ @${ECHO} "WITHOUT_AUTH_SPA without SPA/NTLM authentication"
+ @${ECHO}
+ @${ECHO} "WITHOUT_MAILDIR without maildir format delivery"
+ @${ECHO} "WITHOUT_MAILSTORE without mailstore format delivery"
+ @${ECHO} "WITHOUT_MBX without mailbox format delivery"
+ @${ECHO}
+ @${ECHO} "WITH_WISHLIST apply extra wishlist patches"
+ @${ECHO}
+ @${ECHO} "============================================================="
+ @${ECHO}
.if empty(.MAKEFLAGS:M-s) && defined(WITH_WISHLIST)
@${ECHO} ''
@${ECHO} 'Included extra patches:'
@@ -351,9 +419,27 @@
.endif
do-configure:
- ${MKDIR} ${WRKSRC}/Local
- ${SED} ${SEDLIST} ${WRKSRC}/src/EDITME > ${WRKSRC}/Local/Makefile
+ @${MKDIR} ${WRKSRC}/Local
+ @${SED} ${SEDLIST} ${WRKSRC}/src/EDITME > ${WRKSRC}/Local/Makefile
+ @${REINPLACE_CMD} -e 's/"(Exim $$version_number)\\n\\t"/"(Exim $$version_number; ${OPSYS} ${OSREL})\\n\\t"/' \
+ ${WRKSRC}/src/globals.c
+ @${REINPLACE_CMD} -e 's/^#include "cnumber\.h"$$/${PORTREVISION}/' ${WRKSRC}/src/version.c
+##### BEGIN REMOVE ME !!! #####
+.if !defined(WITHOUT_EXISCAN)
+pre-patch:
+.if !defined(I_WANT_EXISCAN_4_22)
+ @${ECHO_CMD} "exiscan-acl-4.24 is not ready, define WITHOUT_EXISCAN or I_WANT_EXISCAN_4_22."
+ @${FALSE}
+.endif
+ @${BZCAT} ${_DISTDIR}/exiscan-acl-4.22-12.patch.bz2 \
+ > ${WRKDIR}/exiscan-acl-4.22-12.patch
+ @${PATCH} -d ${WRKDIR} -p0 <${FILESDIR}/exiscan-acl-4.22-12.patch.patch
+ @${PATCH} ${PATCH_DIST_ARGS} <${WRKDIR}/exiscan-acl-4.22-12.patch
+.undef PATCHFILES
+.endif
+
+##### END REMOVE ME !!! #####
post-build:
.for script in exim ${DAILY_SCRIPTS}
@${SED} ${SED_SCRIPT} ${FILESDIR}/${script}.sh > ${WRKDIR}/${script}.sh
@@ -378,17 +464,21 @@
.endfor
@[ -f ${PREFIX}/etc/exim/configure ] || \
${CP} ${PREFIX}/etc/exim/configure.default ${PREFIX}/etc/exim/configure
+.for manfile in ${MAN8}
+ @${INSTALL_MAN} ${WRKSRC}/doc/${manfile} ${MAN8PREFIX}/man/man8
+.endfor
.if !defined(NOPORTDOCS)
- ${MKDIR} ${DOCSDIR}
- ${INSTALL_DATA} ${WRKDIR}/POST-INSTALL-NOTES ${DOCSDIR}
+ @${MKDIR} ${DOCSDIR}
+ @${INSTALL_DATA} ${WRKDIR}/POST-INSTALL-NOTES ${DOCSDIR}
.if !defined(WITHOUT_EXISCAN)
- ${INSTALL_DATA} ${WRKDIR}/POST-INSTALL-NOTES.clamd ${DOCSDIR}
+ @${INSTALL_DATA} ${WRKDIR}/POST-INSTALL-NOTES.clamd ${DOCSDIR}
.endif
.for docfile in ${PORTDOC_FILES}
- ${INSTALL_DATA} ${WRKSRC}/doc/${docfile} ${DOCSDIR}
+ @${INSTALL_DATA} ${WRKSRC}/doc/${docfile} ${DOCSDIR}
.endfor
-.for manfile in ${MAN8}
- ${INSTALL_MAN} ${WRKSRC}/doc/${manfile} ${MAN8PREFIX}/man/man8
+ @${MKDIR} ${EXAMPLESDIR}
+.for example in ${PORT_EXAMPLES}
+ @${INSTALL_SCRIPT} ${WRKSRC}/build-${OPSYS}-${MACHINE_ARCH}/${example} ${EXAMPLESDIR}
.endfor
.endif
@${CAT} ${PKGMESSAGE}
diff -Nur mail/exim/distinfo.orig mail/exim/distinfo
--- mail/exim/distinfo.orig Thu Sep 4 16:56:01 2003
+++ mail/exim/distinfo Mon Sep 22 17:37:11 2003
@@ -1,2 +1,2 @@
-MD5 (exim/exim-4.22.tar.bz2) = 938ae799c08ed1899dd27fd50d48f4e5
+MD5 (exim/exim-4.24.tar.bz2) = 2d6c1a6d150c68330ba489246ac617ce
MD5 (exim/exiscan-acl-4.22-12.patch.bz2) = 02e5e6f92b98b44d4048fc9dee6f2705
diff -Nur mail/exim/files/POST-INSTALL-NOTES.orig mail/exim/files/POST-INSTALL-NOTES
--- mail/exim/files/POST-INSTALL-NOTES.orig Wed Sep 10 15:49:09 2003
+++ mail/exim/files/POST-INSTALL-NOTES Mon Sep 22 17:35:10 2003
@@ -1,16 +1,22 @@
The following documentation has been installed:
- info Exim -> Exim Specification (User Guide)
- info 'Exim Filtering' -> Exim Filter Specification (for end-users)
+ man exim -> Exim options (command line)
+ %%DOCSDIR%%/spec.txt -> Exim Specification (User Guide)
+ %%DOCSDIR%%/filter.txt -> Exim Filter Specification (for end-users)
-In addition, plain text versions of these documents have been installed
-as:
+Postscript, PDF, HTML and texinfo versions of these documents can be
+installed via one of the mail/exim-doc-* ports.
- %%DOCSDIR%%/filter.txt
- %%DOCSDIR%%/spec.txt
+An online version as well as a comprehensive FAQ and a mailing list
+archive is available at:
-Postscript, PDF, HTML and plain text versions of these documents, as well
-as a comprehensive FAQ list, are available at http://www.exim.org/ .
+ http://www.exim.org/
+
+Descriptions of new features not available it the manual, and a listing
+of all changes, including bug fixes are documented in:
+
+ %%DOCSDIR%%/NewStuff
+ %%DOCSDIR%%/ChangeLog
To use Exim instead of sendmail on startup:
@@ -25,8 +31,8 @@
You may also want to configure newsyslog(8) to rotate Exim log files:
-/var/log/exim/mainlog mailnull:mail 640 7 * @T00 Z
-/var/log/exim/rejectlog mailnull:mail 640 7 * @T00 Z
+/var/log/exim/mainlog mailnull:mail 640 7 * @T00 ZN
+/var/log/exim/rejectlog mailnull:mail 640 7 * @T00 ZN
NOTE TO OPERATORS UPGRADING FROM exim-3.xx:
@@ -39,3 +45,6 @@
%%DOCSDIR%%/Exim4.upgrade, and allow some time to complete
the upgrade.
+Additional scripts to help upgrading are installed in:
+
+ %%EXAMPLESDIR%%
diff -Nur mail/exim/files/exiscan-acl-4.22-12.patch.patch.orig mail/exim/files/exiscan-acl-4.22-12.patch.patch
--- mail/exim/files/exiscan-acl-4.22-12.patch.patch.orig Thu Jan 1 01:00:00 1970
+++ mail/exim/files/exiscan-acl-4.22-12.patch.patch Mon Sep 22 17:38:28 2003
@@ -0,0 +1,68 @@
+--- exiscan-acl-4.22-12.patch.orig Fri Sep 19 20:13:21 2003
++++ exiscan-acl-4.22-12.patch Fri Sep 19 20:13:48 2003
+@@ -2903,7 +2903,7 @@
+ int expand_forbid = 0;
+ int expand_nlength[EXPAND_MAXN+1];
+ int expand_nmax = -1;
+-@@ -442,12 +447,14 @@
++@@ -442,13 +447,15 @@
+ BOOL extract_addresses_remove_arguments = TRUE;
+ uschar *extra_local_interfaces = NULL;
+
+@@ -2914,6 +2914,7 @@
+ uschar *filter_test = NULL;
+ uschar *filter_thisaddress = NULL;
+ int finduser_retries = 0;
++ uid_t fixed_never_users[] = { FIXED_NEVER_USERS };
+ +uschar *found_extension = NULL;
+ uschar *freeze_tell = NULL;
+
+@@ -2975,7 +2976,7 @@
+ extern int expand_forbid; /* RDO flags for forbidding things */
+ extern int expand_nlength[]; /* Lengths of numbered strings */
+ extern int expand_nmax; /* Max numerical value */
+-@@ -249,12 +254,14 @@
++@@ -249,13 +254,15 @@
+ extern BOOL extract_addresses_remove_arguments; /* Controls -t behaviour */
+ extern uschar *extra_local_interfaces; /* Local, non-listen interfaces */
+
+@@ -2986,6 +2987,7 @@
+ extern uschar *filter_test; /* Run as a filter tester on this file */
+ extern uschar *filter_thisaddress; /* For address looping */
+ extern int finduser_retries; /* Retry count for getpwnam() */
++ extern uid_t fixed_never_users[]; /* Can't be overridden */
+ +extern uschar *found_extension; /* demime acl condition: file extension found */
+ extern uschar *freeze_tell; /* Message on (some) freezings */
+
+@@ -4676,14 +4678,14 @@
+ received_protocol = NULL;
+ recipients_list = NULL;
+ @@ -347,6 +349,8 @@
+- local_error_message = TRUE;
+- else if (Ustrncmp(big_buffer, "-local_scan ", 12) == 0)
+- local_scan_data = string_copy(big_buffer + 12);
+-+ else if (Ustrncmp(big_buffer, "-spam_score_int ", 16) == 0)
+-+ spam_score_int = string_copy(big_buffer + 16);
+- else if (Ustrcmp(big_buffer, "-host_lookup_failed") == 0)
+- host_lookup_failed = TRUE;
+- else if (Ustrncmp(big_buffer, "-body_linecount", 15) == 0)
++ local_error_message = TRUE;
++ else if (Ustrncmp(big_buffer, "-local_scan ", 12) == 0)
++ local_scan_data = string_copy(big_buffer + 12);
+++ else if (Ustrncmp(big_buffer, "-spam_score_int ", 16) == 0)
+++ spam_score_int = string_copy(big_buffer + 16);
++ else if (Ustrcmp(big_buffer, "-host_lookup_failed") == 0)
++ host_lookup_failed = TRUE;
++ else if (Ustrncmp(big_buffer, "-body_linecount", 15) == 0)
+ diff -urN exim-4.22-orig/src/spool_mbox.c exim-4.22/src/spool_mbox.c
+ --- exim-4.22-orig/src/spool_mbox.c Thu Jan 1 01:00:00 1970
+ +++ exim-4.22/src/spool_mbox.c Thu Aug 28 10:21:09 2003
+@@ -7468,7 +7470,7 @@
+ @@ -11,7 +11,7 @@
+
+
+- #define THIS_VERSION "4.22"
++ #define THIS_VERSION "4.24"
+ -
+ +#define EXISCAN_VERSION "12"
+
diff -Nur mail/exim/files/patch-src::EDITME.orig mail/exim/files/patch-src::EDITME
--- mail/exim/files/patch-src::EDITME.orig Mon Aug 18 19:19:58 2003
+++ mail/exim/files/patch-src::EDITME Mon Sep 22 17:35:10 2003
@@ -1,5 +1,5 @@
---- src/EDITME.orig Mon Aug 18 14:52:52 2003
-+++ src/EDITME Mon Aug 18 17:34:17 2003
+--- src/EDITME.orig Mon Sep 15 12:47:55 2003
++++ src/EDITME Sat Sep 20 17:08:19 2003
@@ -98,7 +98,7 @@
# /usr/local/sbin. The installation script will try to create this directory,
# and any superior directories, if they do not exist.
@@ -35,7 +35,7 @@
# Many sites define a user called "exim", with an appropriate default group,
# and use
-@@ -265,6 +265,7 @@
+@@ -267,6 +267,7 @@
# LDAP_LIB_TYPE=OPENLDAP2
# LDAP_LIB_TYPE=NETSCAPE
# LDAP_LIB_TYPE=SOLARIS
@@ -43,20 +43,20 @@
# If you don't set any of these, Exim assumes the original University of
# Michigan (OpenLDAP 1) library.
-@@ -277,8 +278,10 @@
- # don't need to set LOOKUP_INCLUDE if the relevant directories are already
- # specified in INCLUDE.
+@@ -280,8 +281,10 @@
+ # specified in INCLUDE. The settings below are just examples; -lpq is for
+ # PostgreSQL, -lgds is for Interbase.
-# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include
--# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq
-+INCLUDE=-IXX_PREFIX_XX/include XX_DB_INCLUDES_XX
+-# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds
++INCLUDE=-IXX_LOCALBASE_XX/include XX_DB_INCLUDES_XX
+LOOKUP_INCLUDE=XX_MYSQL_INCLUDE_XX XX_PGSQL_INCLUDE_XX XX_LDAP_INCLUDE_XX
+LOOKUP_LIBS=XX_MYSQL_LIBS_XX XX_PGSQL_LIBS_XX XX_LDAP_LIBS_XX
+DBMLIB=XX_DB_LIBS_XX
-
#------------------------------------------------------------------------------
-@@ -289,7 +292,7 @@
+ # Compiling the Exim monitor: If you want to compile the Exim monitor, a
+@@ -291,7 +294,7 @@
# files are defaulted in the OS/Makefile-Default file, but can be overridden in
# local OS-specific make files.
@@ -65,7 +65,24 @@
-@@ -393,7 +396,7 @@
+@@ -332,6 +335,7 @@
+
+ # ALT_CONFIG_PREFIX=/some/directory/
+ # ALT_CONFIG_PREFIX=/some/directory/exim.conf-
++ALT_CONFIG_PREFIX=XX_PREFIX_XX/etc/exim/
+
+
+ #------------------------------------------------------------------------------
+@@ -376,7 +380,7 @@
+ # one that is set in the headers_charset option. The default setting is
+ # defined by this setting:
+
+-HEADERS_CHARSET="ISO-8859-1"
++HEADERS_CHARSET="XX_DEFAULT_CHARSET_XX"
+
+ # If you are going to make use of $header_xxx expansions in your configuration
+ # file, or if your users are going to use them in filter files, and the normal
+@@ -448,7 +452,7 @@
# SUPPORT_TLS=yes
# Uncomment this setting if you are using OpenSSL
@@ -74,7 +91,7 @@
# Uncomment these settings if you are using GnuTLS
# USE_GNUTLS=yes
-@@ -444,7 +447,7 @@
+@@ -499,7 +503,7 @@
# Once you have done this, "make install" will build the info files and
# install them in the directory you have defined.
@@ -83,7 +100,7 @@
#------------------------------------------------------------------------------
-@@ -457,7 +460,7 @@
+@@ -512,7 +516,7 @@
# %s. This will be replaced by one of the strings "main", "panic", or "reject"
# to form the final file names. Some installations may want something like this:
@@ -92,7 +109,7 @@
# which results in files with names /var/log/exim_mainlog, etc. The directory
# in which the log files are placed must exist; Exim does not try to create
-@@ -594,12 +597,20 @@
+@@ -649,12 +653,20 @@
#
# USE_TCP_WRAPPERS=yes
# CFLAGS=-O -I/usr/local/include
@@ -115,7 +132,7 @@
#------------------------------------------------------------------------------
# The default action of the exim_install script (which is run by "make
# install") is to install the Exim binary with a unique name such as
-@@ -841,7 +852,7 @@
+@@ -896,7 +908,7 @@
# (process id) to a file so that it can easily be identified. The path of the
# file can be specified here. Some installations may want something like this:
diff -Nur mail/exim/files/patch-src::auths::pwcheck.c.orig mail/exim/files/patch-src::auths::pwcheck.c
--- mail/exim/files/patch-src::auths::pwcheck.c.orig Wed Sep 10 16:48:00 2003
+++ mail/exim/files/patch-src::auths::pwcheck.c Thu Jan 1 01:00:00 1970
@@ -1,12 +0,0 @@
---- src/auths/pwcheck.c.orig Wed Sep 10 16:33:51 2003
-+++ src/auths/pwcheck.c Wed Sep 10 16:34:53 2003
-@@ -210,7 +210,8 @@
- CYRUS_SASLAUTHD_SOCKET, strerror(errno));
- if (reply)
- *reply = string_sprintf("cannot connect to saslauthd daemon at "
-- "%s: %s", strerror(errno));
-+ "%s: %s", CYRUS_SASLAUTHD_SOCKET,
-+ strerror(errno));
- return PWCHECK_FAIL;
- }
-
diff -Nur mail/exim/files/wishlist-eqi.patch.orig mail/exim/files/wishlist-eqi.patch
--- mail/exim/files/wishlist-eqi.patch.orig Sat Aug 30 20:02:39 2003
+++ mail/exim/files/wishlist-eqi.patch Thu Jan 1 01:00:00 1970
@@ -1,90 +0,0 @@
-Return-Path: eikemeier at fillmore-labs.com
-Delivery-Date: Thu, 28 Aug 2003 12:55:40 +0200
-Envelope-to: sheldonh at axl.seasidesoftware.co.za
-Received: from mail1.gambling.com ([207.139.179.10])
- by axl.seasidesoftware.co.za with esmtp (Exim 4.22)
- id 19sKQl-000MZl-Qw
- for sheldonh at axl.seasidesoftware.co.za; Thu, 28 Aug 2003 12:55:08 +0200
-Received: from mx2.freebsd.org ([216.136.204.119])
- by mail1.gambling.com with esmtp (Exim 4.21)
- id 19sKQe-0000zp-LM
- for sheldonh at starjuice.net; Thu, 28 Aug 2003 06:55:00 -0400
-Received: from hub.freebsd.org (hub.freebsd.org [216.136.204.18])
- by mx2.freebsd.org (Postfix) with ESMTP id DC32F55487
- for <sheldonh at starjuice.net>; Thu, 28 Aug 2003 03:54:54 -0700 (PDT)
- (envelope-from eikemeier at fillmore-labs.com)
-Received: by hub.freebsd.org (Postfix)
- id DBC0016A4C1; Thu, 28 Aug 2003 03:54:54 -0700 (PDT)
-Delivered-To: sheldonh at freebsd.org
-Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
- by hub.freebsd.org (Postfix) with ESMTP id D8C6F16A4C0
- for <sheldonh at FreeBSD.org>; Thu, 28 Aug 2003 03:54:54 -0700 (PDT)
-Received: from mx2.fillmore-labs.com (lima.fillmore-labs.com [62.138.193.83])
- by mx1.FreeBSD.org (Postfix) with ESMTP id CA9D243FDF
- for <sheldonh at FreeBSD.org>; Thu, 28 Aug 2003 03:54:53 -0700 (PDT)
- (envelope-from eikemeier at fillmore-labs.com)
-Received: from p5080b7aa.dip.t-dialin.net
- ([80.128.183.170] helo=fillmore-labs.com ident=epdlpdx7p1uekapy)
- by mx2.fillmore-labs.com with asmtp (TLSv1:AES256-SHA:256)
- (Exim 4.22)
- id 19sKQR-000IqS-IX; Thu, 28 Aug 2003 12:54:47 +0200
-Message-ID: <3F4DDF6D.80409 at fillmore-labs.com>
-Date: Thu, 28 Aug 2003 12:54:37 +0200
-From: Oliver Eikemeier <eikemeier at fillmore-labs.com>
-Reply-To: exim-users at exim.org
-MIME-Version: 1.0
-To: exim-users at exim.org
-Cc: Philip Hazel <ph10 at cus.cam.ac.uk>,
- Sheldon Hearn <sheldonh at FreeBSD.org>
-Subject: Patch for Exim 4 wish list #181 (trivial): Caseless "eq" expansion
- condition
-Content-Type: text/plain; charset=us-ascii; format=flowed
-Content-Transfer-Encoding: 7bit
-X-Authenticated-Sender: eikemeier at fillmore-labs.com
-User-Agent: KMail/1.5.9
-Organization: Fillmore Labs GmbH <http://www.fillmore-labs.com/>
-X-Complaints-To: abuse at fillmore-labs.com
-X-Spam-Score: 1.1 (+)
-X-Spam-Score: 0.5 (/)
-
-The following patch gives you a 'eqi' operator,
-which is like 'eq', only case-insensitive (ASCII only):
-
---- wishlist-eqi.patch begins here ---
-#
-# (Exim 4 wish list #181) Caseless "eq" expansion condition
-# - eqi = caseless eq
-#
---- src/expand.c.orig Mon Aug 18 14:52:54 2003
-+++ src/expand.c Wed Aug 27 14:52:54 2003
-@@ -1482,6 +1482,7 @@
-
-
- /* eq: tests for string equality
-+eqi: caseless test for string equality
- match: does a regular expression match and sets up the numerical
- variables if it succeeds
- crypteq: encrypts plaintext and compares against an encrypted text, using
-@@ -1491,6 +1492,7 @@
-
-
- else if (Ustrcmp(name, "eq") == 0 ||
-+ Ustrcmp(name, "eqi") == 0 ||
- Ustrcmp(name, "match") == 0 ||
- Ustrcmp(name, "crypteq") == 0 ||
- !isalpha(name[0]))
-@@ -1565,7 +1567,7 @@
- break;
-
- case 'e': /* Straight text comparison */
-- *yield = (Ustrcmp(sub[0], sub[1]) == 0) == testfor;
-+ *yield = (((name[2] == 'i')? strcmpic(sub[0], sub[1]) : Ustrcmp(sub[0], sub[1])) == 0) == testfor;
- break;
-
- case 'm': /* Regular expression match */
---- wishlist-eqi.patch ends here ---
-
-Regrads
- Oliver
-
-
diff -Nur mail/exim/pkg-plist.orig mail/exim/pkg-plist
--- mail/exim/pkg-plist.orig Wed Sep 10 15:49:08 2003
+++ mail/exim/pkg-plist Mon Sep 22 17:35:10 2003
@@ -1,7 +1,7 @@
@comment $FreeBSD: ports/mail/exim/pkg-plist,v 1.32 2003/09/10 13:49:08 sheldonh Exp $
@unexec [ ! -f /var/run/exim.pid ] || %%RC_DIR%%/exim%%RC_SUFX%% stop || true
sbin/exim
-sbin/exim-%%EXIM_VERSION%%-1
+sbin/exim-%%EXIM_VERSION%%
sbin/exim_checkaccess
sbin/exim_dumpdb
sbin/exim_fixdb
@@ -32,6 +32,10 @@
%%PORTDOCS%%%%DOCSDIR%%/pcretest.txt
%%PORTDOCS%%%%DOCSDIR%%/spec.txt
%%PORTDOCS%%@dirrm %%DOCSDIR%%
+%%PORTDOCS%%%%EXAMPLESDIR%%/convert4r3
+%%PORTDOCS%%%%EXAMPLESDIR%%/convert4r4
+%%PORTDOCS%%%%EXAMPLESDIR%%/transport-filter.pl
+%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%
etc/periodic/daily/150.exim-tidydb
etc/periodic/daily/460.exim-mail-rejects
@unexec rmdir %D/etc/periodic/daily 2>/dev/null || true
--- exim-4.24.patch ends here ---
--- exim-ldap2-4.23.patch begins here ---
diff -Nur mail/exim-ldap2/Makefile.orig mail/exim-ldap2/Makefile
--- mail/exim-ldap2/Makefile.orig Tue Jul 3 13:21:50 2001
+++ mail/exim-ldap2/Makefile Sat Sep 20 17:50:43 2003
@@ -8,7 +8,6 @@
PKGNAMESUFFIX= -ldap2
MASTERDIR= ${.CURDIR}/../exim
-WITH_LDAP= yes
-LDAP_LIB_TYPE= OPENLDAP2
+WITH_OPENLDAP= yes
.include "${MASTERDIR}/Makefile"
--- exim-ldap2-4.23.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list