File: spec_17.html

package info (click to toggle)
exim-html 3.20-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k, sarge, woody
  • size: 2,868 kB
  • ctags: 4,188
  • sloc: makefile: 40; sh: 19
file content (188 lines) | stat: -rw-r--r-- 5,398 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.52
     from spec on 25 November 2000 -->

<TITLE>Exim Specification - 17. The lmtp transport</TITLE>
</HEAD>
<body bgcolor="#FFFFFF" text="#00005A" link="#FF6600" alink="#FF9933" vlink="#990000">
Go to the <A HREF="spec_1.html">first</A>, <A HREF="spec_16.html">previous</A>, <A HREF="spec_18.html">next</A>, <A HREF="spec_59.html">last</A> section, <A HREF="spec_toc.html">table of contents</A>.
<P><HR><P>


<H1><A NAME="SEC494" HREF="spec_toc.html#TOC494">17. The lmtp transport</A></H1>
<P>
<A NAME="IDX1203"></A>
<A NAME="IDX1204"></A>
<font color=green>
The <EM>lmtp</EM> transport runs the LMTP protocol (RFC 2033) over a pipe to a
specified command. It is something of a cross between <EM>pipe</EM> and <EM>smtp</EM>. Exim
also has support for using LMTP over TCP/IP; this is implemented as an option
for the <EM>smtp</EM> transport. Because LMTP is expected to be of minority interest,
the default built-time configure in <TT>`src/EDITME'</TT> has it commented out. You need
to ensure that

<PRE>
TRANSPORT_LMTP=yes
</PRE>

<P>
is present in your Local/Makefile in order to have the <EM>lmtp</EM> transport
included in the Exim binary.

</P>
<P>
The private options of the <EM>lmtp</EM> transport are as follows:

</P>

<P>

<P>
<A NAME="IDX1205"></A>


<H3><A NAME="SEC495" HREF="spec_toc.html#TOC495">batch (lmtp)</A></H3>

<P>
Type: string<BR>
Default: "none"

</P>
<P>
<A NAME="IDX1206"></A>
<A NAME="IDX1207"></A>
As for other local transports, by default each address that is directed or
routed to an <EM>lmtp</EM> transport is handled separately. However, the whole point
of <EM>lmtp</EM> is to be able to pass a single copy of a message with more than one
recipient, so <EM>batch</EM> should normally be set to something other than the
default.

</P>
<P>
If it is set to the string `domain', all addresses with the same domain that
are directed or routed to the transport are handled in a single delivery. If it
is set to `all', multiple domains are batched. The list of addresses is
included in the <EM>Envelope-to:</EM> header
<A NAME="IDX1208"></A>
if <EM>envelope_to_add</EM> is set. When more than one address is being delivered,
$<EM>local_part</EM> is not set, and $<EM>domain</EM> is set only if they all have the
same domain.

</P>
<P>
<A NAME="IDX1209"></A>


<H3><A NAME="SEC496" HREF="spec_toc.html#TOC496">batch_max (lmtp)</A></H3>

<P>
Type: integer<BR>
Default: 100

</P>
<P>
This limits the number of addresses that can be handled in a batch.

</P>
<P>
<A NAME="IDX1210"></A>


<H3><A NAME="SEC497" HREF="spec_toc.html#TOC497">command (lmtp)</A></H3>

<P>
Type: string<BR>
Default: unset

</P>
<P>
This is a mandatory option, which must be set. The string is a command which is
run in a separate process. It is split up into a command name and list of
arguments, each of which is separately expanded (so expansion cannot change the
number of arguments). The command is run directly, not via a shell. The message
is passed to the new process using the standard input and output to operate the
LMTP protocol.

</P>
<P>
<A NAME="IDX1211"></A>


<H3><A NAME="SEC498" HREF="spec_toc.html#TOC498">group (lmtp)</A></H3>

<P>
Type: string<BR>
Default: unset

</P>
<P>
<A NAME="IDX1212"></A>
If this option is set, it specifies the group under whose gid the delivery
process is to be run. If it is not set, a value associated with a user may be
used (see below); otherwise a value must have been associated with the address
by the director which handled it. If the string contains no $ characters, it
is resolved when Exim starts up. Otherwise, the string is expanded at the time
the transport is run, and must yield either a digit string or a name which can
be looked up using <EM>getgrnam()</EM>.

</P>
<P>
<A NAME="IDX1213"></A>


<H3><A NAME="SEC499" HREF="spec_toc.html#TOC499">timeout (lmtp)</A></H3>

<P>
Type: time<BR>
Default: 5m

</P>
<P>
The transport is aborted if the created process does not respond to SMTP
commands or message input within this timeout.

</P>
<P>
<A NAME="IDX1214"></A>


<H3><A NAME="SEC500" HREF="spec_toc.html#TOC500">user (lmtp)</A></H3>

<P>
Type: string<BR>
Default: unset

</P>
<P>
<A NAME="IDX1215"></A>
If this option is set, it specifies the user under whose uid the delivery
process is to be run. If it is not set, a value must have been associated with
the address by the director that handled it. If the string contains no $
characters, it is resolved when Exim starts up. Otherwise, the string is
expanded at the time the transport is run, and must yield either a digit string
or a name which can be looked up using <EM>getpwnam()</EM>. When <EM>getpwnam()</EM> is used,
either at start-up time or later, the group id value associated with the user
is taken as the value to be used if the <EM>group</EM> option is not set.
Here is an example of a typical LMTP transport:

<PRE>
lmtp:
  driver = lmtp
  command = /some/local/lmtp/delivery/program
  batch = all
  batch_max = 20
  user = exim
</PRE>

<P>
This delivers up to 20 addresses at time, in a mixture of domains if necessary,
running as the user <EM>exim</EM>.
</font>

</P>

<P><HR><P>
Go to the <A HREF="spec_1.html">first</A>, <A HREF="spec_16.html">previous</A>, <A HREF="spec_18.html">next</A>, <A HREF="spec_59.html">last</A> section, <A HREF="spec_toc.html">table of contents</A>.
</BODY>
</HTML>