Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37045664
en ru br
Репозитории ALT
S:4.96-alt1
5.1: 4.76-alt0.M50P.1
4.1: 4.69-alt1.M41.3
4.0: 4.67-alt1
3.0: 4.51-alt1
www.altlinux.org/Changes

Группа :: Сети/Почта
Пакет: exim

 Главная   Изменения   Спек   Патчи   Исходники   Загрузить   Gear   Bugs and FR  Repocop 

%!PS-Adobe-2.0
%%Creator: SGtoPS 2.8 (21-Jul-1997)
%%CreationDate: 24 November 2000 11:11:23
%%DocumentFonts: Times-Roman Times-Italic Times-Bold Times-BoldItalic Courier
%%+ Symbol
%%Pages: (atend)
%%Requirements: numcopies(1)
statusdict/waittimeout 200 put
/A3paper where
{pop statusdict begin
/a3 where{pop a3}if
/a3tray where{pop a3tray}if
userdict/a4{}put
end}
{/A3paper false def}ifelse
/dotumble where
{pop statusdict begin /settumble where{pop true settumble}if end}if
/SGencoding StandardEncoding length array def
SGencoding dup dup dup dup dup
0 StandardEncoding putinterval
0 [/Aacute/Acircumflex/Adieresis/Agrave/Aring/Atilde/Ccedilla/Eacute
/Ecircumflex /Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave/Ntilde
/Oacute/Ocircumflex/Odieresis/Ograve/Otilde/Scaron/Uacute/Ucircumflex
/Udieresis/Ugrave /Ydieresis/Zcaron/Yacute/Eth/Thorn/trademark]putinterval
128 [/aacute/acircumflex/adieresis/agrave/aring/atilde/ccedilla/eacute
/ecircumflex/edieresis/egrave/iacute/icircumflex/idieresis/igrave/ntilde
/oacute/ocircumflex/odieresis/ograve/otilde/scaron/uacute/ucircumflex
/udieresis/ugrave/ydieresis/zcaron/yacute/eth/thorn/copyright]putinterval
209 [/onequarter/onehalf/threequarters/brokenbar/onesuperior/twosuperior
/threesuperior/logicalnot/plusminus/minus/divide/multiply/degree/mu
/registered]putinterval
228 [/Theta/TeXtext32/Upsilon/Xi/Lslash/Oslash/OE/ordmasculine
/Delta/Lambda/Omega/Phi]putinterval
242 [/ff/ffl/ffi/dotlessi/dotlessj/Psi/lslash/oslash/oe/germandbls/Sigma
/Gamma/Pi] putinterval
/in{72 mul}def
A3paper
{/pw 11.7 in def /pl 16.6 in def}
{/pw 8.3 in def /pl 11.7 in def} ifelse
/lmr 1 in def
/lmv 1 in def
/tm 1 in def
/baselmr lmr def
/baselmv lmv def
/basetm tm def
/ulw 0.3 def
/u 2 def
/font 254 array def
/sp( )0 get def
/ppend false def
/Sg/setgray load def
/Slw/setlinewidth load def
/a4 where {pop}{/a4{}def}ifelse
/A4t{90 rotate 1 eq{0}{pl 2 div}ifelse pw neg translate/pl pw/pw pl 2
div def def}def
A3paper
{/A5t{dup 1 and 1 eq{0}{pw 2 div}ifelse exch 3 lt{pl 2 div}{0}ifelse
translate/pl pl 2 div def/pw pw 2 div def}def}
{/A5t{90 rotate 1 eq{0}{pl 2 div}ifelse pw neg translate/pl pw/pw pl 2
div def def}def}
ifelse
/A6t{dup 1 and 1 eq{0}{pw 2 div}ifelse exch 3 lt{pl 2 div}{0}ifelse
translate/pl pl 2 div def/pw pw 2 div def}def
/B{3{currentpoint exch pop add 6 1 roll currentpoint pop add 6 1 roll
}repeat curveto currentpoint stroke moveto}bind def
/bft{dup dup findfont 3 1 roll FontDirectory exch known {pop}
{(**** Font ")print 100 string cvs print (" is not loaded ****\r\n)
print stop}ifelse dup dup/Encoding get StandardEncoding eq
{maxlength dict/newfont exch def
{1 index/FID eq{pop pop}{newfont 3 1 roll put}ifelse}forall
newfont/Encoding SGencoding put dup newfont definefont}
{dup /FontName known {/FontName get}{pop (unknown)}ifelse dup (ZapfDingbats) eq
{pop 0 [/a205/a206/a85/a86/a87/a88/a89/a90/a91/a92/a93/a94/a95/a96]true}
{(Symbol) eq { 240 [/apple] true}{false} ifelse}ifelse
{3 -1 roll dup /Encoding get dup length array /newencoding exch def
newencoding 0 3 -1 roll putinterval 3 1 roll newencoding 3 1 roll putinterval
dup maxlength dict /newfont exch def
{1 index/FID eq {pop pop} {newfont 3 1 roll put}ifelse}forall
newfont/Encoding newencoding put dup newfont definefont}if
}ifelse
exch scalefont font 3 1 roll put}bind def
/cr{currentpoint exch pop lm exch moveto}bind def
/f{font exch get setfont/sw( )stringwidth pop def}bind def
/inv{pw pl translate 180 rotate}bind def
/ls{90 rotate 0 pw neg translate/pl pw/pw pl def def}bind def
/nl{currentpoint nld sub exch pop lm exch moveto}bind def
/pscale{dup dup scale 1 exch div dup/pl exch pl mul def/pw exch pw mul def}
bind def
/ptop{dup /lm exch def pl tm sub moveto ulw setlinewidth 0 setlinecap}bind def
/r{neg rmoveto}bind def
/R{currentpoint transform round exch round exch itransform moveto
rlineto currentpoint stroke moveto}bind def
/s/show load def
/su{currentpoint 3 -1 roll show uline}bind def
/sd{0 setdash}bind def
/snl{/nld exch def}bind def
/uline{currentpoint gsave newpath u sub moveto u sub lineto stroke grestore}def
/w{sw sub 0 sp 4 -1 roll widthshow}bind def
/wu{currentpoint 4 2 roll w uline}bind def
/X{lm add currentpoint exch pop moveto}bind def
/x{0 rmoveto}bind def
/xpage{showpage/ppend false def}bind def
/y{neg 0 exch rmoveto}bind def
a4
0 11 /Times-Roman bft
1 11 /Times-Italic bft
3 11 /Times-Bold bft
4 11 /Times-BoldItalic bft
6 11 /Courier bft
7 11 /Symbol bft
8 8 /Times-Roman bft
20 15 /Times-Roman bft

%%EndProlog

%%Page: 1 1
/ppend true def /pagesave save def lmr ptop
20 f 187.755 x 0 Sg(Exim Overview)4.68 w 0 f cr 48.72 y
(Date: 9 November 2000)3.432 w cr 18.24 y(Exim is a mail)3.672 w 3.432 x
(transfer agent \(MT)3.672 w -0.88 x(A\) developed)3.432 w( at the Universit)
3.672 w (y)3.672 w 3.432 x(of Cambridge for)3.672 w 3.432 x(use on Unix)
3.672 w( systems)3.432 w 12.24 snl nl(connected to the)4.152 w 3.912 x
(Internet. It is freely)4.152 w 3.912 x(available under the terms)4.152 w
3.912 x(of the GNU General)4.152 w 3.912 x(Public Licence. In)4.152 w
12 snl nl(overall style)5.832 w 5.592 x(it is)5.832 w 5.592 x(similar to)
5.832 w 5.592 x(Smail 3,)5.832 w 5.592 x(but its)5.832 w 5.592 x
(facilities are)5.832 w 5.592 x(more extensive.)5.832 w 5.592 x(It contains)
5.832 w 5.592 x(facilities for)5.832 w 12.24 snl nl(verifying incoming)
4.152 w 4.392 x(sender and)4.152 w 4.392 x(recipient addresses, for)
4.152 w 4.392 x(refusing mail)4.152 w 4.392 x(from speci\256ed hosts,)
4.152 w 4.392 x(networks, or)4.152 w cr 12.24 y
(senders, and for controlling mail relaying.)3.432 w cr 18.24 y(Exim is)
3.672 w 3.912 x(in production)3.672 w 3.912 x(use at)3.672 w 3.912 x(quite a)
3.672 w 3.912 x(few sites, some)3.672 w 3.912 x(of which)3.672 w 3.912 x
(move hundreds)3.672 w 3.912 x(of thousands)3.672 w 3.912 x(of messages)
3.432 w 12 snl nl(per day)3.672 w -0.715 x(. This document contains an)
3.672 w 3.432 x(overview description of the way)3.672 w 3.432 x
(Exim works, with a certain)3.672 w( amount)3.432 w 12.24 snl nl
(of omission and)3.912 w 3.672 x(simpli\256cation to keep it fairly)
3.912 w 3.672 x(short. Please address any enquiries about)3.912 w 3.672 x
(Exim to Philip)3.912 w cr 12.24 y(Hazel:)s cr 18.24 y
(Email: <ph10@cus.cam.ac.uk>)16.983 w 12 snl nl(Phone: +44)15.762 w
( 1223 334714)3.432 w 12.24 snl nl(Fax: +44)26.762 w( 1223 334679)3.432 w cr
18.24 y(University of Cambridge)3.432 w nl(Computing Service)3.432 w cr
12.24 y(New Museums Site)3.432 w cr 12 y(Pembroke Street)3.432 w nl
(Cambridge CB2 3QG)3.432 w cr 12.24 y(United Kingdom)3.432 w cr 18.24 y
(This document is copyright )3.432 w 7 f(\323 )3.432 w 0 f
(University of Cambridge 2000, but copying permission is granted to all.)
3.432 w 12 snl nl 0.4 Slw 471.6 0 R 4 f cr 43.685 48.72 r
(If I have seen further it is by standing on the shoulders of giants.)
3.432 w 0 f 13.2 x(\(Isaac Newton\))3.432 w 3 f cr 36.48 y(1. Backgr)
3.432 w -0.198 x(ound)s 0 f cr 15.36 y(Exim owes a)4.872 w 4.632 x
(great deal to Smail 3 and)4.872 w 4.632 x(its author)4.872 w -0.44 x
(, Ron Karr)4.872 w -0.605 x(. W)4.872 w -0.44 x(ithout the)4.632 w
( experience of running and)4.872 w 12.24 snl nl(working on)5.352 w 5.112 x
(the Smail)5.352 w( 3 code,)5.112 w 5.352 x(I could)5.112 w 5.352 x
(never have contemplated)5.112 w 5.352 x(starting to)5.112 w 5.352 x
(write a new)5.112 w( mailer)5.352 w -0.605 x(. The)5.112 w nl(general style)
4.152 w 3.912 x(of operation and)4.152 w 3.912 x(con\256guration are taken)
4.152 w 3.912 x(from Smail 3,)4.152 w 3.912 x(though the actual)4.152 w
3.912 x(code of Exim)4.152 w( is)3.912 w 12 snl nl(entirely new)3.432 w
-0.715 x(.)s cr 18.24 y(My intention was)4.872 w 4.632 x
(to write a mailer that)4.872 w 4.632 x(had more functionality than Smail 3,)
4.872 w 4.632 x(but which retained the)4.872 w 12.24 snl nl
(simple lightweight approach, as this seemed to me to be all that was needed)
5.832 w ( for)5.832 w 5.592 x(systems directly)5.832 w nl
(connected to the Internet, where)4.392 w 4.152 x
(most messages are delivered almost immediately)4.392 w -0.715 x
(. On the central)4.392 w( mail)4.152 w 12 snl nl
(machines at Cambridge University)3.432 w -0.715 x
(, `most' means around 98%.)3.432 w cr 18.24 y(Since the \256rst)4.152 w
4.392 x(versions of Exim went)4.152 w 4.392 x(into service at the end)
4.152 w 4.392 x(of 1995, it has)4.152 w 4.392 x(continued to develop, and)
4.152 w 12.24 snl nl
(now has far more facilities than my original conception.)3.432 w 3 f cr
30.48 y(2. A)3.432 w -0.814 x(vailability)s 0 f cr 15.36 y
(The current distribution)5.112 w 4.872 x(of Exim is)5.112 w 4.872 x
(available via the)5.112 w 4.872 x(Exim page at)5.112 w 3 f( http://www)
4.872 w -0.605 x(.exim.org)s 0 f(. The distri-)5.112 w 12 snl nl
(bution contains)4.632 w 4.872 x(an )4.632 w 8 f(ASCII )4.872 w 0 f(copy of)
4.632 w 4.872 x(the documentation; other)4.632 w 4.872 x(formats \(HTML,)
4.632 w( PDF)4.872 w -0.88 x(, PostScript,)4.632 w( T)4.872 w -0.77 x
(exinfo\))s 12.24 snl nl
(can be downloaded from the web site. The HTML version is also available onl)
3.432 w (ine.)3.432 w cr 18.24 y(The following)5.112 w 4.872 x
(operating systems)5.112 w 4.872 x(are currently supported:)5.112 w 4.872 x
(AIX, BSDI,)5.112 w 4.872 x(DGUX, FreeBSD, GNU/Hurd,)5.112 w nl
(GNU/Linux, HI-OSF)4.632 w( \(Hitachi\), HP-UX,)4.392 w 4.632 x
(IRIX, MIPS RISCOS, NetBSD,)4.392 w 4.632 x(OpenBSD, QNX, SCO, SCO)4.392 w nl
(SVR4.2 \(aka UNIX-SV\),)5.592 w 5.352 x(Solaris \(aka SunOS5\), SunOS4, T)
5.592 w -0.385 x(ru64-Unix \(aka)5.352 w( DEC OSF1, aka Digital)5.592 w cr
12 y(UNIX\) Ultrix, and Unixware.)3.432 w cr 222.25 24.24 r(1)s
pagesave restore xpage

%%Page: 2 2
/ppend true def /pagesave save def lmv ptop
3 f 0 Sg(3. Limitations)3.432 w 0 f cr 15.36 y(For the)3.912 w 3.672 x
(bene\256t of those reading)3.912 w 3.672 x(this overview to)3.912 w
3.672 x(see whether Exim is)3.912 w 3.672 x(of interest to)3.912 w 3.672 x
(them, its limitations)3.912 w cr 12.24 y(are listed \256rst.)3.432 w cr
6.6 18.24 r(\267 Exim)13.55 w( is written in ANSI C. This should not)
3.912 w 4.152 x(be much of a limitation these days. However)3.912 w -0.44 x
(, to help)3.912 w 12 snl nl 24 x
(with systems that lack a true ANSI C library)3.432 w -0.715 x
(, Exim avoids making any use of the value returned by)3.432 w 12.24 snl nl
24 x(the )6.312 w 1 f(sprintf\(\) )6.312 w 0 f(function, which is one)
6.312 w 6.552 x(of the main incompatibilities. It has its own version of)
6.312 w 1 f nl( str)24 w -0.407 x(err)s -0.407 x(or\(\) )4.152 w 0 f
(for use with)4.152 w 3.912 x(SunOS4 and any)4.152 w 3.912 x
(other system that)4.152 w 3.912 x(lacks this function,)4.152 w 3.912 x
(and a macro)4.152 w 3.912 x(can be)4.152 w 12 snl nl 24 x(de\256ned to turn)
3.432 w ( )3.432 w 1 f(memmove\(\) )3.432 w 0 f(into )3.432 w 1 f(bcopy\(\) )
3.432 w 0 f(if necessary)3.432 w -0.715 x(.)s cr 6.6 18.24 r(\267 Exim)
13.55 w 3.672 x(is intended)3.432 w 3.672 x(for use)3.432 w 3.672 x(as an)
3.432 w 3.672 x(Internet mailer)3.432 w -0.44 x(, and)3.672 w 3.432 x
(therefore handles)3.672 w 3.432 x(addresses in)3.672 w( RFC 822 domain)
3.432 w 12.24 snl nl 24 x(format only)6.072 w -0.715 x(. It)5.832 w 6.072 x
(cannot handle)5.832 w 6.072 x(`bang paths',)5.832 w 6.072 x(though simple)
5.832 w 6.072 x(two-component bang)5.832 w 6.072 x(paths can)5.832 w( be)
6.072 w nl 24 x(converted by)5.352 w 5.112 x(a straightforward)5.352 w
( rewriting con\256guration.)5.112 w 5.352 x(This does not)5.112 w 5.352 x
(prevent Exim from)5.112 w( being)5.352 w nl 24 x(interfaced to UUCP)
3.432 w -1.221 x(, provided domain addresses are used.)3.432 w cr 6.6
18.24 r(\267 Exim)13.55 w
( insists that every address it handles has a domain attached. For incoming )
4.872 w (local messages,)4.872 w 12 snl nl 24 x(domainless addresses)
5.112 w 5.352 x(are automatically quali\256ed)5.112 w 5.352 x
(with a con\256gured)5.112 w 5.352 x(domain value. Con\256guration)5.112 w
12.24 snl nl 24 x(options specify)4.632 w 4.392 x(from which)4.632 w
( remote systems)4.392 w 4.632 x(unquali\256ed addresses)4.392 w 4.632 x
(are acceptable. They)4.392 w 4.632 x(are quali-)4.392 w cr 24 12.24 r
(\256ed on receipt.)3.432 w cr 6.6 18.24 r(\267 The)13.55 w
( only external transport currently implemented is an SMTP transport over a )
4.632 w (TCP/IP network)4.632 w 12 snl nl 24 x(\(using sockets\),)4.392 w
4.152 x(suitable for)4.392 w 4.152 x(machines on)4.392 w 4.152 x
(the Internet. However)4.392 w -0.44 x(, a)4.152 w 4.392 x(pipe transport)
4.152 w 4.392 x(is available,)4.152 w( and)4.392 w 12.24 snl nl 24 x
(there are facilities for)4.632 w 4.392 x(writing messages to \256les)
4.632 w 4.392 x(in `batched SMTP')4.632 w 4.392 x(format; both of these)
4.632 w 4.392 x(can be)4.632 w nl 24 x
(used to send messages to some other transport mechanism such as UUCP)
3.912 w -1.221 x(. Batched SMTP input is)3.912 w 12 snl nl 24 x
(also catered for)3.432 w -0.605 x(.)s cr 6.6 18.48 r(\267 Exim)13.55 w
3.432 x(is not)3.672 w 3.432 x(designed for)3.672 w( storing mail)3.432 w
3.672 x(for dial-in hosts.)3.432 w 3.672 x(When the)3.432 w 3.672 x
(volumes of such)3.432 w 3.672 x(mail are lar)3.432 w -0.198 x(ge, it)
3.432 w nl 24 x(is better)5.352 w( to get the messages `delivered')5.112 w
5.352 x(into \256les \(that is, of)5.112 w -0.198 x(f Exim')5.112 w -0.605 x
(s queue\))5.112 w 5.352 x(and subsequently)5.112 w 12.24 snl nl 24 x
(passed on to the dial-in hosts by other means.)3.432 w 3 f cr 30.48 y
(4. Main featur)3.432 w -0.198 x(es)s 0 f cr 15.36 y
(Exim follows the same general approach of decentralized control that Smail )
3.912 w (3 does. There is no central)3.912 w 12 snl nl(process doing overall)
4.152 w 3.912 x(management of mail)4.152 w( delivery)3.912 w -0.715 x
(. However)4.152 w -0.44 x(, the)3.912 w( independent delivery)4.152 w
3.912 x(processes share)4.152 w 12.24 snl nl(data in)4.152 w 3.912 x
(the form of `hints',)4.152 w 3.912 x(which makes delivery more)4.152 w( ef)
3.912 w -0.198 x(\256cient in some cases.)4.152 w 3.912 x(The hints are kept)
4.152 w 3.912 x(in a)4.152 w nl(number of)4.392 w
( DBM \256les. If any of these \256les are lost, the only ef)4.152 w
-0.198 x(fect is to change the pattern of delivery)4.152 w cr 12 y
(attempts and retries.)3.432 w cr 18.24 y(Here is a summary of Exim')
3.432 w -0.605 x
(s main features. More details are given in the sections which follow)
3.432 w -0.715 x(.)s cr 6.6 18.24 r(\267 Many)13.55 w
( con\256guration options can be given)4.632 w 4.872 x
(as expansion strings, which are transformed in various)4.632 w nl 24 x
(ways when)5.112 w 4.872 x(they are)5.112 w 4.872 x(used. As)5.112 w
4.872 x(these can)5.112 w 4.872 x(include \256le)5.112 w 4.872 x
(lookups, much)5.112 w 4.872 x(of Exim')5.112 w -0.605 x(s operation)
4.872 w 5.112 x(can be)4.872 w nl 24 x(made table-driven)5.112 w 5.352 x
(if desired.)5.112 w 5.352 x(For example,)5.112 w 5.352 x(it is possible)
5.112 w 5.352 x(to do)5.112 w 5.352 x(local delivery)5.112 w 5.352 x
(on a machine)5.112 w( on)5.352 w 12 snl nl 24 x(which the users do not have)
5.352 w 5.112 x(accounts. The ultimate \257exibility can be)5.352 w 5.112 x
(obtained \(at a price\) by)5.352 w 12.24 snl nl 24 x
(running a Perl interpreter while expanding a string.)3.432 w cr 6.6
18.24 r(\267 Regular)13.55 w 3.672 x(expressions, compatible with Perl)
3.432 w 3.672 x(5, are available in a number of con\256guration parameters.)
3.432 w cr 6.6 18.24 r(\267 Domain)13.55 w
( lists can include \256le lookups, making it possible to support a lar)
5.832 w -0.198 x(ge number of local)5.832 w nl 24 x(domains, for example.)
3.432 w cr 6.6 18.24 r(\267 Exim)13.55 w
( has \257exible retry algorithms, applicable to mail routing as well as to )
3.432 w (delivery)3.432 w -0.715 x(.)s cr 6.6 18.24 r(\267 Exim)13.55 w
( contains header and envelope rewriting facilities.)3.432 w cr 6.6
18.24 r(\267 Unquali\256ed)13.55 w
( addresses are accepted only from speci\256ed hosts or networks.)3.432 w cr
6.6 18.24 r(\267 Exim)13.55 w
( can perform multiple deliveries down the same SMTP channel)3.672 w
3.432 x(after deliveries to a host)3.672 w( have)3.432 w nl 24 x
(been delayed.)3.432 w cr 6.6 18.24 r(\267 Exim)13.55 w 4.152 x
(can be con\256gured)3.912 w 4.152 x(to do local deliveries)3.912 w 4.152 x
(immediately but to leave)3.912 w 4.152 x(remote deliveries until the)
3.912 w nl 24 x(message is)4.392 w 4.632 x(picked up)4.392 w 4.632 x(by a)
4.392 w 4.632 x(queue-runner process.)4.392 w 4.632 x(This increases the)
4.392 w 4.632 x(likelihood of)4.392 w 4.632 x(multiple mess-)4.392 w cr
24 12 r(ages being sent down a single SMTP connection.)3.432 w cr 222.25
24.24 r(2)s
pagesave restore xpage

%%Page: 3 3
/ppend true def /pagesave save def lmr ptop
0 f 6.6 x 0 Sg(\267 When)13.55 w 4.152 x(copies of)3.912 w 4.152 x
(a message have)3.912 w 4.152 x(to be)3.912 w 4.152 x(delivered to more)
3.912 w 4.152 x(than one)3.912 w 4.152 x(remote host, up)3.912 w 4.152 x
(to a)3.912 w( con\256gured)4.152 w 12.48 snl nl 24 x
(maximum number of remote deliveries can be done in parallel.)3.432 w cr
6.6 18.72 r(\267 Exim)13.55 w
( has support for the SMTP AUTH extension for authenticating clients.)
3.432 w cr 6.6 18.48 r(\267 Exim)13.55 w
( has support for encrypted connections using the SMTP ST)3.432 w -0.88 x(AR)
s -0.66 x(TTLS extension.)3.432 w cr 6.6 18.72 r(\267 Exim)13.55 w 4.632 x
(supports optional checking of incoming return path \(sender\) and receiver )
4.392 w (addresses as they)4.392 w nl 24 x(are received by SMTP)3.432 w
-1.221 x(.)s cr 6.6 18.72 r(\267 SMTP)13.55 w 4.632 x
(calls from speci\256c hosts and networks, optionally from speci\256c idents)
4.392 w (, can be locked out,)4.392 w nl 24 x(and incoming)3.912 w 3.672 x
(SMTP messages from)3.912 w 3.672 x(speci\256c senders can)3.912 w 3.672 x
(also be locked)3.912 w 3.672 x(out. Blocked hosts)3.912 w 3.672 x(can be)
3.912 w nl 24 x(identi\256ed explicitly)3.432 w -0.715 x
(, or via RBL lists, or the SMTP AUTH and TLS mechanisms can be used.)
3.432 w cr 6.6 18.48 r(\267 It)13.55 w 3.912 x(is possible)4.152 w 3.912 x
(to control)4.152 w 3.912 x(which hosts)4.152 w 3.912 x(may use)4.152 w
3.912 x(the Exim)4.152 w( host as)3.912 w 4.152 x(a relay)3.912 w 4.152 x
(for onward)3.912 w 4.152 x(transmission of)3.912 w nl 24 x
(mail. Again, the SMTP AUTH and TLS mechanisms can be used in this connectio)
3.432 w (n.)3.432 w cr 6.6 18.72 r(\267 Messages)13.55 w
( on the queue can be `frozen' and `thawed' by the administrator)3.432 w
-0.605 x(.)s cr 6.6 18.72 r(\267 The)13.55 w
( maximum size of messages can be speci\256ed.)3.432 w cr 6.6 18.72 r(\267 E)
13.55 w (xim)13.55 w 4.152 x(can handle)4.392 w( a number of)4.152 w
4.392 x(independent local domains)4.152 w 4.392 x(on the same machine;)
4.152 w 4.392 x(each domain can)4.152 w nl 24 x
(have its own alias \256les, etc. These are commonly called )3.432 w 1 f
(virtual domains)3.432 w 0 f(.)s cr 6.6 18.48 r(\267 Simple)13.55 w 4.872 x
(mailing lists)5.112 w 4.872 x(can be)5.112 w 4.872 x(handled directly)
5.112 w 4.872 x(by Exim)5.112 w 4.872 x(itself \(but)5.112 w 4.872 x
(for `serious')5.112 w 4.872 x(mailing list)5.112 w( oper-)4.872 w nl
24 x
(ations, it is best to use it in conjunction with specialist mailing list so)
3.432 w (ftware\).)3.432 w cr 6.6 18.72 r(\267 Exim)13.55 w 3.432 x(stats a)
3.672 w 3.432 x(user ')0.407 w -0.605 x(s home)3.672 w( directory before)
3.432 w 3.672 x(looking for)3.432 w 3.672 x(a )3.432 w 3 f(.forward )
3.432 w 0 f(\256le, in)3.672 w 3.432 x(order to)3.672 w( detect the)
3.432 w 3.672 x(case of)3.432 w nl 24 x(a missing NFS mount.)3.432 w cr
6.6 18.72 r(\267 Exim)13.55 w
( contains an optional built-in mail \256ltering facility)3.432 w -0.715 x
(. This enables users to set up their own mail)3.432 w 12.24 snl nl 24 x
(\256ltering in)3.672 w 3.432 x(a straightfoward)3.672 w( manner without)
3.432 w 3.672 x(the need to)3.432 w 3.672 x(run an external)3.432 w 3.672 x
(program. There can also be)3.432 w 12.48 snl nl 24 x
(a system \256lter \256le that applies to all messages.)3.432 w cr 6.6
18.72 r(\267 There)13.55 w
( is support for multiple user mailboxes controlled by pre\256xes or suf)
4.392 w -0.198 x(\256xes on)4.392 w 4.152 x(the user name,)4.392 w nl
24 x(either via the \256lter mechanism or through multiple )3.432 w 3 f
(.forward )3.432 w 0 f(\256les.)s cr 6.6 18.72 r(\267 Periodic)13.55 w
3.912 x(warnings are automatically sent to messages' senders when)3.672 w
3.912 x(delivery is delayed \261)3.672 w 4.772 x(the time)3.432 w nl
24 x(between warnings is con\256gurable.)3.432 w cr 6.6 18.48 r(\267 A)
13.55 w( queue run)5.112 w 4.872 x(can be)5.112 w 4.872 x(manually started)
5.112 w 4.872 x(to deliver)5.112 w 4.872 x(just a)5.112 w 4.872 x
(particular portion)5.112 w 4.872 x(of the)5.112 w 4.872 x(queue, or)
5.112 w( those)4.872 w nl 24 x(messages with)4.152 w 3.912 x(a recipient)
4.152 w 3.912 x(or sender whose)4.152 w 3.912 x(address contains)4.152 w
3.912 x(a given string)4.152 w 3.912 x(or matches)4.152 w 3.912 x
(a particular)4.152 w nl 24 x(regular expression.)3.432 w cr 6.6 18.72 r
(\267 Exim)13.55 w
( can be con\256gured to run as root only when needed; in particular)
4.872 w -0.44 x(, it need not)4.872 w 5.112 x(run as root)4.872 w nl
24 x(when receiving)5.592 w 5.352 x(incoming messages)5.592 w 5.352 x
(or when)5.592 w( sending out)5.352 w 5.592 x(messages over)5.352 w( SMTP)
5.592 w -1.221 x(. It)5.352 w 5.592 x(always uses)5.352 w 1 f nl 24 x
(setuid\(\) )3.432 w 0 f(when doing local deliveries.)3.432 w cr 6.6
18.48 r(\267 I)13.55 w
( have tried to make the wording of delivery failure messages clearer and si)
3.432 w (mpler)3.432 w -0.44 x(, for the bene\256t of)3.432 w nl 24 x
(those less-experienced)3.912 w 4.152 x(people who)3.912 w 4.152 x
(are now using)3.912 w 4.152 x(email. However)3.912 w -0.44 x(, the)
4.152 w( wording can)3.912 w 4.152 x(be completely)3.912 w nl 24 x
(replaced by customized paragraphs supplied in a \256le if necessary)
3.432 w -0.715 x(.)s cr 6.6 18.72 r(\267 Exim)13.55 w
( contains support for IPv6.)3.432 w cr 6.6 18.72 r(\267 The)13.55 w
( Exim Monitor)4.632 w 4.392 x(is an optional)4.632 w 4.392 x(extra; it)
4.632 w 4.392 x(displays information about)4.632 w( Exim')4.392 w -0.605 x
(s processing in)4.632 w 4.392 x(an X)4.632 w nl( window)24 w -0.715 x(, and)
3.672 w 3.912 x(an administrator)3.672 w 3.912 x(can perform)3.672 w
3.912 x(a number)3.672 w 3.912 x(of control)3.672 w 3.912 x(actions from)
3.672 w 3.912 x(the window)3.672 w( interface.)3.912 w 12.24 snl nl 24 x
(This does not, however)3.432 w -0.44 x
(, supplant command-line access to all the control functions.)3.432 w 3 f cr
31.2 y(5. Performance)3.432 w 0 f cr 15.6 y(Although I)4.392 w
( did not speci\256cally set)4.152 w 4.392 x(out to write a high-performance)
4.152 w( MT)4.392 w -0.88 x(A, Exim does seem to be)4.152 w( fairly)
4.392 w 12.48 snl nl(ef)s -0.198 x(\256cient. One site I)3.672 w 3.912 x
(heard of was a mailing list)3.672 w 3.912 x
(exploder that sometimes handles over 100,000)3.672 w( deliveries)3.912 w nl
(a day on)3.672 w 3.432 x(a big)3.672 w 3.432 x(Linux box,)3.672 w 3.432 x
(the record)3.672 w 3.432 x(being 177,000)3.672 w 3.432 x(deliveries \(791MB)
3.672 w 3.432 x(in total\).)3.672 w 3.432 x(Up to)3.672 w( 13,000 deliveries)
3.432 w nl(in an hour have been reported. On lar)3.432 w -0.198 x
(ger systems, up to 800,000 messages a day have been reported.)3.432 w cr
222.25 24.48 r(3)s
pagesave restore xpage

%%Page: 4 4
/ppend true def /pagesave save def lmv ptop
3 f 0 Sg(6. Interface)3.432 w 0 f cr 15.84 y(Like many)4.152 w( MT)
3.912 w -0.88 x(As, Exim has adopted the Sendmail)3.912 w 4.152 x
(interface so that it can be a)3.912 w 4.152 x(straight replacement for)
3.912 w 3 f 12.72 snl nl(usr/sbin/sendmail )4.392 w 0 f(or )4.392 w 3 f
(/usr/lib/sendmail)s 0 f(. All the relevant)4.392 w 4.152 x
(Sendmail options are implemented. There are)4.392 w 12.48 snl nl(also some)
3.912 w( additional options)3.672 w 3.912 x(that are compatible)3.672 w
3.912 x(with Smail 3,)3.672 w 3.912 x(and some further)3.672 w 3.912 x
(options that are)3.672 w 3.912 x(new to)3.432 w 12.72 snl nl(Exim.)s cr
18.96 y(The runtime)5.352 w 5.112 x(con\256guration interface)5.352 w( is a)
5.112 w 5.352 x(single \256le)5.112 w 5.352 x(which is divided)5.112 w
5.352 x(into a)5.112 w 5.352 x(number of sections.)5.112 w( The)5.352 w cr
12.48 y
(entries in this \256le consist of keywords and values, in the style of Smai)
3.432 w (l 3 con\256guration \256les.)3.432 w cr 18.96 y
(Control of messages on the queue can)4.632 w 4.392 x
(be done via certain privileged command)4.632 w 4.392 x
(line options. There is)4.632 w nl(also an)4.632 w 4.392 x
(optional monitor program)4.632 w 4.392 x(called )4.632 w 3 f(eximon)s 0 f
(, which)4.632 w 4.392 x(displays current information)4.632 w 4.392 x
(in an X)4.632 w( window)4.392 w cr 12.48 y
(and contains interfaces to the command line options.)3.432 w 3 f cr
31.68 y(7. Method of operation)3.432 w 0 f cr 15.84 y(When Exim)3.912 w
3.672 x(receives a)3.912 w 3.672 x(message, it)3.912 w( writes two)3.672 w
3.912 x(\256les in)3.672 w 3.912 x(its spool)3.672 w( directory)3.912 w
-0.715 x(. The \256rst)3.672 w 3.912 x(contains the)3.672 w( envelope)
3.912 w nl(information, the)4.392 w 4.152 x(current status of the)4.392 w
4.152 x(message, and the headers,)4.392 w 4.152 x(while the second contains)
4.392 w 4.152 x(the body of)4.392 w 12.48 snl nl(the message. The)4.872 w
4.632 x(status of)4.872 w 4.632 x(the message)4.872 w 4.632 x(includes a)
4.872 w 4.632 x(complete list of)4.872 w 4.632 x(recipients and)4.872 w
4.632 x(a list)4.872 w 4.632 x(of those)4.872 w( that)4.632 w 12.72 snl nl
(have already received)6.072 w 6.312 x(the message. The header)6.072 w
6.312 x(\256le gets updated during)6.072 w 6.312 x(the course of delivery if)
6.072 w 12.48 snl nl(necessary)s -0.715 x(.)s cr 18.96 y(A message remains)
3.912 w 4.152 x(in the spool directory)3.912 w 4.152 x
(until it is completely delivered)3.912 w 4.152 x(to its recipients or)
3.912 w 4.152 x(to an error)3.912 w 12.72 snl nl(address, or)3.912 w
( until it is)3.672 w 3.912 x(deleted by an administrator or)3.672 w
3.912 x(by the user who)3.672 w 3.912 x(originally created it. In cases)
3.672 w( when)3.912 w 12.48 snl nl(delivery cannot)4.632 w 4.392 x(proceed )
4.632 w (\261)4.632 w 5.492 x(for example,)4.632 w 4.392 x(when a message)
4.632 w 4.392 x(can neither)4.632 w 4.392 x(be delivered)4.632 w 4.392 x
(to its recipients)4.632 w( nor)4.392 w 12.72 snl nl(returned to)6.552 w
( its sender)6.312 w -0.44 x(, the)6.312 w 6.552 x
(message is marked `frozen' on)6.312 w 6.552 x(the spool, and no more)
6.312 w 6.552 x(deliveries are)6.312 w 12.48 snl nl(attempted. The)4.872 w
4.632 x(administrator can thaw)4.872 w 4.632 x(such messages when)4.872 w
4.632 x(the problem has been)4.872 w 4.632 x(corrected, and can)4.872 w
12.72 snl nl(also freeze individual messages by hand if necessary)3.432 w
-0.715 x(.)s cr 18.96 y(As delivery)4.872 w 4.632 x
(proceeds, Exim writes timestamped)4.872 w 4.632 x
(information about each address)4.872 w 4.632 x(to a per-message log)
4.872 w 12.48 snl nl(\256le; this)3.912 w( includes any delivery)3.672 w
3.912 x(error messages. This log)3.672 w 3.912 x(is solely for the)3.672 w
3.912 x(bene\256t of the administrator)3.672 w -0.605 x(. All)3.912 w
12.72 snl nl(the information Exim itself)4.392 w 4.152 x
(needs for delivery is kept in)4.392 w 4.152 x
(the header spool \256le. The message log)4.392 w 4.152 x(\256le is)
4.392 w nl(deleted with the)3.672 w 3.432 x(spool \256les.)3.672 w 3.432 x
(If a)3.672 w 3.432 x(message is)3.672 w 3.432 x(delayed for)3.672 w
3.432 x(more than)3.672 w 3.432 x(a con\256gured)3.672 w 3.432 x(time, a)
3.672 w( warning message)3.432 w 12.48 snl nl(is sent to the sender)
3.432 w -0.605 x(.)s cr 18.96 y(The main)3.912 w 3.672 x(delivery processing)
3.912 w 3.672 x(elements of)3.912 w( Exim are)3.672 w 3.912 x(called )
3.672 w 1 f(dir)s -0.407 x(ectors)s 0 f(, )3.912 w 1 f(r)s -0.407 x(outers)s
0 f(, and)3.672 w 1 f( transports)3.912 w 0 f(. Code for)3.672 w( a)
3.912 w 12.72 snl nl(number of these)4.152 w 4.392 x
(is provided, and compile-time)4.152 w 4.392 x(options specify which ones)
4.152 w 4.392 x(are actually included in)4.152 w( the)4.392 w 12.48 snl nl
(binary)s -0.715 x(. Directors)7.032 w 6.792 x(handle addresses)7.032 w
6.792 x(that include)7.032 w 6.792 x(one of)7.032 w 6.792 x(the local)
7.032 w 6.792 x(domains, routers)7.032 w 6.792 x(handle remote)7.032 w cr
12.72 y(addresses, and transports do actual deliveries.)3.432 w cr 18.96 y
(When a message is to be delivered, the sequence of events is roughly as fol)
3.432 w (lows:)3.432 w cr 6.6 18.72 r(\267 If)13.55 w( there is)4.152 w
3.912 x(a system \256lter \256le, it is)4.152 w 3.912 x
(obeyed. This can check on the)4.152 w 3.912 x(contents of the message and)
4.152 w( its)3.912 w 12.72 snl nl 24 x(headers, and)3.912 w
( cause delivery to be abandoned or directed to alternative or additional)
3.672 w 3.912 x(addresses, or)3.672 w( it)3.432 w nl 24 x(can freeze)
4.632 w 4.872 x(the message)4.632 w 4.872 x(for human attention.)4.632 w
4.872 x(It can)4.632 w 4.872 x(also add)4.632 w 4.872 x(headers to the)
4.632 w 4.872 x(message, and)4.632 w 4.872 x(set up)4.632 w cr 24 12.48 r
(`scores' which can be used in local recipients' \256lter \256les.)3.432 w cr
6.6 18.96 r(\267 Each)13.55 w 4.152 x(address is)4.392 w( parsed and a)
4.152 w 4.392 x(check is made to)4.152 w 4.392 x(see if it)4.152 w 4.392 x
(is local or not,)4.152 w 4.392 x(by comparing the domain)4.152 w nl
24 x(with the list)4.152 w 3.912 x(of local domains,)4.152 w 3.912 x
(which can)4.152 w 3.912 x(be wildcarded, or)4.152 w 3.912 x(even held in)
4.152 w 3.912 x(a \256le)4.152 w 3.912 x(if there are)4.152 w 3.912 x(a lar)
4.152 w -0.198 x(ge)s cr 24 12.48 r(number of them.)3.432 w cr 6.6 18.96 r
(\267 If)13.55 w
( an address is local, it is passed to each con\256gured director in turn un)
3.912 w (til)3.912 w 3.672 x(one is able to handle it.)3.912 w nl 24 x
(There are)3.912 w 4.152 x(directors for handling)3.912 w 4.152 x
(aliases, for handling)3.912 w 3 f 4.152 x(.forward )3.912 w 0 f(\256les, fo)
4.152 w (r)4.152 w( checking on)3.912 w 4.152 x(login names,)3.912 w
12.48 snl nl 24 x(and so on.)3.912 w 3.672 x(If no director)3.912 w 3.672 x
(can handle)3.912 w 3.672 x(it, the address)3.912 w 3.672 x(is failed.)
3.912 w 3.672 x(Directors can be)3.912 w( tar)3.672 w -0.198 x(geted at)
3.912 w( particular)3.432 w 12.72 snl nl 24 x
(local domains, so several local domains can be processed independently of e)
3.432 w (ach other)3.432 w -0.605 x(.)s cr 6.6 18.96 r(\267 A)13.55 w
( director that accepts an)5.592 w 5.352 x(address may set up)5.592 w
5.352 x(a local or a)5.592 w 5.352 x(remote transport for it,)5.592 w
5.352 x(or it may)5.592 w 12.48 snl nl 24 x(generate one or)3.912 w 4.152 x
(more new addresses \(typically from)3.912 w 4.152 x
(alias or forward \256les\). New addresses)3.912 w 4.152 x(are fed)3.912 w
12.72 snl nl 24 x(back into)4.152 w
( this process from the top, but in order to avoid loops, a director will ig)
3.912 w (nore any address)3.912 w cr 24 12.48 r
(which has an identically-named ancestor that was processed by itself.)
3.432 w cr 222.25 24.72 r(4)s
pagesave restore xpage

%%Page: 5 5
/ppend true def /pagesave save def lmr ptop
0 f 6.6 x 0 Sg(\267 If)13.55 w( an address is not local,)3.672 w 3.432 x
(it is passed to each)3.672 w 3.432 x(router in turn until one)3.672 w
3.432 x(is able to handle it.)3.672 w( There are)3.432 w 12.24 snl nl
24 x(routers for)5.352 w 5.112 x(looking up)5.352 w 5.112 x(the domain)
5.352 w 5.112 x(in a)5.352 w 5.112 x(local list,)5.352 w 5.112 x
(for doing DNS)5.352 w 5.112 x(or host)5.352 w 5.112 x(\256le lookups,)
5.352 w 5.112 x(and for)5.352 w nl 24 x
(running external routing programs. If no router can handle it, the address )
3.432 w (is failed.)3.432 w cr 6.6 18.48 r(\267 A)13.55 w 4.632 x
(router that accepts an)4.392 w 4.632 x(address may set up a)4.392 w
4.632 x(transport for it, or may)4.392 w 4.632 x(pass an altered address to)
4.392 w nl 24 x(subsequent routers,)4.632 w 4.392 x(or it)4.632 w 4.392 x
(may discover)4.632 w 4.392 x(that the)4.632 w 4.392 x(address is a)
4.632 w 4.392 x(local address)4.632 w 4.392 x(after all.)4.632 w 4.392 x
(This typically)4.632 w nl 24 x(happens when)4.392 w 4.152 x(a partial)
4.392 w 4.152 x(domain name)4.392 w 4.152 x(is used)4.392 w 4.152 x(and \(fo)
4.392 w (r)4.392 w( example\) the)4.152 w 4.392 x(DNS lookup)4.152 w
4.392 x(is con\256gured)4.152 w( to)4.392 w cr 24 12.24 r
(try to extend such names. In this case, the address is passed back to the d)
3.432 w (irectors.)3.432 w cr 6.6 18.48 r(\267 Routers)13.55 w 3.912 x
(normally set)3.672 w 3.912 x(up remote)3.672 w 3.912 x(transports for)
3.672 w 3.912 x(messages that)3.672 w 3.912 x(are to)3.672 w 3.912 x
(be delivered)3.672 w 3.912 x(to other)3.672 w( machines.)3.912 w nl( Howeve)
24 w (r)24 w -0.44 x(, a)3.912 w 3.672 x(router can)3.912 w 3.672 x
(pass a message)3.912 w 3.672 x(to a local)3.912 w 3.672 x(transport, and)
3.912 w 3.672 x(by this means)3.912 w 3.672 x(messages for remote)3.912 w cr
24 12.24 r
(hosts can be routed to other transport mechanisms such as UUCP via a \256le)
3.432 w ( or a pipe.)3.432 w cr 6.6 18.48 r(\267 When)13.55 w 5.352 x
(all the)5.592 w 5.352 x(directing and)5.592 w 5.352 x(routing is)5.592 w
5.352 x(done, addresses)5.592 w( that have)5.352 w 5.592 x(been successfully)
5.352 w 5.592 x(handled are)5.352 w nl 24 x
(passed to their assigned transports. Local transports normally handle only)
4.632 w 4.392 x(one address at a time,)4.632 w 12.48 snl nl 24 x(but remote)
3.672 w 3.912 x(ones can)3.672 w 3.912 x(handle more)3.672 w 3.912 x
(than one.)3.672 w 3.912 x(Each local transport)3.672 w 3.912 x(runs in)
3.672 w 3.912 x(a separate)3.672 w 3.912 x(process under)3.672 w( a)
3.912 w 12.24 snl nl 24 x(non-privileged uid.)3.432 w cr 6.6 18.24 r(\267 If)
13.55 w( there were any)6.072 w 5.832 x
(errors, a message is returned to an appropriate)6.072 w 5.832 x
(address \(the sender in the)6.072 w cr 24 12.48 r(common case\).)3.432 w cr
6.6 18.24 r(\267 If)13.55 w 3.672 x(one or)3.912 w 3.672 x(more addresses)
3.912 w( suf)3.672 w -0.198 x(fered a)3.672 w 3.912 x(temporary failure,)
3.672 w 3.912 x(the message is)3.672 w 3.912 x(left on the)3.672 w 3.912 x
(queue, to)3.672 w 3.912 x(be tried)3.672 w nl 24 x(again later)3.432 w
-0.605 x(. Otherwise the spool \256les and message log are deleted.)
3.432 w 3 f cr 30.72 y(8. Mail \256ltering)3.432 w 0 f cr 15.6 y
(Exim can be con\256gured to allow users to)4.152 w 3.912 x
(set up \256lter \256les as an alternative)4.152 w 3.912 x
(to the traditional )4.152 w 3 f(.forward)s 0 f nl(\256les. A)3.672 w
3.912 x(\256lter \256le)3.672 w 3.912 x(can test various)3.672 w 3.912 x
(characteristics of)3.672 w 3.912 x(a message, including)3.672 w 3.912 x
(the contents)3.672 w 3.912 x(of the headers)3.672 w( and)3.912 w nl
(the start of the body)3.672 w -0.715 x
(, and direct delivery to speci\256ed addresses, \256les, or pipes according)
3.672 w ( to what it)3.672 w( \256nds.)3.432 w nl
(The system-wide \256lter \256le uses the same control syntax.)3.432 w 3 f cr
30.72 y(9. Dir)3.432 w -0.198 x(ectors)s 0 f cr 15.6 y(The existing)
4.392 w 4.632 x(directors are)4.392 w 4.632 x(listed below)4.392 w -0.715 x
(. I)4.392 w 4.632 x(use the RFC)4.392 w 4.632 x(822 term)4.392 w 1 f
4.632 x(local part )4.392 w 0 f(to mean)4.632 w 4.392 x(that portion)
4.632 w( of an)4.392 w nl(address that comes before the @ character)
3.432 w -0.605 x(.)s cr 6.6 18.24 r(\267 )13.55 w 3 f(alias\256le)s 0 f
(: This)3.672 w 3.912 x(director handles)3.672 w 3.912 x(local part)
3.672 w 3.912 x(expansion via)3.672 w 3.912 x(a traditional)3.672 w 3.912 x
(alias \256le. The)3.672 w 3.912 x(name of)3.672 w 3.912 x(the \256le)
3.672 w 12.48 snl nl 24 x(is obtained)6.312 w
( by string expansion, and may therefore depend on the local part)6.072 w
6.312 x(or the domain.)6.072 w 12.24 snl nl 24 x
(Generated pipe and \256le addresses can be \(independently\) locked out.)
3.432 w cr 24 18.24 r(The )3.912 w 3 f(alias\256le )3.672 w 0 f
(director can also be used to test a list of local parts and direct any mess)
3.672 w (ages for)3.672 w( them)3.432 w 12.48 snl nl 24 x(to a)3.672 w
3.912 x(speci\256c transport.)3.672 w 3.912 x(In this)3.672 w 3.912 x
(case the)3.672 w 3.912 x(data associated)3.672 w 3.912 x(with the)3.672 w
3.912 x(local part)3.672 w 3.912 x(in the)3.672 w 3.912 x(\256le is)
3.672 w 3.912 x(not used)3.672 w( for)3.912 w 12.24 snl nl 24 x
(address expansion, but is)3.912 w 3.672 x(available for other)3.912 w
3.672 x(purposes. For example, \256les)3.912 w 3.672 x(containing records of)
3.912 w( the)3.672 w nl( form)24 w 6 f cr 37.2 18.48 r
(foo: uid=1234 gid=5678 mailbox=/home_1/foo/inbox)6.6 w 0 f cr 24 18.24 r
(could be used)5.832 w 5.592 x(on a system)5.832 w 5.592 x(that did local)
5.832 w 5.592 x(deliveries without)5.832 w 5.592 x(consulting its password)
5.832 w 5.592 x(\256le. The)5.832 w 3 f nl 24 x(alias\256le )4.152 w 0 f
(director could)3.912 w 4.152 x(use the)3.912 w( \256le to)4.152 w 3.912 x
(verify that the)4.152 w 3.912 x(local part)4.152 w 3.912 x(was valid, and)
4.152 w 3.912 x(then the )4.152 w 3 f(append\256le)s 0 f 12.48 snl nl
24 x(transport could use it to get a uid, gid, and mailbox for the delivery)
3.432 w -0.715 x(.)s cr 24 18.24 r(The )4.632 w 3 f(alias\256le )4.392 w 0 f
(director can also be)4.632 w 4.392 x(con\256gured to include)4.632 w
4.392 x(the domain in the)4.632 w 4.392 x(key that is looked)4.632 w( up,)
4.392 w 12.24 snl nl 24 x(making it)3.912 w( possible to hold aliases)
3.672 w 3.912 x(for several dif)3.672 w -0.198 x(ferent local domains in)
3.672 w 3.912 x(the same \256le. It is)3.672 w( possible)3.432 w cr 24
12.48 r
(to specify a default address to be used if nothing in the alias \256le matc)
3.432 w (hes the incoming address.)3.432 w cr 6.6 18.24 r(\267 )13.55 w 3 f
(forward\256le)s 0 f(: This director handles local part expansion)5.832 w
5.592 x(via a traditional forward \256le or)5.832 w -0.44 x(, if)5.592 w( so)
5.832 w 12.48 snl nl 24 x(con\256gured, by)4.632 w 4.392 x(a user)4.632 w( ')
0.407 w -0.605 x(s \256lter)4.392 w( \256le. The)4.632 w 4.392 x(name of the)
4.632 w 4.392 x(\256le is)4.632 w 4.392 x(obtained by string)4.632 w
4.392 x(expansion, and may)4.632 w 12.24 snl nl 24 x(therefore depend)
6.312 w( on the)6.072 w 6.312 x(local part or)6.072 w 6.312 x
(the domain, though)6.072 w 6.312 x(if it is not)6.072 w 6.312 x
(an absolute path)6.072 w 6.312 x(it is)6.072 w nl 24 x
(automatically assumed to)3.912 w 4.152 x(be in the home directory of)
3.912 w 4.152 x(the user whose login name)3.912 w 4.152 x(is the local part.)
3.912 w nl 24 x(Mailing lists can be handled by \256le names of the form)
3.432 w 6 f cr 37.2 18.48 r(/some/list/directory/${local_part})s 0 f cr
222.25 24.24 r(5)s
pagesave restore xpage

%%Page: 6 6
/ppend true def /pagesave save def lmv ptop
0 f 24 x 0 Sg(and it)3.912 w 3.672 x(is possible)3.912 w 3.672 x(to specify)
3.912 w 3.672 x(an error)3.912 w 3.672 x(address for)3.912 w 3.672 x
(each list that)3.912 w 3.672 x(depends on)3.912 w 3.672 x(the list)
3.912 w 3.672 x(name. Generated)3.912 w 12.24 snl nl 24 x
(pipe and \256le addresses can be \(independently\) locked out.)3.432 w cr
6.6 18.24 r(\267 )13.55 w 3 f(localuser)s 0 f
(: This director matches the local)4.152 w 3.912 x(part of an address to a)
4.152 w 3.912 x(user of the machine. It can)4.152 w( also)3.912 w nl
24 x(be con\256gured)4.152 w 3.912 x(to do)4.152 w 3.912 x(a pattern)
4.152 w 3.912 x(match on)4.152 w 3.912 x(the user)4.152 w( ')0.407 w
-0.605 x(s home)3.912 w 4.152 x(directory name.)3.912 w 4.152 x(This makes)
3.912 w 4.152 x(it possible)3.912 w( to)4.152 w nl 24 x
(partition the set of local users according to their home directories.)
3.432 w cr 6.6 18.48 r(\267 )13.55 w 3 f(smartuser)s 0 f(: This)4.872 w
5.112 x(director matches)4.872 w 5.112 x(any local)4.872 w 5.112 x
(part. It can)4.872 w 5.112 x(be used)4.872 w 5.112 x(to pass messages)
4.872 w 5.112 x(for unknown)4.872 w 12 snl nl 24 x(users to)3.912 w 3.672 x
(a script)3.912 w( that generates)3.672 w 3.912 x(a helpful)3.672 w 3.912 x
(error message, or)3.672 w 3.912 x(it can)3.672 w 3.912 x(be used to)
3.672 w 3.912 x(send such)3.672 w 3.912 x(messages to)3.432 w 12.24 snl nl
24 x(another host, optionally changing the envelope address in the process.)
3.432 w cr 18.48 y(The con\256guration \256le determines)3.912 w 3.672 x
(which directors are actually)3.912 w 3.672 x(used, and in which)3.912 w
( order)3.672 w -0.605 x(. It is possible)3.912 w( to)3.432 w nl
(use the same director more than once, with dif)3.432 w -0.198 x
(ferent options.)3.432 w cr 18.24 y
(The addresses a director handles can be constrained in the following ways:)
3.432 w cr 6.6 18.48 r(\267 A)13.55 w
( speci\256c set of local domains may be speci\256ed, in which case the dire)
5.112 w (ctor is called only for)5.112 w cr 24 12 r
(addresses that contain one of those domains.)3.432 w cr 6.6 18.48 r(\267 A)
13.55 w( speci\256c set of)6.072 w 5.832 x
(local parts may be speci\256ed, in which case)6.072 w 5.832 x
(the director is called only for)6.072 w nl 24 x(addresses that)6.552 w
( contain one of those local parts. This could be used, for example, to hand)
6.312 w (le)6.312 w nl 24 x(`postmaster ')0.407 w
( independently of the particular local domain.)3.432 w cr 6.6 18.24 r(\267 )
13.55 w (A)13.55 w 3.912 x(speci\256c set of)3.672 w 3.912 x
(sender addresses may)3.672 w 3.912 x(be speci\256ed. This can)3.672 w
3.912 x(be used to)3.672 w 3.912 x(implement closed)3.672 w( mailing)
3.432 w nl( lists.)24 w cr 6.6 18.24 r(\267 A)13.55 w( director may)
3.672 w 3.432 x(be con\256gured to)3.672 w 3.432 x(handle local parts)
3.672 w 3.432 x(that start)3.672 w 3.432 x(with a certain)3.672 w 3.432 x
(pre\256x and/or end)3.672 w( with a)3.432 w nl 24 x(certain suf)5.352 w
-0.198 x(\256x. For)5.112 w 5.352 x(example, a)5.112 w 5.352 x(director can)
5.112 w 5.352 x(be set)5.112 w 5.352 x(up to)5.112 w( handle local)5.352 w
5.112 x(parts of)5.352 w 5.112 x(the form)5.352 w 6 f( xxxx-)5.112 w nl
24 x(request )3.432 w 0 f(only)s -0.715 x(.)s cr 6.6 18.48 r(\267 A)
13.55 w 5.352 x(\257ag controls)5.112 w 5.352 x(whether a)5.112 w
( director is)5.352 w 5.112 x(called when)5.352 w 5.112 x(an address)
5.352 w 5.112 x(is being veri\256ed)5.352 w 5.112 x(on an)5.352 w( incoming)
5.112 w nl 24 x
(message \(during the SMTP dialogue\), as opposed to being directed for deli)
3.432 w (very)3.432 w -0.715 x(.)s cr 18.24 y
(In addition, certain \256les can be required to exist or not exist for a gi)
3.432 w (ven director to be run.)3.432 w 3 f cr 30.48 y(10. Routers)
3.432 w 0 f cr 15.36 y(The existing routers are:)3.432 w cr 6.6 18.48 r(\267)
13.55 w ( )13.55 w 3 f(domainlist: )4.632 w 0 f(This router)4.632 w 4.392 x
(searches a)4.632 w 4.392 x(list of)4.632 w 4.392 x(domains for)4.632 w
4.392 x(the one)4.632 w 4.392 x(it is)4.632 w 4.392 x(trying to)4.632 w
4.392 x(route. The)4.632 w 4.392 x(list may)4.632 w nl 24 x(either be)
3.912 w 4.152 x(a string)3.912 w 4.152 x(in the)3.912 w 4.152 x
(con\256guration \256le, possibly)3.912 w 4.152 x(including wild)3.912 w
4.152 x(cards or regular)3.912 w 4.152 x(expressions, or)3.912 w nl 24 x
(it may)7.512 w
( be in a \256le, or both may be provided. In the case of a \256le, keys of )
7.272 w (the form)7.272 w 6 f nl 24 x(*.foo.bar.com )3.432 w 0 f
(can be used for simple wildcarding.)3.432 w cr 24 18.24 r(If the)5.592 w
5.352 x(domain is)5.592 w 5.352 x(found, its)5.592 w 5.352 x(entry can)
5.592 w 5.352 x(either specify)5.592 w 5.352 x(a single)5.592 w 5.352 x
(replacement domain)5.592 w( name that)5.352 w( is)5.592 w nl 24 x(passed on)
3.672 w 3.432 x(to subsequent)3.672 w 3.432 x(routers, or)3.672 w 3.432 x
(it can specify)3.672 w 3.432 x(a list)3.672 w 3.432 x(of domain)3.672 w
3.432 x(names that are)3.672 w 3.432 x(looked up)3.672 w( by this)3.432 w nl
( router)24 w -0.605 x(. The lookup can be done by the )4.632 w 1 f
(gethostbyname\(\) )4.632 w 0 f(function, or by DNS lookup, and in the)
4.632 w nl 24 x
(latter case it is con\256gurable whether MX or A records or both are used. )
5.112 w (As well as providing)5.112 w nl 24 x(explicit routing for)5.592 w
5.352 x(certain domains, the)5.592 w 5.352 x(domainlist router)5.592 w
5.352 x(can be used)5.592 w 5.352 x(to set up)5.592 w 5.352 x(gateways for)
5.592 w nl 24 x(partial domains \(for example, for)3.432 w 6 f( *.uucp)
3.672 w 0 f(\) and it can also be used as)3.432 w 3.672 x
(a `smarthost' router by using)3.432 w nl 24 x(the all-inclusive wild card.)
3.432 w cr 6.6 18.24 r(\267 )13.55 w 3 f(lookuphost: )3.672 w 0 f
(This router)3.912 w( looks up)3.672 w 3.912 x(domain names)3.672 w 3.912 x
(either by calling)3.672 w 3.912 x(the )3.672 w 1 f(gethostbyname\(\) )
3.672 w 0 f(function, or)3.912 w nl 24 x(by using)5.112 w 4.872 x(the DNS.)
5.112 w 4.872 x(In the)5.112 w 4.872 x(latter case,)5.112 w( it can)
4.872 w 5.112 x(be con\256gured)4.872 w 5.112 x(to use)4.872 w 5.112 x
(the DNS resolver)4.872 w 5.112 x(options for)4.872 w nl 24 x
(qualifying single-component)3.672 w 3.912 x(names and for)3.672 w 3.912 x
(searching parent)3.672 w 3.912 x(domains. It is)3.672 w 3.912 x
(also possible to)3.672 w( specify)3.912 w nl 24 x(explicit text strings for)
3.912 w 3.672 x(widening domains that are)3.912 w 3.672 x
(not found initially)3.912 w -0.715 x(. It)3.912 w 3.672 x
(is possible to insist)3.912 w 3.672 x(on the)3.912 w nl 24 x(presence of)
4.392 w 4.632 x(MX records for certain)4.392 w 4.632 x(sets of domains. A)
4.392 w 4.632 x(con\256guration option controls whether)4.392 w( the)
4.632 w nl( message')24 w -0.605 x
(s headers are rewritten when a domain name is changed.)3.432 w cr 6.6
18.24 r(\267 )13.55 w 3 f(querypr)s -0.198 x(ogram: )3.672 w 0 f
(This router passes the address to a command that runs in)3.672 w 3.432 x
(a separate process under)3.672 w nl 24 x
(an unprivileged uid and gid. The command returns a line of text specifying )
3.672 w (whether it matched)3.672 w( the)3.432 w nl 24 x(domain or not. If)
3.672 w 3.432 x(it did match, it may specify)3.672 w 3.432 x
(a transport name, or it may specify)3.672 w 3.432 x(that the transport)
3.672 w nl 24 x(speci\256ed for)4.152 w( the router is used.)3.912 w
4.152 x(The command may also send)3.912 w 4.152 x(back a new domain name to)
3.912 w( replace)4.152 w cr 222.25 24.24 r(6)s
pagesave restore xpage

%%Page: 7 7
/ppend true def /pagesave save def lmr ptop
0 f 24 x 0 Sg(the current)3.912 w 4.152 x(one, and)3.912 w 4.152 x
(specify a method)3.912 w 4.152 x(of looking)3.912 w 4.152 x(this name)
3.912 w 4.152 x(up \()3.912 w 1 f(gethostbyname\(\))s 0 f(, DNS,)3.912 w
4.152 x(or pass)3.912 w( to)4.152 w 12 snl nl 24 x(next router\).)3.432 w cr
18 y(The con\256guration \256le determines which routers)4.392 w 4.152 x
(are actually used, and in)4.392 w 4.152 x(which order)4.392 w -0.605 x
(. It is possible)4.392 w( to)4.152 w nl
(use the same router more than once, with dif)3.432 w -0.198 x
(ferent options.)3.432 w cr 18 y(Like directors,)3.912 w
( routers can be constrained to handle only certain domains or certain local)
3.672 w ( parts \(though)3.672 w( I)3.432 w nl(haven')s -0.198 x(t seen)
3.912 w 3.672 x(a good use for)3.912 w 3.672 x(that yet\), or messages)
3.912 w 3.672 x(from certain senders. If)3.912 w 3.672 x(a router times out,)
3.912 w 3.672 x(either the)3.912 w nl
(delivery can be deferred, or the address can be passed on to the next route)
3.432 w (r)3.432 w -0.605 x(.)s cr 18 y(A \257ag controls whether)3.672 w
3.912 x(a router is called when an)3.672 w 3.912 x
(address is being veri\256ed on an)3.672 w 3.912 x(incoming message, as)
3.672 w nl(opposed to being routed for delivery)3.432 w -0.715 x(.)s 3 f cr
30 y(1)s -0.605 x(1. T)3.432 w -0.814 x(ransports)s 0 f cr 15.12 y(Local and)
3.672 w 3.432 x(remote transports)3.672 w 3.432 x(are handled)3.672 w( dif)
3.432 w -0.198 x(ferently)s -0.715 x(. A)3.672 w 3.432 x(local transport)
3.672 w 3.432 x(is always)3.672 w 3.432 x(run in)3.672 w( a separate process)
3.432 w nl(with an)4.632 w 4.392 x(appropriate real)4.632 w 4.392 x
(uid and gid.)4.632 w 4.392 x(Their values)4.632 w 4.392 x(can be speci\256e)
4.632 w (d)4.632 w 4.392 x(in the transport')4.632 w -0.605 x
(s con\256guration,)4.392 w( or)4.632 w 12.24 snl nl
(passed over from the director that handled)4.632 w 4.392 x
(the address. Remote transports run under Exim')4.632 w -0.605 x(s own)
4.392 w( uid.)4.632 w 12 snl nl(The existing transports are:)3.432 w cr
6.6 18 r(\267 )13.55 w 3 f(append\256le: )4.152 w 0 f
(This local transport appends the)3.912 w 4.152 x
(message to a \256le whose name)3.912 w 4.152 x(is speci\256ed as a string)
3.912 w nl 24 x(containing variable expansions. The)4.392 w 4.632 x
(current local part can be inserted via the)4.392 w 4.632 x
(expansion mechan-)4.392 w nl 24 x(ism, and \256le names such as)3.432 w 6 f
cr 24 18 r(/home/${local_part}/inbox)s nl( /var/mail/${local_part})24 w 0 f
cr 24 18 r(are typical)3.672 w( examples. However)3.432 w -0.44 x
(, it is possible to look up each individual user)3.432 w( ')0.407 w
-0.605 x(s inbox name in a \256le,)3.432 w nl 24 x(should that be required.)
3.432 w cr 24 18 r(Exclusive access)3.912 w 3.672 x(to the)3.912 w 3.672 x
(\256le is)3.912 w( ensured by)3.672 w 3.912 x(using the)3.672 w 3.912 x
(traditional mailbox locking)3.672 w 3.912 x(strategy of)3.672 w( creating)
3.912 w nl 24 x(a lock)3.672 w 3.432 x(\256le. The)3.672 w 3.432 x
(lock creation)3.672 w 3.432 x(process uses)3.672 w 3.432 x(a `hitching)
3.672 w 3.432 x(post' algorithm)3.672 w 3.432 x(\(similar to)3.672 w
3.432 x(that used)3.672 w 3.432 x(by Pine\))3.672 w nl 24 x(which is robust)
4.872 w 4.632 x(when the)4.872 w 4.632 x(mailbox \256le is)4.872 w 4.632 x
(NFS-mounted. The)4.872 w 4.632 x(\256le is)4.872 w 4.632 x
(also locked using)4.872 w 4.632 x(the )4.872 w 1 f(fcntl\(\))s 0 f nl
24 x(function, but either one of the locking mechanisms can be turned of)
3.432 w -0.198 x(f if necessary)3.432 w -0.715 x(.)s cr 24 18 r(The )
4.392 w 3 f(append\256le )4.392 w 0 f
(transport can also be con\256gured to deliver each message into a separate )
4.392 w (\256le)4.392 w 4.152 x(in a)4.392 w nl 24 x(given directory)
3.432 w -0.715 x(, optionally in `maildir)3.432 w 0.407 x
(' format. In this case, no locking is needed.)3.432 w cr 24 18 r
(Options on this)3.912 w 3.672 x(transport allow)3.912 w 3.672 x(for the)
3.912 w 3.672 x(insertion of)3.912 w 3.672 x(a pre\256x)3.912 w 3.672 x
(line \(for)3.912 w 3.672 x(example, `From)3.912 w 3.672 x(xxx...'\) and)
3.912 w( a)3.432 w nl( suf)24 w -0.198 x(\256x line,)4.392 w 4.152 x
(special processing of)4.392 w 4.152 x(message lines starting)4.392 w
4.152 x(with `From', and)4.392 w 4.152 x(the addition of)4.392 w 3 f( Return)
4.152 w (-)4.152 w nl( path:)24 w 0 f(, )4.392 w 3 f(Delivery-date:)s 0 f
(, and )4.152 w 3 f(Envelope-to: )4.392 w 0 f(headers. If the mailbox)
4.152 w 4.392 x(\256le is not)4.152 w 4.392 x(a regular \256le, or)4.152 w
( does)4.392 w nl 24 x(not have)3.912 w 4.152 x(the correct owner)3.912 w
-0.44 x(, group,)4.152 w( or permissions, no)3.912 w 4.152 x
(delivery takes place;)3.912 w 4.152 x(the address is)3.912 w( deferred)
4.152 w nl 24 x(and the postmaster)6.552 w 6.312 x(is informed, except)
6.552 w 6.312 x(that, if the)6.552 w( \256le')6.312 w -0.605 x
(s permissions are)6.552 w 1 f( gr)6.312 w -0.407 x(eater )6.552 w 0 f
(than those)6.552 w nl 24 x
(required, Exim reduces the permissions and carries on. There are additional)
4.392 w ( checks to reduce the)4.392 w nl 24 x
(possibility of security exposures caused by race conditions.)3.432 w cr
6.6 18 r(\267 )13.55 w 3 f(pipe)s 0 f(: This)5.592 w 5.352 x(local transport)
5.592 w 5.352 x(passes the)5.592 w 5.352 x(message via)5.592 w 5.352 x
(a pipe)5.592 w 5.352 x(to a)5.592 w 5.352 x(speci\256ed command)5.592 w
5.352 x(\(program or)5.592 w nl 24 x
(script\) which is run in a separate process under a given uid and gid. V)
4.872 w -1.221 x(arious parameters)4.632 w( of the)4.872 w nl 24 x
(message are)3.672 w 3.912 x(passed as)3.672 w 3.912 x
(environment variables,)3.672 w 3.912 x(and there)3.672 w 3.912 x(are the)
3.672 w 3.912 x(same options)3.672 w 3.912 x(as for)3.672 w 3 f 3.912 x
(append\256le )3.672 w 0 f(for)s nl 24 x
(controlling the form of the message.)3.432 w cr 24 18.24 r
(The returned status)5.112 w 4.872 x(of the command may be used)5.112 w
4.872 x(to determine success or failure, or)5.112 w 4.872 x(it can be)
5.112 w nl 24 x(ignored. A con\256guration)4.392 w 4.152 x(option speci\256e)
4.392 w (s)4.392 w 4.152 x(whether any)4.392 w 4.152 x(standard output)
4.392 w 4.152 x(generated by)4.392 w 4.152 x(the command)4.392 w nl 24 x
(is to)6.312 w 6.072 x(be returned)6.312 w 6.072 x(to the)6.312 w 6.072 x
(sender \(either)6.312 w 6.072 x(always, or)6.312 w 6.072 x(only if)
6.312 w 6.072 x(the command)6.312 w 6.072 x(fails\). If)6.312 w 6.072 x
(this is)6.312 w( set)6.072 w nl 24 x(unconditionally and)4.632 w 4.392 x
(output is)4.632 w 4.392 x(actually generated,)4.632 w( the delivery)
4.392 w 4.632 x(is deemed)4.392 w 4.632 x(to have failed,)4.392 w( whatever)
4.632 w nl 24 x(the returned status of the)4.392 w 4.152 x
(command. The maximum amount of output generated by the)4.392 w( command)
4.152 w nl 24 x(can be controlled, and a timeout may be set for it.)
3.432 w cr 6.6 18 r(\267 )13.55 w 3 f(smtp)s 0 f(: This)5.112 w 4.872 x
(remote transport)5.112 w 4.872 x(delivers a message)5.112 w 4.872 x
(using SMTP over)5.112 w( TCP/IP)4.872 w -1.221 x(. All)5.112 w 4.872 x
(addresses in the)5.112 w nl 24 x(message that)5.112 w( route to)4.872 w
5.112 x(the same set)4.872 w 5.112 x(of hosts, and)4.872 w 5.112 x
(have the same)4.872 w 5.112 x(error address \(return path\),)4.872 w( are)
5.112 w nl 24 x(normally sent in a single transaction.)3.672 w 3.432 x
(An explicit list of hosts can be set for the transport,)3.672 w 3.432 x
(or a host)3.672 w nl 24 x(list may)4.152 w 3.912 x(be attached)4.152 w
3.912 x(to an)4.152 w 3.912 x(address by)4.152 w 3.912 x(one of)4.152 w
3.912 x(the routers.)4.152 w( If all)3.912 w 4.152 x(the hosts)3.912 w
4.152 x(are temporarily)3.912 w 4.152 x(unable to)3.912 w nl 24 x
(accept the message, it is delivered to one of a list of fallback hosts, if )
3.432 w (con\256gured.)3.432 w cr 222.25 24 r(7)s
pagesave restore xpage

%%Page: 8 8
/ppend true def /pagesave save def lmv ptop
3 f 0 Sg(12. Exim logs)3.432 w 0 f cr 15.36 y(Exim writes to three dif)
3.432 w -0.198 x(ferent log \256les:)3.432 w cr 6.6 18 r(\267 The)13.55 w
( main log)5.112 w 5.352 x(records the arrival of each)5.112 w 5.352 x
(message and the result of)5.112 w 5.352 x(each delivery attempt in)
5.112 w( a)5.352 w 12.24 snl nl 24 x(single line)3.912 w
( in each case. The format is as compact as possible, in an attempt to keep )
3.672 w (down the)3.672 w( size)3.432 w cr 24 12 r
(of log \256les. A number of other events are also recorded in the main log.)
3.432 w cr 6.6 18.24 r(\267 The)13.55 w 4.632 x
(reject log records information from)4.392 w 4.632 x
(messages that are rejected because)4.392 w 4.632 x(their return paths are)
4.392 w 12 snl nl 24 x(invalid \(a con\256gurable option\), or)5.832 w
5.592 x(the sender or sending host appears in a blocking)5.832 w 5.592 x
(list. The)5.832 w 12.24 snl nl 24 x(headers are written)4.632 w 4.392 x
(to this)4.632 w 4.392 x(log if they)4.632 w 4.392 x(have been)4.632 w
4.392 x(read, following)4.632 w 4.392 x(a copy of)4.632 w 4.392 x
(the one-line)4.632 w( message)4.392 w cr 24 12 r
(that is also written to the main log.)3.432 w cr 6.6 18.24 r(\267 The)
13.55 w( panic log is written to when Exim suf)3.432 w -0.198 x
(fers a disaster and has to bomb out.)3.432 w cr 18.24 y
(A utility script for)3.672 w 3.432 x
(renaming and compressing the main and reject logs)3.672 w 3.432 x
(each night is provided. There)3.672 w( are)3.432 w 12 snl nl
(also scripts for extracting statistics from log \256les and)4.872 w
4.632 x(for searching log \256les for message entries that)4.872 w 12.24 snl
nl(match a)4.152 w 4.392 x(given pattern.)4.152 w 4.392 x(For example,)
4.152 w 4.392 x(one can)4.152 w 4.392 x(pull out)4.152 w 4.392 x(all entries)
4.152 w 4.392 x(relating to)4.152 w 4.392 x(messages for)4.152 w 4.392 x
(a given)4.152 w( local)4.392 w 12 snl nl(part.)s cr 18.24 y(It is)3.432 w
3.672 x(possible to)3.432 w 3.672 x(con\256gure Exim to)3.432 w 3.672 x
(write its)3.432 w 3.672 x(logging data to)3.432 w 3.672 x(syslog instead)
3.432 w 3.672 x(of, or as)3.432 w 3.672 x(well as,)3.432 w 3.672 x
(to local \256les.)3.432 w 3 f cr 30.24 y(13. Exim databases)3.432 w 0 f cr
15.12 y(Exim maintains)3.672 w 3.912 x(a number of)3.672 w 3.912 x
(databases in)3.672 w 3.912 x(DBM \256les to)3.672 w 3.912 x(help it perform)
3.672 w( ef)3.912 w -0.198 x(\256cient mail)3.672 w( delivery)3.912 w
-0.715 x(. In ef)3.672 w -0.198 x(fect,)s 12.24 snl nl(the \256les)4.632 w
( contain hints, and if they are lost it is not a disaster \261)4.392 w
( Exim')5.732 w -0.605 x(s performance just suf)4.392 w -0.198 x(fers a bit.)
4.392 w cr 12 y(The databases are:)3.432 w cr 6.6 18.24 r(\267 )13.55 w 3 f
(r)s -0.198 x(etry)s 0 f(: This)6.792 w( contains information)6.552 w
6.792 x(about each failing remote)6.552 w 6.792 x(host and temporary failing)
6.552 w( local)6.792 w 12 snl nl 24 x(delivery \261)3.912 w 5.012 x(when the)
3.912 w 4.152 x(\256rst failure was detected, when the delivery \(or)
3.912 w 4.152 x(directing or routing\) was last)3.912 w 12.24 snl nl
24 x
(tried, and when it should next be tried. More details about retry algorithm)
3.432 w (s are given below)3.432 w -0.715 x(.)s cr 6.6 18.24 r(\267 )
13.55 w 3 f(wait-smtp)s 0 f(: This)3.912 w 4.152 x(contains information)
3.912 w 4.152 x(about messages)3.912 w 4.152 x(that are)3.912 w 4.152 x
(waiting for)3.912 w 4.152 x(particular hosts after)3.912 w( an)4.152 w cr
24 12 r(SMTP delivery failure \(see the next section\).)3.432 w cr 6.6
18.24 r(\267 )13.55 w 3 f(r)s -0.198 x(eject)s 0 f
(: This contains information about SMTP message rejections \(see below\).)
3.432 w cr 6.6 18 r(\267 )13.55 w 3 f(serialize-<)s 1 f(xxx)s 3 f(>)s 0 f
(: Exim can be con\256gured to serialize connections to certain hosts and so)
4.392 w (me)4.392 w( kinds)4.152 w nl 24 x(of queue run,)3.432 w 3.672 x
(in other words, do only)3.432 w 3.672 x(one of them at)3.432 w 3.672 x
(a time. The data for)3.432 w 3.672 x(implementing this is kept)3.432 w
12 snl nl 24 x(in database \256les whose names begin with )3.432 w 6 f
(serialize-)s 0 f(.)s cr 18.24 y(There is a)5.352 w 5.112 x
(utility program that lists)5.352 w 5.112 x(the contents of one)5.352 w
5.112 x(of these databases, and)5.352 w 5.112 x(another that allows)
5.352 w 12.24 snl nl(manual modi\256cations to)5.112 w 4.872 x(be applied)
5.112 w 4.872 x(in some)5.112 w 4.872 x(cases. Database)5.112 w 4.872 x
(records are timestamped,)5.112 w 4.872 x(and there)5.112 w 4.872 x(is a)
5.112 w 12 snl nl(utility that)4.632 w 4.872 x(removes records)4.632 w
4.872 x(that are)4.632 w 4.872 x(older than)4.632 w 4.872 x(a given)
4.632 w 4.872 x(period, and)4.632 w 4.872 x(also cleans)4.632 w 4.872 x(up )
4.632 w 3 f(wait-smtp )4.872 w 0 f(records)s nl(containing references to)
3.672 w 3.432 x(messages that)3.672 w 3.432 x(no longer)3.672 w 3.432 x
(exist. Running this)3.672 w 3.432 x(daily or)3.672 w 3.432 x(weekly should)
3.672 w( be suf)3.432 w -0.198 x(\256cient)s 12.24 snl nl
(to keep the \256les reasonably tidy)3.432 w -0.715 x(.)s cr 18.24 y
(Exim can use any one of the following)3.672 w 3.432 x(DBM libraries: )
3.672 w 3 f(ndbm)s 0 f(, )3.672 w 3 f(gdbm)s 0 f(, )3.672 w 3 f(DB 1.85)
3.672 w 0 f(, )3.672 w 3 f(DB 2.)3.672 w 1 f(x)s 0 f(, )3.432 w 3 f(DB 3.)
3.672 w 1 f(x)s 0 f(, or)3.672 w 3 f( tdb)3.432 w 0 f(.)s 3 f cr 30.24 y
(14. SMTP batching)3.432 w 0 f cr 15.12 y(When an)5.112 w( SMTP delivery)
4.872 w 5.112 x(attempt fails, causing)4.872 w 5.112 x(the message to)
4.872 w 5.112 x(be deferred till)4.872 w( later)5.112 w -0.44 x
(, Exim updates a)4.872 w nl(DBM database that contains records keyed by)
4.632 w 4.392 x(host name plus IP address. Each record holds a list of)
4.632 w cr 12 y(messages that are waiting for that host and address.)
3.432 w cr 18.24 y(When an)4.632 w 4.392 x(SMTP delivery)4.632 w 4.392 x
(succeeds, Exim)4.632 w 4.392 x(consults the)4.632 w 4.392 x(database to)
4.632 w 4.392 x(see if)4.632 w 4.392 x(there are)4.632 w 4.392 x
(any other messages)4.632 w 12 snl nl(waiting for the same host)4.392 w
4.152 x(and address. If it)4.392 w 4.152 x(\256nds any)4.392 w -0.715 x
(, it creates a)4.392 w 4.152 x(new Exim process and)4.392 w 4.152 x
(passes it the)4.392 w 12.24 snl nl(open SMTP)4.392 w 4.632 x(channel and a)
4.392 w 4.632 x(message identi\256cation. The new)4.392 w 4.632 x
(process then delivers)4.392 w 4.632 x(the waiting message)4.392 w 12 snl nl
(down the)3.912 w 3.672 x(existing channel)3.912 w 3.672 x(and may)3.912 w
3.672 x(in turn)3.912 w 3.672 x(cause the)3.912 w 3.672 x(creation of)
3.912 w 3.672 x(yet another)3.912 w 3.672 x(process. Any)3.912 w 3.672 x
(other waiting)3.912 w 12.24 snl nl(addresses in)3.912 w 4.152 x(the message)
3.912 w 4.152 x(are skipped. The)3.912 w 4.152 x(maximum number)3.912 w
4.152 x(of messages sent)3.912 w 4.152 x(down one connection)3.912 w( is)
4.152 w cr 12 y(con\256gurable.)s cr 18.24 y(This scheme achieves)4.392 w
4.632 x(some SMTP ef)4.392 w -0.198 x(\256ciency when a)4.392 w 4.632 x
(number of messages have been queued)4.392 w 4.632 x(up for a)4.392 w cr
12 y(given host, without the overhead of a heavyweight queueing apparatus.)
3.432 w cr 222.25 24.24 r(8)s
pagesave restore xpage

%%Page: 9 9
/ppend true def /pagesave save def lmr ptop
3 f 0 Sg(15. Retries)3.432 w 0 f cr 15.36 y(When a)5.352 w 5.112 x
(message cannot immediately)5.352 w 5.112 x(be directed, routed,)5.352 w
5.112 x(or delivered, it)5.352 w 5.112 x(remains on the)5.352 w 5.112 x
(queue and)5.352 w 12.24 snl nl(another delivery attempt)4.632 w 4.392 x
(occurs at a)4.632 w 4.392 x(later time.)4.632 w 4.392 x(While failures to)
4.632 w 4.392 x(deliver to remote)4.632 w 4.392 x(hosts are)4.632 w 4.392 x
(the most)4.632 w 12 snl nl(common cause of)4.632 w 4.872 x
(this, it is also possible for)4.632 w 4.872 x(a message to be deferred as)
4.632 w 4.872 x(a result of temporary local)4.632 w 12.24 snl nl
(delivery failure, or following)4.872 w 4.632 x(directing or routing.)
4.872 w 4.632 x(A local delivery)4.872 w 4.632 x(can fail if)4.872 w
4.632 x(the user is)4.872 w 4.632 x(over quota,)4.872 w nl(while directing)
4.152 w 3.912 x(can be delayed if)4.152 w 3.912 x(a user)4.152 w( ')
0.407 w -0.605 x(s home directory)4.152 w 3.912 x(is not available)4.152 w
3.912 x(\(for example, a missing)4.152 w( NFS)3.912 w 12 snl nl
(mount\), and therefore the)3.672 w 3.432 x(existence of a )3.672 w 3 f
(.forward )3.432 w 0 f(\256le cannot be tested.)3.672 w 3.432 x
(Routing can be)3.672 w 3.432 x(delayed by)3.672 w( DNS)3.432 w 12.24 snl nl
(timeouts.)s cr 18.24 y(Exim can)3.912 w 3.672 x(be given)3.912 w 3.672 x
(a set)3.912 w 3.672 x(of rules)3.912 w( which specify)3.672 w 3.912 x
(how often)3.672 w 3.912 x(to retry)3.672 w 3.912 x(deferred addresses, and)
3.672 w 3.912 x(when to)3.672 w( give)3.912 w nl(up. These rules apply)
3.912 w 3.672 x(to directing and routing as well as)3.912 w 3.672 x
(to transporting, and are keyed by \(wildcarded\))3.912 w 12 snl nl
(domain name or)3.432 w -0.44 x
(, for local users, by local part and domain name, either of which can be wi)
3.432 w (ldcarded.)3.432 w cr 18.48 y(Each rule)5.112 w 4.872 x
(is actually a)5.112 w 4.872 x(sequential list of)5.112 w 4.872 x
(subrules, which are)5.112 w 4.872 x(applied successively as time)5.112 w
4.872 x(passes. At)5.112 w nl(present there are two kinds of subrule: \256xe)
6.792 w (d)6.792 w 6.552 x
(interval, and geometrically increasing interval. For)6.792 w 12.24 snl nl
(example, it)4.392 w 4.152 x(is possible)4.392 w 4.152 x(to specify)
4.392 w 4.152 x(a rule such)4.392 w 4.152 x(as `retry)4.392 w 4.152 x
(every 15)4.392 w 4.152 x(minutes for)4.392 w 4.152 x(2 hours; then)
4.392 w 4.152 x(increase the)4.392 w nl(interval between retries)3.912 w
3.672 x(by a)3.912 w 3.672 x(factor of)3.912 w 3.672 x(1.5 each time)
3.912 w 3.672 x(until 8)3.912 w 3.672 x(hours have)3.912 w 3.672 x
(passed; then)3.912 w 3.672 x(retry every 8)3.912 w( hours)3.432 w 12 snl nl
(until 4)3.912 w 4.152 x(days have passed; then)3.912 w 4.152 x
(give up'. The)3.912 w 4.152 x(times are measured)3.912 w 4.152 x
(from when the address)3.912 w 4.152 x(\256rst failed, so,)3.912 w 12.24 snl
nl(for example,)3.912 w 3.672 x(if a)3.912 w( host has)3.672 w 3.912 x
(been down for)3.672 w 3.912 x(two days, new)3.672 w 3.912 x
(messages will immediately)3.672 w 3.912 x(go on)3.672 w 3.912 x(to the)
3.672 w( 8-hour)3.432 w cr 12.24 y(retry schedule.)3.432 w cr 18.24 y
(Exim does not have an elaborate series of alarm clocks to cause retries to )
3.432 w (happen exactly on schedule. A)3.432 w 12 snl nl
(queue-runner process is started periodically)5.112 w -0.715 x
(, to attempt delivery)5.112 w -0.715 x(, one by one, of messages containing)
5.112 w 12.24 snl nl(addresses that)5.352 w( have passed)5.112 w 5.352 x
(their next retry)5.112 w 5.352 x(time. If such)5.112 w 5.352 x
(an address fails)5.112 w 5.352 x(again, a new)5.112 w 5.352 x(retry time is)
5.112 w nl(computed, and so subsequent messages queued for)5.352 w 5.592 x
(the same address get skipped. The queue is not)5.352 w nl
(processed sequentially)4.872 w -0.715 x(, but in a `random' order)4.872 w
-0.44 x(, to)4.872 w 4.632 x(prevent one rogue message that causes a)
4.872 w( problem)4.632 w 12 snl nl
(blocking other messages to the same destination for ever)3.432 w -0.605 x(.)
s cr 18.24 y(When the)3.672 w 3.432 x(maximum time)3.672 w( for retrying)
3.432 w 3.672 x(has passed, pending)3.432 w 3.672 x(addresses are failed.)
3.432 w( However)3.672 w -0.44 x(, a next try time)3.432 w 12.24 snl nl
(is still)3.432 w 3.672 x(computed from)3.432 w 3.672 x(the \256nal subrule.)
3.432 w 3.672 x(Until that time)3.432 w 3.672 x(is reached,)3.432 w 3.672 x
(any new messages)3.432 w 3.672 x(for the address are)3.432 w nl
(immediately failed. When the next)3.912 w 3.672 x(try time is passed,)
3.912 w 3.672 x(one further delivery attempt)3.912 w 3.672 x
(is made; if this fails,)3.912 w cr 12 y
(a new next try time is computed, and so on.)3.432 w cr 18.24 y
(The increasing number)5.112 w 4.872 x(of small computers)5.112 w 4.872 x
(on the Internet)5.112 w 4.872 x(has caused there)5.112 w 4.872 x(to be a)
5.112 w 4.872 x(lot of)5.112 w( messages)4.872 w nl
(addressed to hosts that are never going)5.112 w 5.352 x
(to listen. The retry logic described above should reduce the)5.112 w nl
(amount of)5.352 w 5.112 x(wasted time)5.352 w 5.112 x(spent on)5.352 w
5.112 x(trying to)5.352 w( deliver such)5.112 w 5.352 x(messages. However)
5.112 w -0.44 x(, some)5.352 w 5.112 x(administrators are)5.352 w 12 snl nl
(unhappy about)5.112 w 5.352 x(this rather draconian)5.112 w 5.352 x
(approach, which can)5.112 w 5.352 x(cause an address)5.112 w 5.352 x
(to be failed without)5.112 w( any)5.352 w 12.24 snl nl
(deliveries being attempted.)4.152 w 3.912 x(Exim can)4.152 w 3.912 x
(alternatively be)4.152 w 3.912 x(con\256gured always to)4.152 w 3.912 x
(try at)4.152 w 3.912 x(least once)4.152 w 3.912 x(those hosts)4.152 w nl
(whose last)3.432 w 3.672 x(failure was before the)3.432 w 3.672 x
(arrival of the)3.432 w 3.672 x(message. This option increases)3.432 w
3.672 x(the number of attempts to)3.432 w cr 12.24 y(deliver to dead hosts.)
3.432 w cr 18.24 y(Retry rules)3.672 w 3.912 x(can be predicated)3.672 w
3.912 x(on particular errors as)3.672 w 3.912 x(well as on)3.672 w 3.912 x
(domain names, and)3.672 w 3.912 x(for domains that)3.672 w( are)3.912 w
12 snl nl(looked up in the)3.912 w 3.672 x(DNS, further discrimination)
3.912 w 3.672 x(on whether MX)3.912 w 3.672 x(records were used or)3.912 w
3.672 x(not is also)3.912 w( possible.)3.432 w 12.24 snl nl
(Thus it is possible to)3.912 w 4.152 x
(treat `connection refused' and `connection timed out' dif)3.912 w -0.198 x
(ferently)s -0.715 x(, or)4.152 w( to distinguish)3.912 w nl
(between `connection)5.592 w( refused and)5.352 w 5.592 x(there was only an)
5.352 w 5.592 x(A record' and `connection)5.352 w 5.592 x
(refused from a host)5.352 w cr 12 y(pointed to by an MX record'.)3.432 w cr
18.24 y(When a local)4.152 w 3.912 x(delivery fails because)4.152 w 3.912 x
(a user is)4.152 w 3.912 x(over quota, the)4.152 w 3.912 x(retry rule)
4.152 w 3.912 x(can be predicated)4.152 w 3.912 x(on the length)4.152 w nl
(of time)3.432 w 3.672 x(since the mailbox)3.432 w 3.672 x(was last read.)
3.432 w 3.672 x(For example, if the)3.432 w 3.672 x(mailbox has been)
3.432 w 3.672 x(recently read, the delivery)3.432 w nl
(can be retried for a while; otherwise it can be failed quickly)3.432 w
-0.715 x(.)s 3 f cr 30.48 y(16. Header r)3.432 w -0.198 x(ewriting)s 0 f cr
15.12 y(There are)3.912 w( those who ar)3.672 w -0.198 x(gue that header)
3.672 w 3.912 x(rewriting is a totally Bad Thing; there)3.672 w 3.912 x
(are others who swear)3.672 w( they)3.432 w nl
(cannot live without it. Exim provides the facility \261)3.432 w 4.532 x
(you do not have to use it!)3.432 w cr 18.24 y(Exim can be con\256gured)
4.632 w 4.392 x(to rewrite the)4.632 w 4.392 x(address portions of)4.632 w
4.392 x(headers when a message)4.632 w 4.392 x(is received. From)4.632 w nl
(release 3.20, Exim can also be con\256gured to)6.312 w 6.552 x
(rewrite addresses in header lines at transport time.)6.312 w nl
(Rewriting rules can be tar)3.672 w -0.198 x(geted at individual)3.672 w
3.432 x(headers and the envelope \256elds; it)3.672 w 3.432 x
(is possible, for)3.672 w( example,)3.432 w cr 12 y
(just to rewrite the `From' header and no others.)3.432 w cr 222.25
24.24 r(9)s
pagesave restore xpage

%%Page: 10 10
/ppend true def /pagesave save def lmv ptop
0 f 0 Sg(Rewriting rules)6.312 w( are keyed by local part and)6.072 w
6.312 x(domain, either of which can be wildcarded,)6.072 w 6.312 x(and the)
6.072 w cr 12.72 y
(replacement text is a general expansion string which can contain \256le loo)
3.912 w (kups. This makes it possible to)3.912 w 12.48 snl nl
(replace login names)4.872 w 4.632 x(by `friendly')4.872 w 4.632 x(names in)
4.872 w 4.632 x(outgoing addresses)4.872 w 4.632 x(via a)4.872 w 4.632 x
(DBM lookup,)4.872 w 4.632 x(for example.)4.872 w( The)4.632 w 12.72 snl nl
(other most common rewriting requirement)5.832 w 5.592 x(of replacing )
5.832 w 6 f(*.foo.bar )5.832 w 0 f(with )5.832 w 6 f(foo.bar )5.832 w 0 f
(is also easily)5.832 w cr 12.48 y(handled.)s cr 18.96 y
(Headers are also automatically rewritten by Exim in two cases:)3.432 w cr
6.6 18.96 r(\267 If)13.55 w 3.672 x(a locally-generated)3.432 w 3.672 x
(message contains)3.432 w 3.672 x(addresses without)3.432 w 3.672 x
(domains, a)3.432 w 3.672 x(con\256gured qualifying domain)3.432 w 12.48 snl
nl 24 x(is added)3.912 w( to each of them. It is also)3.672 w 3.912 x
(possible to specify which remote systems are permitted)3.672 w 3.912 x
(to send)3.432 w cr 24 12.72 r
(messages containing unquali\256ed addresses. These too get quali\256ed on r)
3.432 w (eception.)3.432 w cr 6.6 18.96 r(\267 Routing)13.55 w 4.392 x(of a)
4.152 w 4.392 x(domain may reveal)4.152 w 4.392 x(that it)4.152 w 4.392 x
(was only a)4.152 w 4.392 x(partial domain,)4.152 w 4.392 x(in which case)
4.152 w 4.392 x(the headers are)4.152 w nl 24 x(rewritten to)5.832 w
5.592 x(contain the full domain.)5.832 w 5.592 x(For example, as a)5.832 w
5.592 x(result of routing, an)5.832 w 5.592 x(address such as)5.832 w 6 f
12.72 snl nl 24 x(xxx@foo )3.432 w 0 f(may turn into )3.432 w 6 f
(xxx@foo.bar.ac.uk)s 0 f(.)s cr 18.96 y(In addition)4.152 w 3.912 x
(to the rewriting)4.152 w 3.912 x(rules, Exim can)4.152 w 3.912 x
(be con\256gured to)4.152 w 3.912 x(add or delete)4.152 w 3.912 x
(speci\256c headers at)4.152 w( transport)3.912 w 12.48 snl nl
(time. The con\256guration)5.352 w 5.112 x(can either)5.352 w 5.112 x
(be on the)5.352 w 5.112 x(transport, in)5.352 w 5.112 x(which case it)
5.352 w 5.112 x(applies to)5.352 w 5.112 x(all copies of)5.352 w( the)
5.112 w 12.72 snl nl(message sent)3.912 w 4.152 x(by that transport,)
3.912 w 4.152 x(or on a)3.912 w 4.152 x(director or router)3.912 w -0.44 x
(, in)4.152 w( which case it)3.912 w 4.152 x(applies only to)3.912 w
4.152 x(copies of the)3.912 w cr 12.48 y
(message that are associated with the addresses that the router or director )
3.432 w (handled.)3.432 w 3 f cr 31.68 y(17. Host veri\256cation)3.432 w 0 f
cr 15.84 y(Exim can)3.912 w 3.672 x(be con\256gured)3.912 w 3.672 x
(to accept)3.912 w 3.672 x(incoming SMTP)3.912 w 3.672 x(calls from)
3.912 w 3.672 x(certain hosts)3.912 w( only)3.672 w -0.715 x(, or)3.912 w
3.672 x(it can)3.912 w 3.672 x(be con\256gured)3.912 w 12.48 snl nl
(to reject calls)3.912 w 4.152 x(from certain hosts. In)3.912 w 4.152 x
(both cases, the test may)3.912 w 4.152 x(include an RFC 1413)3.912 w
4.152 x(identi\256cation check.)3.912 w 12.72 snl nl(A system that)4.392 w
4.152 x(gets all its)4.392 w 4.152 x(mail via a)4.392 w 4.152 x
(central hub might)4.392 w 4.152 x(want to lock)4.392 w 4.152 x(out the rest)
4.392 w 4.152 x(of the world,)4.392 w 4.152 x(while a)4.392 w nl
(number of systems under one management might want to exchange mail only via)
4.392 w ( the)4.392 w 4.632 x(standard mailer)4.392 w -0.44 x(,)s cr
12.48 y
(and hence reject mail from all but certain speci\256ed ids within the group)
3.432 w (.)3.432 w cr 18.96 y(Hosts for rejection)3.912 w 3.672 x
(can be identi\256ed explicitly)3.912 w -0.715 x(, or)3.672 w( via the RBL)
3.912 w 3.672 x(DNS databases. Alternatively)3.912 w -0.715 x(, the)
3.912 w( SMTP)3.672 w cr 12.72 y
(AUTH extension mechanism may be used for authenticating hosts.)3.432 w cr
18.72 y(When a)3.912 w 3.672 x(host fails)3.912 w 3.672 x(an acceptance)
3.912 w 3.672 x(test, Exim)3.912 w 3.672 x(can either give)3.912 w 3.672 x
(an error)3.912 w 3.672 x(code immediately)3.912 w 3.672 x(on connection,)
3.912 w( or)3.672 w nl(allow the)5.112 w( connection to)4.872 w 5.112 x
(proceed and then give)4.872 w 5.112 x(error codes to)4.872 w 5.112 x
(all the message')4.872 w -0.605 x(s recipients.)4.872 w 5.112 x(The latter)
4.872 w 12.48 snl nl(approach is)3.672 w 3.432 x(useful when)3.672 w
3.432 x(using the)3.672 w 3.432 x(mechanism to)3.672 w 3.432 x
(reject unsolicited)3.672 w 3.432 x(junk mail and)3.672 w 3.432 x
(mail bombs,)3.672 w( because it)3.432 w 12.72 snl nl
(normally prevents the sender from trying again with the same message.)
3.432 w 3 f cr 31.44 y(18. SMTP port r)3.432 w -0.198 x(eservation)s 0 f cr
16.08 y(The maximum)4.392 w( number of simultaneous incoming SMTP)4.152 w
4.392 x(calls can be set, and in)4.152 w 4.392 x(addition, a number of)
4.152 w 12.48 snl nl(them can be)5.352 w 5.592 x
(reserved for particular hosts)5.352 w 5.592 x(or particular IP networks. It)
5.352 w 5.592 x(is also possible to specify)5.352 w( a)5.592 w cr 12.72 y
(system load value above which only calls from the reserved hosts are accept)
3.432 w (ed.)3.432 w 3 f cr 31.44 y(19. Contr)3.432 w -0.198 x(ol of r)
3.432 w -0.198 x(elaying)s 0 f cr 15.84 y(A host)3.672 w 3.432 x(is said)
3.672 w( to act)3.432 w 3.672 x(as a relay)3.432 w 3.672 x(if it)3.432 w
3.672 x(accepts an incoming)3.432 w 3.672 x(message from an)3.432 w 3.672 x
(external host)3.432 w 3.672 x(and delivers it to)3.432 w 12.72 snl nl
(an external host. Unscrupulous)5.352 w 5.592 x
(persons have been known to use)5.352 w 5.592 x
(unsuspecting hosts as relays in an)5.352 w 12.48 snl nl(attempt to)
4.872 w
( disguise the origin of messages. An Exim host can be con\256gured to accep)
4.632 w (t mail from)4.632 w( any)4.872 w 12.72 snl nl
(host for onward transmission to)3.912 w 3.672 x
(a limited set of domains only)3.912 w -0.715 x(, and to accept)3.912 w
3.672 x(mail only from a speci\256ed)3.912 w 12.48 snl nl(list of)4.392 w
( hosts or networks for onward transmission to any)4.152 w 4.392 x
(domain. Such hosts may also be identi\256ed by)4.152 w 12.72 snl nl
(means of)3.672 w 3.912 x(the SMTP)3.672 w 3.912 x(AUTH mechanism.)3.672 w
3.912 x(It is)3.672 w 3.912 x(also possible)3.672 w 3.912 x(to enable)
3.672 w 3.912 x(relaying to)3.672 w 3.912 x(any domain whose)3.672 w( MX)
3.912 w nl
(records point to the local host, without having to list the domains explici)
3.432 w (tly)3.432 w -0.715 x(.)s 3 f cr 31.44 y(20. Sender veri\256cation)
3.432 w 0 f cr 15.84 y(The return path of a message \(also known)3.672 w
3.432 x(as the `envelope sender)3.672 w 0.407 x('\) is used when Exim)
3.672 w 3.432 x(has to return)3.672 w( an)3.432 w nl(error message.)
3.672 w 3.912 x(If this is)3.672 w 3.912 x(a bad address, the)3.672 w
3.912 x(error message cannot)3.672 w 3.912 x(be delivered, and)3.672 w
3.912 x(the postmaster has)3.672 w( to)3.912 w cr 12.48 y(sort things out.)
3.432 w cr 219.5 24.72 r(10)s
pagesave restore xpage

%%Page: 11 11
/ppend true def /pagesave save def lmr ptop
0 f 0 Sg(Sender veri\256cation \(a)3.672 w 3.912 x
(con\256gurable option that applies)3.672 w 3.912 x(to SMTP input\) is)
3.672 w 3.912 x(intended to pass this)3.672 w 3.912 x(work to a)3.672 w
12.72 snl nl(foreign postmaster)3.912 w -0.44 x(, by)3.672 w 3.912 x
(refusing to accept)3.672 w 3.912 x(the message in)3.672 w 3.912 x
(the \256rst place.)3.672 w 3.912 x(There is)3.672 w 3.912 x
(an exception list)3.672 w( which)3.912 w cr 12.96 y
(can specify certain hosts \(with optional RFC 1413 identi\256cations\) that)
3.432 w ( are allowed to bypass the check.)3.432 w cr 19.2 y(A certain)
5.352 w 5.112 x(amount of SP)5.352 w -1.012 x(AM mail)5.352 w 5.112 x
(contains invalid return paths.)5.352 w 5.112 x(Apart from this, there)
5.352 w 5.112 x(are two main)5.352 w nl
(causes: miscon\256gured mailers \(gateways in particular\), and)5.832 w
5.592 x(users fooling around with mail. Sender)5.832 w nl
(veri\256cation catches)4.632 w 4.872 x(both of)4.632 w 4.872 x(them. It)
4.632 w 4.872 x(operates by)4.632 w 4.872 x(passing the sender)4.632 w
4.872 x(address through)4.632 w 4.872 x(the directors)4.632 w( and)4.872 w cr
12.72 y
(routers in veri\256cation mode; if this fails, the message is not accepted.)
3.432 w cr 19.2 y(The \256rst thing foreign)3.912 w 3.672 x
(postmasters ask when they learn about an)3.912 w 3.672 x
(apparently legitimate rejected message)3.912 w 12.96 snl nl
(is `What were the headers?'. For)3.672 w 3.432 x(this reason, and also to)
3.672 w 3.432 x(collect evidence in cases of mail)3.672 w( for)3.432 w
-0.198 x(gery)s -0.715 x(, Exim)3.432 w 12.72 snl nl(does not)5.352 w
5.112 x(initially reject)5.352 w 5.112 x(a message)5.352 w 5.112 x
(after the )5.352 w 8 f(MAIL FROM)3.696 w 0 f 5.352 x(command in)5.112 w
5.352 x(the SMTP)5.112 w( session. It)5.352 w 5.112 x(reads the)5.352 w nl
(message, so as to be able to)3.912 w 3.672 x
(write the headers to the rejection log,)3.912 w 3.672 x
(and then gives a hard error)3.912 w( response)3.672 w cr 12.96 y
(to the sending host.)3.432 w cr 19.2 y(Unfortunately)s -0.715 x(, several)
3.912 w 3.672 x(mailers believe)3.912 w( that any)3.672 w 3.912 x
(error response)3.672 w 3.912 x(after the data)3.672 w 3.912 x(for a)
3.672 w 3.912 x(message has been)3.672 w( sent)3.912 w nl
(indicates a temporary error)4.152 w -0.605 x(. Consequently)4.152 w
-0.715 x(, such)3.912 w( mailers will continue to try to send)4.152 w
3.912 x(a message that has)4.152 w nl(been rejected)5.112 w
( as described above. T)4.872 w -0.77 x
(o prevent this, whenever a message is rejected, Exim records the)4.872 w nl
(time, bad address, and host in a DBM database. If the)3.912 w 3.672 x
(same host sends the same bad address within 24)3.912 w 12.96 snl nl
(hours, it is rejected immediately at the )3.432 w 8 f(MAIL FROM)2.496 w 0 f
( command.)3.432 w cr 19.2 y(Sadly)s -0.715 x(, even this doesn')3.912 w
-0.198 x(t stop)3.672 w( some mailers from repeatedly trying)3.912 w
3.672 x(to send the message. As a last)3.912 w( resort,)3.672 w 12.72 snl nl
(if the same)4.632 w 4.392 x(host sends)4.632 w 4.392 x(the same)4.632 w
4.392 x(bad address)4.632 w 4.392 x(for a)4.632 w 4.392 x(third time)
4.632 w 4.392 x(in 24)4.632 w 4.392 x(hours, the)4.632 w 8 f 4.392 x
(MAIL FROM)3.216 w 0 f 4.632 x(command is)4.392 w nl(accepted, but)3.432 w
3.672 x(all subsequent)3.432 w 8 f 3.672 x(RCPT T)2.496 w -0.144 x(O )
3.672 w 0 f(commands are)3.432 w 3.672 x(rejected. If)3.432 w 3.672 x
(this does)3.432 w 3.672 x(not stop)3.432 w 3.672 x(a remote mailer)
3.432 w 3.672 x(then it)3.432 w cr 12.96 y(is badly broken.)3.432 w cr
19.2 y(If the)4.392 w 4.632 x(attempt to)4.392 w 4.632 x(verify the)
4.392 w 4.632 x(sender address)4.392 w 4.632 x(cannot be)4.392 w 4.632 x
(completed \(typically because)4.392 w 4.632 x(of a)4.392 w 4.632 x
(DNS timeout\))4.392 w nl(Exim returns a)5.352 w 5.112 x
(temporary error code)5.352 w 5.112 x(after the)5.352 w 8 f 5.112 x
(MAIL FROM)3.936 w 0 f 5.352 x(command, which)5.112 w( should cause)
5.352 w 5.112 x(the remote)5.352 w nl(mailer to)5.352 w 5.592 x(try again)
5.352 w( later)5.592 w -0.605 x(. However)5.352 w -0.44 x(, it)5.352 w
5.592 x(is possible)5.352 w 5.592 x(to con\256gure Exim)5.352 w 5.592 x
(to accept the)5.352 w 5.592 x(message in)5.352 w( these)5.592 w cr 12.72 y
(circumstances.)s cr 19.2 y(Many messages with)4.152 w 4.392 x
(bad return paths in)4.152 w 4.392 x(fact contain perfectly valid)4.152 w
4.392 x(`From' or `Reply-to' headers.)4.152 w( For)4.392 w 12.96 snl nl
(administrators that want)3.912 w 3.672 x(a quieter)3.912 w 3.672 x
(life, there)3.912 w 3.672 x(is a)3.912 w 3.672 x(con\256guration option)
3.912 w 3.672 x(which causes)3.912 w 3.672 x(Exim to)3.912 w 3.672 x
(check these)3.912 w 12.72 snl nl(headers if the return path)3.672 w
3.432 x(is bad, and if a good address is found, to)3.672 w 3.432 x
(use it to replace the return path.)3.672 w( The)3.432 w cr 12.72 y
(old value is retained in an header whose name begins with `X-'.)3.432 w 3 f
cr 32.16 y(21. Sender lock out)3.432 w 0 f cr 16.08 y(More and)4.152 w
( more unsolicited junk)3.912 w 4.152 x(mail is being seen on)3.912 w
4.152 x(the Internet. It is)3.912 w 4.152 x(sometimes useful to be able)
3.912 w( to)4.152 w nl
(reject messages \(from any host\) with particular sender addresses in the e)
5.112 w (nvelope. Exim can be con-)5.112 w nl(\256gured to)3.672 w
( reject messages whose sender)3.432 w 3.672 x
(addresses match certain patterns, either by failing the )3.432 w 8 f
(MAIL FROM)2.496 w 0 f 12.96 snl nl
(command, or \(because some mailers take no notice of that\) by failing all )
3.432 w 8 f(RCPT T)2.496 w -0.144 x(O )3.432 w 0 f(commands.)s 3 f cr
31.92 y(22. Receiver veri\256cation)3.432 w 0 f cr 16.08 y(Exim can)
3.912 w 4.152 x(be con\256gured so that)3.912 w 4.152 x
(it checks the addresses)3.912 w 4.152 x(given in incoming SMTP)3.912 w 8 f
4.152 x(RCPT T)2.736 w -0.144 x(O )4.152 w 0 f(commands as)3.912 w 12.72 snl
nl(they are)4.632 w( received. A)4.392 w 4.632 x(failing address can)
4.392 w 4.632 x(be immediately rejected,)4.392 w 4.632 x(or it can)4.392 w
4.632 x(be logged and)4.392 w 4.632 x(accepted. If)4.392 w 12.96 snl nl
(veri\256cation cannot)3.432 w 3.672 x(be completed)3.432 w 3.672 x
(\(typically because)3.432 w 3.672 x(of a)3.432 w 3.672 x
(DNS timeout\) either)3.432 w 3.672 x(a temporary)3.432 w 3.672 x
(error code can)3.432 w 12.72 snl nl
(be given, or the address can be logged and accepted.)3.432 w 3 f cr
31.92 y(23. The `per)3.432 w -0.198 x(cent hack')3.432 w 0 f cr 16.08 y
(The so-called `percent)3.672 w 3.432 x(hack' is)3.672 w 3.432 x(the feature)
3.672 w 3.432 x(of mailers)3.672 w 3.432 x(whereby a)3.672 w 3.432 x
(local part)3.672 w 3.432 x(containing a)3.672 w( percent sign gets)
3.432 w 12.96 snl nl(interpreted as an entire)5.112 w 4.872 x
(new address, with the percent replaced by)5.112 w 4.872 x
(@. This is used for explicit mail)5.112 w 12.72 snl nl(routing and)
3.672 w( sometimes for testing.)3.432 w 3.672 x(In Exim, it is possible)
3.432 w 3.672 x(to con\256gure which local domains, if any)3.432 w -0.715 x
(, allow)3.432 w nl
(the `percent hack', though this is not recommended. Such usage, if)
4.392 w 4.152 x(con\256gured, is, however)4.392 w -0.44 x(, subject to)
4.392 w cr 12.96 y(the relay controls.)3.432 w cr 219.704 24.72 r(1)s
-0.407 x(1)s
pagesave restore xpage

%%Page: 12 12
/ppend true def /pagesave save def lmv ptop
3 f 0 Sg(24. Security)3.432 w 0 f cr 15.12 y(Exim is)4.632 w 4.392 x
(written as)4.632 w 4.392 x(a single)4.632 w 4.392 x(binary that has)
4.632 w 4.392 x(to run)4.632 w 4.392 x(setuid to root.)4.632 w 4.392 x(I did)
4.632 w 4.392 x(start of)4.632 w -0.198 x(f trying)4.392 w( to write)
4.632 w 4.392 x(it as)4.632 w( a)4.392 w 12 snl nl(number of dif)3.912 w
-0.198 x(ferent modules, but soon came to)3.912 w 3.672 x
(the conclusion that, for this design of mailer)3.912 w -0.44 x(, it)
3.672 w( was not)3.912 w nl(worth it,)4.392 w 4.152 x(because the functions)
4.392 w( don')4.152 w -0.198 x(t decompose cleanly)4.392 w -0.715 x(. For)
4.152 w( example, if)4.392 w 4.152 x(you want to)4.392 w 4.152 x
(verify addresses)4.392 w nl
(while receiving mail you need all the directing and routing apparatus to be)
3.432 w ( available.)3.432 w cr 18 y(Exim runs each local)5.832 w 6.072 x
(delivery in a separate process which)5.832 w 6.072 x
(is setuid to the relevant local)5.832 w( user)6.072 w -0.605 x(. In)
5.832 w nl(addition, it)4.632 w( can be con\256gured to)4.392 w 4.632 x
(run under a given non-root)4.392 w 4.632 x(uid \(and gid\) for much)
4.392 w 4.632 x(of the rest of the)4.392 w nl(time, and)3.912 w 3.672 x
(this is the recommended)3.912 w 3.672 x(practice. In particular)3.912 w
-0.44 x(, it)3.912 w 3.672 x(need not be root)3.912 w 3.672 x
(while sending or)3.912 w( receiving)3.672 w nl(SMTP mail.)3.432 w cr
18 y(Exim checks the permissions and owners of)3.912 w 4.152 x
(\256les to which messages are to be appended, and refuses to)3.912 w nl
(proceed with the delivery if things are not right.)3.432 w cr 18 y
(Delivery of)3.672 w 3.912 x(messages to)3.672 w 3.912 x(pipes or)3.672 w
3.912 x(\256les is)3.672 w 3.912 x(supported only)3.672 w 3.912 x(as a)
3.672 w 3.912 x(result of)3.672 w 3.912 x(expanding an)3.672 w 3.912 x
(address via)3.672 w 3.912 x(an alias)3.672 w nl(or a forward)4.632 w
4.392 x(\256le, provided)4.632 w 4.392 x(this is permitted)4.632 w 4.392 x
(by the)4.632 w 4.392 x(con\256guration. Externally)4.632 w 4.392 x
(generated local addresses)4.632 w nl(cannot specify)5.112 w 4.872 x
(\256les or pipes)5.112 w 4.872 x(\261 )1.1 w 5.112 x(no special)4.872 w
( action is)5.112 w 4.872 x(taken for addresses)5.112 w 4.872 x
(starting with the)5.112 w 4.872 x(\256le or)5.112 w( pipe)4.872 w nl
(characters, so they will usually fail.)3.432 w cr 18 y(Use of)3.912 w
4.152 x(the )3.912 w 8 f(VRFY)s 0 f(, )3.912 w 8 f(EXPN)s 0 f(, and)
4.152 w 8 f( ETRN )3.912 w 0 f(functions in)4.152 w( SMTP connections)
3.912 w 4.152 x(is controlled by)3.912 w 4.152 x(con\256guration options.)
3.912 w nl(The )3.432 w 8 f(DEBUG )3.432 w 0 f
(function is not supported at all.)3.432 w 3 f cr 30 y(25. The Exim Monitor)
3.432 w 0 f cr 15.12 y(A program)4.632 w
( for monitoring Exim and displaying information in an X window is provided.)
4.392 w ( This can be)4.392 w nl
(con\256gured to show stripcharts of incoming and outgoing)3.432 w 3.672 x
(mail in various categories. It also shows a `tail')3.432 w nl
(of the main log \256le, and information about messages on the queue.)
3.432 w cr 18 y(There is a menu of operations that)5.112 w 5.352 x
(can be performed by suitably privileged users. Messages can be)5.112 w nl
(frozen, thawed,)6.792 w( deleted, caused to)6.552 w 6.792 x
(be delivered, modi\256ed, or)6.552 w 6.792 x(returned to their senders from)
6.552 w( this)6.792 w nl(interface. However)3.432 w -0.44 x
(, all these actions can also be performed from the command line interface a)
3.432 w (s well.)3.432 w cr 214.35 18 r(* * *)6.6 w cr 219.5 345.36 r(12)s
nl
pagesave restore xpage
ppend {showpage} if
%%Trailer
%%Pages: 12
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin