Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 9adab841b2346eed28e146b23c25375c > files > 103

exim-doc-4.73-2.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "XSLT-compat">
<html lang="en-GB">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../common.css">
<meta name="author" content="The Exim Project. &lt;http://www.exim.org/&gt;">
<meta name="copyright" content="Copyright ©2010 The Exim Project. All rights reserved">
<meta name="description" content="Exim is a message transfer agent (MTA) developed at the University of Cambridge for use on Unix systems connected to the Internet.">
<meta name="keywords" content="exim,smtp,mta,email">
<meta name="robots" content="noodp,noydir,index,follow">
<meta name="viewport" content="width=device-width">
<title>1. Introduction</title>
<link rel="stylesheet" type="text/css" href="../../../../doc/chapter.css">
<link rel="canonical" href="http://www.exim.org/exim-html-current/doc/html/spec_html/ch01.html">
</head>
<body>
<h1 id="header"><a href="../../../..">Exim Internet Mailer</a></h1>
<div id="outer">
<ul id="nav_flow" class="nav">
<li><a href="../../../../index.html">Home</a></li>
<li><a href="../../../../mirrors.html">Download</a></li>
<li><a href="../../../../docs.html">Documentation</a></li>
<li><a href="../../../../maillist.html">Mailing Lists</a></li>
<li><a href="http://wiki.exim.org/">Wiki</a></li>
<li><a href="http://www.exim.org/bugzilla/">Bugs</a></li>
<li><a href="../../../../credits.html">Credits</a></li>
<li class="search"><form action="http://www.google.com/search" method="get">
<span class="search_field_container"><input type="search" name="q" placeholder="Search Docs" class="search_field"></span><input type="hidden" name="hl" value="en"><input type="hidden" name="ie" value="UTF-8"><input type="hidden" name="as_qdr" value="all"><input type="hidden" name="q" value="site:www.exim.org"><input type="hidden" name="q" value="inurl:exim-html-current">
</form></li>
</ul>
<div id="inner"><div id="content">
<a class="previous_page" href="index.html">&lt;-previous</a><a class="next_page" href="ch02.html">next-&gt;</a><div id="chapter" class="chapter">
<h2 id="CHID1" class="">Chapter 1 - Introduction</h2>
<p>
Exim is a mail transfer agent (MTA) for hosts that are running Unix or
Unix-like operating systems. It was designed on the assumption that it would be
run on hosts that are permanently connected to the Internet. However, it can be
used on intermittently connected hosts with suitable configuration adjustments.
</p>
<p>
Configuration files currently exist for the following operating systems: AIX,
BSD/OS (aka BSDI), Darwin (Mac OS X), DGUX, Dragonfly, FreeBSD, GNU/Hurd,
GNU/Linux, HI-OSF (Hitachi), HI-UX, HP-UX, IRIX, MIPS RISCOS, NetBSD, OpenBSD,
OpenUNIX, QNX, SCO, SCO SVR4.2 (aka UNIX-SV), Solaris (aka SunOS5), SunOS4,
Tru64-Unix (formerly Digital UNIX, formerly DEC-OSF1), Ultrix, and Unixware.
Some of these operating systems are no longer current and cannot easily be
tested, so the configuration files may no longer work in practice.
</p>
<p>
There are also configuration files for compiling Exim in the Cygwin environment
that can be installed on systems running Windows. However, this document does
not contain any information about running Exim in the Cygwin environment.
</p>
<p>
The terms and conditions for the use and distribution of Exim are contained in
the file <span class="docbook_filename">NOTICE</span>. Exim is distributed under the terms of the GNU General
Public Licence, a copy of which may be found in the file <span class="docbook_filename">LICENCE</span>.
</p>
<p>
The use, supply or promotion of Exim for the purpose of sending bulk,
unsolicited electronic mail is incompatible with the basic aims of the program,
which revolve around the free provision of a service that enhances the quality
of personal communications. The author of Exim regards indiscriminate
mass-mailing as an antisocial, irresponsible abuse of the Internet.
</p>
<p>
Exim owes a great deal to Smail 3 and its author, Ron Karr. Without the
experience of running and working on the Smail 3 code, I could never have
contemplated starting to write a new MTA. Many of the ideas and user interfaces
were originally taken from Smail 3, though the actual code of Exim is entirely
new, and has developed far beyond the initial concept.
</p>
<p>
Many people, both in Cambridge and around the world, have contributed to the
development and the testing of Exim, and to porting it to various operating
systems. I am grateful to them all. The distribution now contains a file called
<span class="docbook_filename">ACKNOWLEDGMENTS</span>, in which I have started recording the names of
contributors.
</p>
<div class="section">
<h3 id="SECID1" class="">1. Exim documentation</h3>
<p class="changed">

This edition of the Exim specification applies to version 4.73 of Exim.
Substantive changes from the 4.72 edition are marked in some
renditions of the document; this paragraph is so marked if the rendition is
capable of showing a change indicator.
</p>
<p>
This document is very much a reference manual; it is not a tutorial. The reader
is expected to have some familiarity with the SMTP mail transfer protocol and
with general Unix system administration. Although there are some discussions
and examples in places, the information is mostly organized in a way that makes
it easy to look up, rather than in a natural order for sequential reading.
Furthermore, the manual aims to cover every aspect of Exim in detail, including
a number of rarely-used, special-purpose features that are unlikely to be of
very wide interest.
</p>
<p>

An “easier” discussion of Exim which provides more in-depth explanatory,
introductory, and tutorial material can be found in a book entitled <span class="docbook_emphasis">The Exim
SMTP Mail Server</span> (second edition, 2007), published by UIT Cambridge
(<span class="docbook_emphasis"><a href="http://www.uit.co.uk/exim-book/">http://www.uit.co.uk/exim-book/</a></span>).
</p>
<p>
This book also contains a chapter that gives a general introduction to SMTP and
Internet mail. Inevitably, however, the book is unlikely to be fully up-to-date
with the latest release of Exim. (Note that the earlier book about Exim,
published by O’Reilly, covers Exim 3, and many things have changed in Exim 4.)
</p>
<p>

If you are using a Debian distribution of Exim, you will find information about
Debian-specific features in the file
<span class="docbook_filename">/usr/share/doc/exim4-base/README.Debian</span>.
The command <span class="docbook_command">man update-exim.conf</span> is another source of Debian-specific
information.
</p>
<p>



As the program develops, there may be features in newer versions that have not
yet made it into this document, which is updated only when the most significant
digit of the fractional part of the version number changes. Specifications of
new features that are not yet in this manual are placed in the file
<span class="docbook_filename">doc/NewStuff</span> in the Exim distribution.
</p>
<p>
Some features may be classified as “experimental”. These may change
incompatibly while they are developing, or even be withdrawn. For this reason,
they are not documented in this manual. Information about experimental features
can be found in the file <span class="docbook_filename">doc/experimental.txt</span>.
</p>
<p>
All changes to the program (whether new features, bug fixes, or other kinds of
change) are noted briefly in the file called <span class="docbook_filename">doc/ChangeLog</span>.
</p>
<p>

This specification itself is available as an ASCII file in <span class="docbook_filename">doc/spec.txt</span> so
that it can easily be searched with a text editor. Other files in the <span class="docbook_filename">doc</span>
directory are:
</p>
<table>




<tr>
<td><span class="docbook_filename">OptionLists.txt</span></td>
<td>list of all options in alphabetical order</td>
</tr>
<tr>
<td><span class="docbook_filename">dbm.discuss.txt</span></td>
<td>discussion about DBM libraries</td>
</tr>
<tr>
<td><span class="docbook_filename">exim.8</span></td>
<td>a man page of Exim’s command line options</td>
</tr>
<tr>
<td><span class="docbook_filename">experimental.txt</span></td>
<td>documentation of experimental features</td>
</tr>
<tr>
<td><span class="docbook_filename">filter.txt</span></td>
<td>specification of the filter language</td>
</tr>
<tr>
<td><span class="docbook_filename">Exim3.upgrade</span></td>
<td>upgrade notes from release 2 to release 3</td>
</tr>
<tr>
<td><span class="docbook_filename">Exim4.upgrade</span></td>
<td>upgrade notes from release 3 to release 4</td>
</tr>


</table>
<p>
The main specification and the specification of the filtering language are also
available in other formats (HTML, PostScript, PDF, and Texinfo). Section
<a href="ch01.html#SECTavail" title="1. Introduction">1.6</a> below tells you how to get hold of these.
</p>
</div>
<div class="section">
<h3 id="SECID2" class="">2. FTP and web sites</h3>
<p>


The primary site for Exim source distributions is currently the University of
Cambridge’s FTP site, whose contents are described in <span class="docbook_emphasis">Where to find the Exim
distribution</span> below. In addition, there is a web site and an FTP site at
<span class="docbook_option">exim.org</span>. These are now also hosted at the University of Cambridge. The
<span class="docbook_option">exim.org</span> site was previously hosted for a number of years by Energis
Squared, formerly Planet Online Ltd, whose support I gratefully acknowledge.
</p>
<p>


As well as Exim distribution tar files, the Exim web site contains a number of
differently formatted versions of the documentation. A recent addition to the
online information is the Exim wiki (<span class="docbook_emphasis"><a href="http://wiki.exim.org">http://wiki.exim.org</a></span>),
which contains what used to be a separate FAQ, as well as various other
examples, tips, and know-how that have been contributed by Exim users.
</p>
<p>

An Exim Bugzilla exists at <span class="docbook_emphasis"><a href="http://bugs.exim.org">http://bugs.exim.org</a></span>. You can use
this to report bugs, and also to add items to the wish list. Please search
first to check that you are not duplicating a previous entry.
</p>
</div>
<div class="section">
<h3 id="SECID3" class="">3. Mailing lists</h3>
<p>

The following Exim mailing lists exist:
</p>
<table>




<tr>
<td><span class="docbook_emphasis">exim-users@exim.org</span></td>
<td>General discussion list</td>
</tr>
<tr>
<td><span class="docbook_emphasis">exim-dev@exim.org</span></td>
<td>Discussion of bugs, enhancements, etc.</td>
</tr>
<tr>
<td><span class="docbook_emphasis">exim-announce@exim.org</span></td>
<td>Moderated, low volume announcements list</td>
</tr>
<tr>
<td><span class="docbook_emphasis">exim-future@exim.org</span></td>
<td>Discussion of long-term development</td>
</tr>


</table>
<p>
You can subscribe to these lists, change your existing subscriptions, and view
or search the archives via the mailing lists link on the Exim home page.

If you are using a Debian distribution of Exim, you may wish to subscribe to
the Debian-specific mailing list <span class="docbook_emphasis">pkg-exim4-users@lists.alioth.debian.org</span>
via this web page:
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_emphasis"><a href="http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users">http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users</a></span>
</pre></div>
<p>
Please ask Debian-specific questions on this list and not on the general Exim
lists.
</p>
</div>
<div class="section">
<h3 id="SECID4" class="">4. Exim training</h3>
<p>

Training courses in Cambridge (UK) used to be run annually by the author of
Exim, before he retired. At the time of writing, there are no plans to run
further Exim courses in Cambridge. However, if that changes, relevant
information will be posted at <span class="docbook_emphasis"><a href="http://www-tus.csx.cam.ac.uk/courses/exim/">http://www-tus.csx.cam.ac.uk/courses/exim/</a></span>.
</p>
</div>
<div class="section">
<h3 id="SECID5" class="">5. Bug reports</h3>
<p>


Reports of obvious bugs can be emailed to <span class="docbook_emphasis">bugs@exim.org</span> or reported
via the Bugzilla (<span class="docbook_emphasis"><a href="http://bugs.exim.org">http://bugs.exim.org</a></span>). However, if you are unsure
whether some behaviour is a bug or not, the best thing to do is to post a
message to the <span class="docbook_emphasis">exim-dev</span> mailing list and have it discussed.
</p>
</div>
<div class="section">
<h3 id="SECTavail" class="">6. Where to find the Exim distribution</h3>
<p>


The master ftp site for the Exim distribution is
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_emphasis">ftp://ftp.csx.cam.ac.uk/pub/software/email/exim</span>
</pre></div>
<p>
This is mirrored by
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_emphasis">ftp://ftp.exim.org/pub/exim</span>
</pre></div>
<p>
The file references that follow are relative to the <span class="docbook_filename">exim</span> directories at
these sites. There are now quite a number of independent mirror sites around
the world. Those that I know about are listed in the file called <span class="docbook_filename">Mirrors</span>.
</p>
<p>
Within the <span class="docbook_filename">exim</span> directory there are subdirectories called <span class="docbook_filename">exim3</span> (for
previous Exim 3 distributions), <span class="docbook_filename">exim4</span> (for the latest Exim 4
distributions), and <span class="docbook_filename">Testing</span> for testing versions. In the <span class="docbook_filename">exim4</span>
subdirectory, the current release can always be found in files called
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_filename">exim-n.nn.tar.gz</span>
<span class="docbook_filename">exim-n.nn.tar.bz2</span>
</pre></div>
<p>
where <span class="docbook_emphasis">n.nn</span> is the highest such version number in the directory. The two
files contain identical data; the only difference is the type of compression.
The <span class="docbook_filename">.bz2</span> file is usually a lot smaller than the <span class="docbook_filename">.gz</span> file.
</p>
<p>



The distributions are currently signed with Nigel Metheringham’s GPG key. The
corresponding public key is available from a number of keyservers, and there is
also a copy in the file <span class="docbook_filename">nigel-pubkey.asc</span>. The signatures for the tar bundles are
in:
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_filename">exim-n.nn.tar.gz.asc</span>
<span class="docbook_filename">exim-n.nn.tar.bz2.asc</span>
</pre></div>
<p>
For each released version, the log of changes is made separately available in a
separate file in the directory <span class="docbook_filename">ChangeLogs</span> so that it is possible to
find out what has changed without having to download the entire distribution.
</p>
<p>

The main distribution contains ASCII versions of this specification and other
documentation; other formats of the documents are available in separate files
inside the <span class="docbook_filename">exim4</span> directory of the FTP site:
</p>
<div class="docbook_literallayout"><pre>
<span class="docbook_filename">exim-html-n.nn.tar.gz</span>
<span class="docbook_filename">exim-pdf-n.nn.tar.gz</span>
<span class="docbook_filename">exim-postscript-n.nn.tar.gz</span>
<span class="docbook_filename">exim-texinfo-n.nn.tar.gz</span>
</pre></div>
<p>
These tar files contain only the <span class="docbook_filename">doc</span> directory, not the complete
distribution, and are also available in <span class="docbook_filename">.bz2</span> as well as <span class="docbook_filename">.gz</span> forms.
</p>
</div>
<div class="section">
<h3 id="SECID6" class="">7. Limitations</h3>
<ul>
<li>
<p>


Exim is designed for use as an Internet MTA, and therefore handles addresses in
RFC 2822 domain format only. It cannot handle UUCP “bang paths”, though
simple two-component bang paths can be converted by a straightforward rewriting
configuration. This restriction does not prevent Exim from being interfaced to
UUCP as a transport mechanism, provided that domain addresses are used.
</p>
</li>
<li>
<p>


Exim insists that every address it handles has a domain attached. For incoming
local messages, domainless addresses are automatically qualified with a
configured domain value. Configuration options specify from which remote
systems unqualified addresses are acceptable. These are then qualified on
arrival.
</p>
</li>
<li>
<p>


The only external transport mechanisms that are currently implemented are SMTP
and LMTP over a TCP/IP network (including support for IPv6). However, a pipe
transport is available, and there are facilities for writing messages to files
and pipes, optionally in <span class="docbook_emphasis">batched SMTP</span> format; these facilities can be used
to send messages to other transport mechanisms such as UUCP, provided they can
handle domain-style addresses. Batched SMTP input is also catered for.
</p>
</li>
<li>
<p>
Exim is not designed for storing mail for dial-in hosts. When the volumes of
such mail are large, it is better to get the messages “delivered” into files
(that is, off Exim’s queue) and subsequently passed on to the dial-in hosts by
other means.
</p>
</li>
<li>
<p>
Although Exim does have basic facilities for scanning incoming messages, these
are not comprehensive enough to do full virus or spam scanning. Such operations
are best carried out using additional specialized software packages. If you
compile Exim with the content-scanning extension, straightforward interfaces to
a number of common scanners are provided.
</p>
</li>
</ul>
</div>
<div class="section">
<h3 id="SECID7" class="">8. Run time configuration</h3>
<p>
Exim’s run time configuration is held in a single text file that is divided
into a number of sections. The entries in this file consist of keywords and
values, in the style of Smail 3 configuration files. A default configuration
file which is suitable for simple online installations is provided in the
distribution, and is described in chapter <a href="ch07.html" title="7. The default configuration file">7</a> below.
</p>
</div>
<div class="section">
<h3 id="SECID8" class="">9. Calling interface</h3>
<p>

Like many MTAs, Exim has adopted the Sendmail command line interface so that it
can be a straight replacement for <span class="docbook_filename">/usr/lib/sendmail</span> or
<span class="docbook_filename">/usr/sbin/sendmail</span> when sending mail, but you do not need to know anything
about Sendmail in order to run Exim. For actions other than sending messages,
Sendmail-compatible options also exist, but those that produce output (for
example, <span class="docbook_option">-bp</span>, which lists the messages on the queue) do so in Exim’s own
format. There are also some additional options that are compatible with Smail
3, and some further options that are new to Exim. Chapter <a href="ch05.html" title="5. The Exim command line">5</a>
documents all Exim’s command line options. This information is automatically
made into the man page that forms part of the Exim distribution.
</p>
<p>
Control of messages on the queue can be done via certain privileged command
line options. There is also an optional monitor program called <span class="docbook_emphasis">eximon</span>,
which displays current information in an X window, and which contains a menu
interface to Exim’s command line administration options.
</p>
</div>
<div class="section">
<h3 id="SECID9" class="">10. Terminology</h3>
<p>


The <span class="docbook_emphasis">body</span> of a message is the actual data that the sender wants to transmit.
It is the last part of a message, and is separated from the <span class="docbook_emphasis">header</span> (see
below) by a blank line.
</p>
<p>

When a message cannot be delivered, it is normally returned to the sender in a
delivery failure message or a “non-delivery report” (NDR). The term
<span class="docbook_emphasis">bounce</span> is commonly used for this action, and the error reports are often
called <span class="docbook_emphasis">bounce messages</span>. This is a convenient shorthand for “delivery
failure error report”. Such messages have an empty sender address in the
message’s <span class="docbook_emphasis">envelope</span> (see below) to ensure that they cannot themselves give
rise to further bounce messages.
</p>
<p>
The term <span class="docbook_emphasis">default</span> appears frequently in this manual. It is used to qualify a
value which is used in the absence of any setting in the configuration. It may
also qualify an action which is taken unless a configuration setting specifies
otherwise.
</p>
<p>
The term <span class="docbook_emphasis">defer</span> is used when the delivery of a message to a specific
destination cannot immediately take place for some reason (a remote host may be
down, or a user’s local mailbox may be full). Such deliveries are <span class="docbook_emphasis">deferred</span>
until a later time.
</p>
<p>
The word <span class="docbook_emphasis">domain</span> is sometimes used to mean all but the first component of a
host’s name. It is <span class="docbook_emphasis">not</span> used in that sense here, where it normally refers to
the part of an email address following the @ sign.
</p>
<p>


A message in transit has an associated <span class="docbook_emphasis">envelope</span>, as well as a header and a
body. The envelope contains a sender address (to which bounce messages should
be delivered), and any number of recipient addresses. References to the
sender or the recipients of a message usually mean the addresses in the
envelope. An MTA uses these addresses for delivery, and for returning bounce
messages, not the addresses that appear in the header lines.
</p>
<p>


The <span class="docbook_emphasis">header</span> of a message is the first part of a message’s text, consisting
of a number of lines, each of which has a name such as <span class="docbook_emphasis">From:</span>, <span class="docbook_emphasis">To:</span>,
<span class="docbook_emphasis">Subject:</span>, etc. Long header lines can be split over several text lines by
indenting the continuations. The header is separated from the body by a blank
line.
</p>
<p>


The term <span class="docbook_emphasis">local part</span>, which is taken from RFC 2822, is used to refer to that
part of an email address that precedes the @ sign. The part that follows the
@ sign is called the <span class="docbook_emphasis">domain</span> or <span class="docbook_emphasis">mail domain</span>.
</p>
<p>


The terms <span class="docbook_emphasis">local delivery</span> and <span class="docbook_emphasis">remote delivery</span> are used to distinguish
delivery to a file or a pipe on the local host from delivery by SMTP over
TCP/IP to another host. As far as Exim is concerned, all hosts other than the
host it is running on are <span class="docbook_emphasis">remote</span>.
</p>
<p>

<span class="docbook_emphasis">Return path</span> is another name that is used for the sender address in a
message’s envelope.
</p>
<p>

The term <span class="docbook_emphasis">queue</span> is used to refer to the set of messages awaiting delivery,
because this term is in widespread use in the context of MTAs. However, in
Exim’s case the reality is more like a pool than a queue, because there is
normally no ordering of waiting messages.
</p>
<p>

The term <span class="docbook_emphasis">queue runner</span> is used to describe a process that scans the queue
and attempts to deliver those messages whose retry times have come. This term
is used by other MTAs, and also relates to the command <span class="docbook_option">runq</span>, but in Exim
the waiting messages are normally processed in an unpredictable order.
</p>
<p>

The term <span class="docbook_emphasis">spool directory</span> is used for a directory in which Exim keeps the
messages on its queue – that is, those that it is in the process of
delivering. This should not be confused with the directory in which local
mailboxes are stored, which is called a “spool directory” by some people. In
the Exim documentation, “spool” is always used in the first sense.
</p>
</div>
</div>
<a class="previous_page" href="index.html">&lt;-previous</a><a class="next_page" href="ch02.html">next-&gt;</a>
</div></div>
<iframe id="branding" name="branding" src="../../../../branding/branding.html" height="0" frameborder="no" scrolling="no"></iframe><div id="footer">Website design by <a href="https://secure.grepular.com/">Mike Cardwell</a>, of <a href="http://cardwellit.com/">Cardwell IT Ltd.</a>
</div>
<div class="left_bar"></div>
<div class="right_bar"></div>
<div id="toc">
<ul class="hidden"></ul>
<img src="../../../../doc/contents.png" width="16" height="155">
</div>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script><script type="text/javascript" src="../../../../common.js"></script><script type="text/javascript" src="../../../../doc/chapter.js"></script>
</body>
</html>