Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > a4080654d049ad31b216b761b9173c1f > files > 127

exim-doc-4.69-4mdv2010.0.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
<html>
<!-- Created on September, 10 2009 by texi2html 1.78 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
            Karl Berry  <karl@freefriends.org>
            Olaf Bachmann <obachman@mathematik.uni-kl.de>
            and many others.
Maintained by: Many creative people.
Send bugs and suggestions to <texi2html-bug@nongnu.org>

-->
<head>
<title>Specification of the Exim Mail Transfer Agent: 25. Address batching in local transports</title>

<meta name="description" content="Specification of the Exim Mail Transfer Agent: 25. Address batching in local transports">
<meta name="keywords" content="Specification of the Exim Mail Transfer Agent: 25. Address batching in local transports">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="texi2html 1.78">
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
pre.display {font-family: serif}
pre.format {font-family: serif}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: serif; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: serif; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.roman {font-family:serif; font-weight:normal;}
span.sansserif {font-family:sans-serif; font-weight:normal;}
ul.toc {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">

<a name="Address-batching"></a>
<a name="SEC221"></a>
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="spec_24.html#SEC220" title="Previous section in reading order"> &lt; </a>]</td>
<td valign="middle" align="left">[<a href="spec_26.html#SEC222" title="Next section in reading order"> &gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="spec_24.html#SEC220" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
<td valign="middle" align="left">[<a href="spec.html#SEC_Top" title="Up section"> Up </a>]</td>
<td valign="middle" align="left">[<a href="spec_26.html#SEC222" title="Next chapter"> &gt;&gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="spec.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
<td valign="middle" align="left">[Contents]</td>
<td valign="middle" align="left">[<a href="spec_55.html#SEC493" title="Index">Index</a>]</td>
<td valign="middle" align="left">[<a href="spec_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
</tr></table>
<h1 class="chapter"> 25. Address batching in local transports </h1>

<p>The only remote transport (<code>smtp</code>) is normally configured to handle more than
one address at a time, so that when several addresses are routed to the same
remote host, just one copy of the message is sent. Local transports, however,
normally handle one address at a time. That is, a separate instance of the
transport is run for each address that is routed to the transport. A separate
copy of the message is delivered each time.
</p>
<a name="IDX2046"></a>
<a name="IDX2047"></a>
<a name="IDX2048"></a>
<p>In special cases, it may be desirable to handle several addresses at once in a
local transport, for example:
</p>
<ul class="toc">
<li>
In an <code>appendfile</code> transport, when storing messages in files for later
delivery by some other means, a single copy of the message with multiple
recipients saves space.

</li><li>
In an <code>lmtp</code> transport, when delivering over &quot;local SMTP&quot; to some process,
a single copy saves time, and is the normal way LMTP is expected to work.

</li><li>
In a <code>pipe</code> transport, when passing the message
to a scanner program or
to some other delivery mechanism such as UUCP, multiple recipients may be
acceptable.
</li></ul>

<p>These three local transports all have the same options for controlling multiple
(&quot;batched&quot;) deliveries, namely <code>batch_max</code> and <code>batch_id</code>. To save
repeating the information for each transport, these options are described here.
</p>
<p>The <code>batch_max</code> option specifies the maximum number of addresses that can be
delivered together in a single run of the transport. Its default value is one
(no batching). When more than one address is routed to a transport that has a
<code>batch_max</code> value greater than one, the addresses are delivered in a batch
(that is, in a single run of the transport with multiple recipients), subject
to certain conditions:
</p>
<ul class="toc">
<li>
<a name="IDX2049"></a>
If any of the transport's options contain a reference to <code>$local_part</code>, no
batching is possible.

</li><li>
<a name="IDX2050"></a>
If any of the transport's options contain a reference to <code>$domain</code>, only
addresses with the same domain are batched.

</li><li>
<a name="IDX2051"></a>
If <code>batch_id</code> is set, it is expanded for each address, and only those
addresses with the same expanded value are batched. This allows you to specify
customized batching conditions. Failure of the expansion for any reason,
including forced failure, disables batching, but it does not stop the delivery
from taking place.

</li><li>
Batched addresses must also have the same errors address (where to send
delivery errors), the same header additions and removals, the same user and
group for the transport, and if a host list is present, the first host must
be the same.
</li></ul>

<p>In the case of the <code>appendfile</code> and <code>pipe</code> transports, batching applies
both when the file or pipe command is specified in the transport, and when it
is specified by a <code>redirect</code> router, but all the batched addresses must of
course be routed to the same file or pipe command. These two transports have an
option called <code>use_bsmtp</code>, which causes them to deliver the message in
&quot;batched SMTP&quot; format, with the envelope represented as SMTP commands. The
<code>check_string</code> and <code>escape_string</code> options are forced to the values
</p>
<table><tr><td>&nbsp;</td><td><pre class="example">check_string = &quot;.&quot;
escape_string = &quot;..&quot;
</pre></td></tr></table>

<p>when batched SMTP is in use. A full description of the batch SMTP mechanism is
given in section <a href="spec_45.html#SEC415">Outgoing batched SMTP</a>. The <code>lmtp</code> transport does not have a
<code>use_bsmtp</code> option, because it always delivers using the SMTP protocol.
</p>
<a name="IDX2052"></a>
<p>If the generic <code>envelope_to_add</code> option is set for a batching transport, the
<em>Envelope-to:</em> header that is added to the message contains all the addresses
that are being processed together. If you are using a batching <code>appendfile</code>
transport without <code>use_bsmtp</code>, the only way to preserve the recipient
addresses is to set the <code>envelope_to_add</code> option.
</p>
<a name="IDX2053"></a>
<a name="IDX2054"></a>
<p>If you are using a <code>pipe</code> transport without BSMTP, and setting the
transport's <code>command</code> option, you can include <code>$pipe_addresses</code> as part of
the command. This is not a true variable; it is a bit of magic that causes each
of the recipient addresses to be inserted into the command as a separate
argument. This provides a way of accessing all the addresses that are being
delivered in the batch. <strong>Note:</strong> This is not possible for pipe commands that
are specified by a <code>redirect</code> router.
</p>
<hr size="6">
<table cellpadding="1" cellspacing="1" border="0">
<tr><td valign="middle" align="left">[<a href="spec_24.html#SEC220" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
<td valign="middle" align="left">[<a href="spec_26.html#SEC222" title="Next chapter"> &gt;&gt; </a>]</td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left"> &nbsp; </td>
<td valign="middle" align="left">[<a href="spec.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
<td valign="middle" align="left">[Contents]</td>
<td valign="middle" align="left">[<a href="spec_55.html#SEC493" title="Index">Index</a>]</td>
<td valign="middle" align="left">[<a href="spec_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
</tr></table>
<p>
 <font size="-1">
  This document was generated on <i>September, 10 2009</i> using <a href="http://www.nongnu.org/texi2html/"><i>texi2html 1.78</i></a>.
 </font>
 <br>

</p>
</body>
</html>