network/exim: Updated for version 4.77.

Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
This commit is contained in:
Thomas Morper 2011-10-26 14:27:43 -05:00 committed by Niels Horn
parent c5973fc872
commit 5a5401073d
5 changed files with 73 additions and 29 deletions

View file

@ -6,15 +6,19 @@ Exim was orginally written by Philip Hazel for use in the University
of Cambridge Computing Services e-mail systems.
Before you can build Exim, you have to create an "exim" user and group:
# groupadd -g 222 exim
# useradd -d /var/spool/exim -g exim -s /bin/false -u 222 exim
# groupadd -g 222 exim
# useradd -d /var/spool/exim -g exim -s /bin/false -u 222 exim
The recommended uid/gid is 222, but others are fine if you prefer -
see http://slackbuilds.org/uid_gid.txt for other recommendations.
There's no "configure" script; instead Exim is configured by editing a well
documented Makefile, which is then included during the build process. The
provided "exim.Makefile" will build an all-purpose Exim daemon with almost
all of the features that will work on a standard Slackware system.
provided "exim.Makefile" will build an all-purpose Exim daemon with the
most common features. The various database lookup methods will not be
built by default but can be enabled easily by uncommenting a few lines in
the Makefile.
Exim can be integrated with other email tools such as Clamav, Spamassassin,
Bogofilter, and others available at Slackbuilds.org.

View file

@ -7,6 +7,6 @@ SPOOL=/var/spool/exim
test -d $SPOOL -a -x /usr/sbin/exim_tidydb || exit
# Tidy up the contents of the hints databases
find $SPOOL/db -name '*.lockfile' -exec basename {} .lockfile \; \
| xargs -r -n 1 sudo -u exim /usr/sbin/exim_tidydb -t 7d $SPOOL \
> /dev/null
find $SPOOL/db -type f \! -name '*.lockfile' -printf '%f\0' \
| xargs -0 -I {} -n 1 -r su exim -s /bin/sh -c \
"/usr/sbin/exim_tidydb -t 7d $SPOOL {} > /dev/null"

View file

@ -1,5 +1,3 @@
# $Cambridge: exim/src/src/EDITME,v 1.27 2010/06/12 15:21:25 jetmore Exp $
##################################################
# The Exim mail transport agent #
##################################################
@ -286,17 +284,17 @@ LOOKUP_DBM=yes
LOOKUP_LSEARCH=yes
LOOKUP_DNSDB=yes
# LOOKUP_CDB=yes
LOOKUP_CDB=yes
LOOKUP_DSEARCH=yes
# LOOKUP_IBASE=yes
LOOKUP_LDAP=yes
LOOKUP_MYSQL=yes
# LOOKUP_MYSQL=yes
# LOOKUP_NIS=yes
# LOOKUP_NISPLUS=yes
# LOOKUP_ORACLE=yes
LOOKUP_PASSWD=yes
# LOOKUP_PGSQL=yes
LOOKUP_SQLITE=yes
# LOOKUP_SQLITE=yes
# LOOKUP_WHOSON=yes
# These two settings are obsolete; all three lookups are compiled when
@ -345,8 +343,21 @@ PCRE_LIBS=-lpcre
# specified in INCLUDE. The settings below are just examples; -lpq is for
# PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite.
LOOKUP_INCLUDE=-I/usr/include/mysql
LOOKUP_LIBS=-L/usr/lib$(LIBDIRSUFFIX)/mysql -lldap -lmysqlclient -lsqlite3
LOOKUP_INCLUDE=
LOOKUP_LIBS=-lldap
# Uncomment for MySQL lookups.
#LOOKUP_MYSQL=yes
#LOOKUP_INCLUDE+=-I/usr/include/mysql
#LOOKUP_LIBS+=-L/usr/lib$(LIBDIRSUFFIX)/mysql -lmysqlclient_r
# Uncomment for PostgreSQL lookups.
#LOOKUP_PGSQL=yes
#LOOKUP_LIBS+=-lpq
# Uncomment for SQLite lookups.
#LOOKUP_SQLITE=yes
#LOOKUP_LIBS+=-lsqlite3
#------------------------------------------------------------------------------
@ -357,7 +368,7 @@ LOOKUP_LIBS=-L/usr/lib$(LIBDIRSUFFIX)/mysql -lldap -lmysqlclient -lsqlite3
# files are defaulted in the OS/Makefile-Default file, but can be overridden in
# local OS-specific make files.
EXIM_MONITOR=eximon.bin
# EXIM_MONITOR=eximon.bin
#------------------------------------------------------------------------------
@ -528,7 +539,7 @@ FIXED_NEVER_USERS=root
#
# As a strictly transient measure to ease migration to 4.73, the
# WHITELIST_D_MACROS value definies a colon-separated list of macro-names
# which are permitted to be overriden from the command-line which will be
# which are permitted to be overridden from the command-line which will be
# honoured by the Exim user. So these are macros that can persist to delivery
# time.
# Examples might be -DTLS or -DSPOOL=/some/dir. The values on the
@ -821,13 +832,13 @@ EXTRALIBS += -ldl
# is included only when requested by setting the following parameter to the
# location of your Radius configuration file:
RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf
# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf
# RADIUS_CONFIG_FILE=/etc/radius.conf
# If you have set RADIUS_CONFIG_FILE, you should also set one of these to
# indicate which RADIUS library is used:
RADIUS_LIB_TYPE=RADIUSCLIENT
# RADIUS_LIB_TYPE=RADIUSCLIENT
# RADIUS_LIB_TYPE=RADIUSCLIENTNEW
# RADIUS_LIB_TYPE=RADLIB
@ -845,8 +856,6 @@ RADIUS_LIB_TYPE=RADIUSCLIENT
# If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library,
# using the original API.
EXTRALIBS += -lradiusclient
#------------------------------------------------------------------------------
# Support for authentication via the Cyrus SASL pwcheck daemon is available.
@ -1209,6 +1218,26 @@ PID_FILE_PATH=/var/run/exim.pid
# SUPPORT_MOVE_FROZEN_MESSAGES=yes
#------------------------------------------------------------------------------
# Expanding match_* second paramters: BE CAREFUL IF ENABLING THIS!
# It has proven too easy in practice for administrators to configure security
# problems into their Exim install, by treating match_domain{}{} and friends
# as a form of string comparison, where the second string comes from untrusted
# data. Because these options take lists, which can include lookup;LOOKUPDATA
# style elements, a foe can then cause Exim to, eg, execute an arbitrary MySQL
# query, dropping tables.
# From Exim 4.77 onwards, the second parameter is not expanded; it can still
# be a list literal, or a macro, or a named list reference. There is also
# the new expansion condition "inlisti" which does expand the second parameter,
# but treats it as a list of strings; also, there's "eqi" which is probably
# what is normally wanted.
#
# If you really need to have the old behaviour, know what you are doing and
# will not complain if your system is compromised as a result of doing so, then
# uncomment this option to get the old behaviour back.
# EXPAND_LISTMATCH_RHS=yes
#------------------------------------------------------------------------------
# Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you
# really, really, really know what you are doing. And even then, think again.

View file

@ -8,14 +8,16 @@
# Thanks to Debian for the manpages.
PRGNAM=exim
VERSION=${VERSION:-4.76}
VERSION=${VERSION:-4.77}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
esac
fi
@ -59,20 +61,29 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
# Copy the Makefile and a stock config for eximon
cat $CWD/exim.Makefile > Local/Makefile
cat exim_monitor/EDITME > Local/eximon.conf
make \
CFLAGS="$SLKCFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" \
LIBDIRSUFFIX=$LIBDIRSUFFIX
make install DESTDIR=$PKG
# Use the Exim build system to set the architecture-specific CFLAGS.
# This requires "make" to run twice, in case you wonder. If you want
# to use your own CFLAGS in exim.Makefile, you should put a '#' in
# front of the next 4 lines.
echo "CFLAGS=$SLKCFLAGS" > Local/Makefile-Linux
echo "CFLAGS+=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" > Local/Makefile-Linux-i386
FULLECHO="" LIBDIRSUFFIX=$LIBDIRSUFFIX DESTDIR=$PKG make -e || true
FULLECHO="" LIBDIRSUFFIX=$LIBDIRSUFFIX DESTDIR=$PKG make -e makefile
# build & install
FULLECHO="" LIBDIRSUFFIX=$LIBDIRSUFFIX DESTDIR=$PKG make -e
FULLECHO="" LIBDIRSUFFIX=$LIBDIRSUFFIX DESTDIR=$PKG make -e install
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
# Ditch the symlink and move the binary to its final destination.
rm -f $PKG/usr/sbin/exim
mv $PKG/usr/sbin/exim-$VERSION-1 $PKG/usr/sbin/exim
mv $PKG/usr/sbin/exim-$VERSION-? $PKG/usr/sbin/exim
# Additional symlinks provide compatibility with sendmail
mkdir -p $PKG/usr/lib # no LIBDIRSUFFIX here!

View file

@ -1,8 +1,8 @@
PRGNAM="exim"
VERSION="4.76"
VERSION="4.77"
HOMEPAGE="http://www.exim.org/"
DOWNLOAD="ftp://ftp.exim.org/pub/exim/exim4/exim-4.76.tar.bz2"
MD5SUM="58e784b33c7a2ab335ec6400346d6362"
DOWNLOAD="ftp://ftp.exim.org/pub/exim/exim4/exim-4.77.tar.bz2"
MD5SUM="5d746275f2cc85845567f9d5eb84a57a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Thomas Morper"