masqmail

view man/masqmail.route.5 @ 312:c74adb7c4f50

null-terminated the decoded base64 strings The returned size is still the same. I only alloced one byte more and filled it with zero. TODO: I'm not sure if the allocated size is exact. It's large enough but maybe too large.
author meillo@marmaro.de
date Sun, 24 Apr 2011 20:13:47 +0200
parents 95d536599fd7
children d596ac8b5afb
line source
1 .TH masqmail.route 5 2010-12-08 masqmail-0.3.1 "File Formats"
3 .SH NAME
4 masqmail.route \- masqmail route configuration file
7 .SH DESCRIPTION
9 This man page describes the syntax of the route configuration files of \fBmasqmail (8)\fR.
10 Their usual locations are in \fI/etc/masqmail/\fR.
12 Mail will be sent with the SMTP protocol to its destination, unless
13 `pipe' is given.
14 In this case the message will be piped to the given program.
15 See option `pipe' below.
18 .SH OPTIONS
20 .TP
21 \fBmail_host\fR = \fIstring\fR
23 This is preferably the mail server of your ISP.
24 All outgoing messages will be sent to this host which will distribute them to their destinations.
25 If you do not set this mails will be sent directly.
26 Because the mail server is probably `near' to you, mail transfer will be much faster if you use it.
28 You can optionally give a port number following the host name and a colon, eg mail_host="mail.foo.com:25".
30 .TP
31 \fBresolve_list\fR = \fIlist\fR
33 Specify the method how the domain of the server is resolved.
34 Possible values are dns_mx, dns_a, byname.
35 For `dns_mx', the domain is assumed to be an MX pointer to a list of host names,
36 these will be tried each in order (lowest preference value first, equal preference values in random order).
37 For `dns_a', the domain is assumed to be an A pointer.
38 For `byname', the library function \fBgethostbyname(3)\fR will be used.
40 The default is "dns_mx;dns_a;byname".
42 .TP
43 \fBconnect_error_fail\fR = \fIboolean\fR
45 If this is set, a connection error will cause a mail delivery to fail, ie. it will be bounced.
46 If it is unset, it will just be defered.
48 Default is false.
49 The reason for this is that masqmail is designed for non permanent internet connections,
50 where such errors may occur quite often, and a bounce would be annoying.
52 For the default local_net route it is set to true.
54 .TP
55 \fBhelo_name\fR = \fIstring\fR
57 Set the name given with the HELO/EHLO command. If this is not set,
58 \fBhost_name\fR from \fImasqmail.conf\fR will be used,
59 if the \fBdo_correct_helo\fR option (see below) is unset.
61 .TP
62 \fBdo_correct_helo\fR = \fIboolean\fR
64 If this is set, masqmail tries to look up your host name as it appears
65 on the internet and sends this in the HELO/EHLO command.
66 Some servers are so picky that they want this.
67 Which is really crazy.
68 It just does not make any sense to lie about ones own identity,
69 because it can always be looked up by the server.
70 Nobody should believe in the name given by HELO/EHLO anyway.
71 If this is not set, \fBhost_name\fR from \fImasqmail.conf\fR or as given with
72 the \fBhelo_name\fR (see above) will be used.
74 .TP
75 \fBinstant_helo\fR = \fIboolean\fR
77 If this is set, masqmail does not wait for the greeting of the SMTP server
78 after opening the connection.
79 Instead it says EHLO right away (ESMTP is assumed).
80 Use this option with wrappers that eat the 220 greeting of the SMTP server.
81 Common examples are STARTTLS wrappers, like `openssl s_client -starttls smtp ...'.
83 If this option is set and a 220 greeting is received though,
84 everything should still work.
85 Please don't rely on that and keep in mind that RFC 2821 says that the client
86 SHOULD wait for the 220 greeting of the server.
88 Default: false
91 .TP
92 \fBdo_pipelining\fR = \fIboolean\fR
94 If this is set to false, masqmail will not use ESMTP PIPELINING,
95 even if the server announces that it is able to cope with it.
96 Default is true.
98 You do not want to set this to false unless the mail setup on the
99 remote server side is really broken.
100 Keywords: wingate.
102 .TP
103 \fBallowed_mail_locals\fR = \fIlist\fR
105 This is a semicolon `;' separated list of local parts which will be allowed
106 to send mail through this connection.
107 If unset and \fBnot_allowed_mail_locals\fR is also unset, all users are allowed.
109 .TP
110 \fBnot_allowed_mail_locals\fR = \fIlist\fR
112 This is a semicolon `;' separated list of local parts which will be not allowed
113 to send mail through this connection.
114 Local parts in this list will not be allowed to use this route even if they
115 are part of \fBallowed_mail_locals\fR (see above).
117 .TP
118 \fBallowed_return_paths\fR = \fIlist\fR
120 This is a semicolon `;' separated list of addresses.
121 Messages which have one of these addresses as the return path will be used using this route
122 (if not also in \fBnot_allowed_return_paths\fR or an item in \fBnot_allowed_mail_locals\fR matches).
124 Patterns containing `?' and `*' can be used.
125 The special item "<>" matches the null sender address (eg. failure notices or delivery notifications).
127 .TP
128 \fBnot_allowed_return_paths\fR = \fIlist\fR
130 This is a semicolon `;' separated list of addresses.
131 Messages which have one of these addresses as the return path will not
132 be used using this route (even if also in \fBallowed_return_paths\fR
133 or an item in \fBallowed_mail_locals\fR matches).
135 Patterns containing `?' and `*' can be used.
136 The special item "<>" matches the null sender address (eg. failure notices or delivery notifications).
138 .TP
139 \fBallowed_rcpt_domains\fR = \fIlist\fR
141 A list of recipient domains where mail will be sent to.
142 This is for example useful if you use this route configuration when connected to another LAN via ppp.
143 Patterns containing `?' and `*' can be used.
145 .TP
146 \fBnot_allowed_rcpt_domains\fR = \fIlist\fR
148 A list of recipient domains where mail will not be sent to.
149 This is for example useful if you send mail directly (\fBmail_host\fR is not set)
150 and you know of hosts that will not accept mail from you because they use a dialup list
151 (eg. \fBhttp://maps.vix.com/dul/\fR).
152 If any domain matches both \fBallowed_rcpt_domains\fR and \fBnot_allowed_rcpt_domains\fR,
153 mail will not be sent to this domain.
154 Patterns containing `?' and `*' can be used.
156 .TP
157 \fBset_h_from_domain\fR = \fIstring\fR
159 Replace the domain part in `From:' headers with this value.
160 This may be useful if you use a private, outside unknown address on your local LAN
161 and want this to be replaced by the domain of the address of your email address on the internet.
162 Note that this is different to \fBset_return_path_domain\fR, see below.
164 .TP
165 \fBset_h_reply_to_domain\fR = \fIstring\fR
167 Same as \fBset_h_from_domain\fP, but for the `Reply-To' header.
169 .TP
170 \fBset_return_path_domain\fR = \fIstring\fR
172 Sets the domain part of the envelope from address.
173 Some hosts check whether this is the same as the net the connection is coming from.
174 If not, they reject the mail because they suspect spamming.
175 It should be a valid address, because some mail servers also check that.
176 You can also use this to set it to your usual address on the internet
177 and put a local address only known on your LAN in the configuration of your mailer.
178 Only the domain part will be changed, the local part remains unchanged.
179 Use \fBmap_return_path_addresses\fR for rewriting local parts.
181 .TP
182 \fBmap_h_from_addresses\fR = \fIlist\fR
184 This is similar to \fBset_h_from_domain\fR, but more flexible.
185 Set this to a list which maps local parts to a full RFC 822 compliant email address,
186 the local parts (the keys) are separated from the addresses (the values) by colons (`:').
188 Example:
189 .nf
190 map_h_from_addresses = "john: John Smith <jsmith@mail.academic.edu>; charlie: Charlie Miller <cmiller@mx.commercial.com>"
191 .fi
193 You can use patterns, eg. * as keys.
195 .TP
196 \fBmap_h_reply_to_addresses\fR = \fIlist\fR
198 Same as \fBmap_h_from_addresses\fR, but for the `Reply-To:' header.
200 .TP
201 \fBmap_h_mail_followup_to_addresses\fR = \fIlist\fR
203 Same as \fBmap_h_from_addresses\fR, but for the `Mail-Followup-To:' header.
204 Useful when replying to mailing lists.
206 .TP
207 \fBmap_return_path_addresses\fR = \fIlist\fR
209 This is similar to \fBset_return_path_domain\fR, but more flexible.
210 Set this to a list which maps local parts to a full RFC 821 compliant email address,
211 the local parts (the keys) are separated from the addresses (the values) by colons (`:').
212 Note that this option takes RFC 821 addresses while \fBmap_h_from_addresses\fR takes RFC 822 addresses.
213 The most important difference is that RFC 821 addresses have no full name.
215 Example:
216 .nf
217 map_return_path_addresses = "john: <jsmith@mail.academic.edu>; charlie: <cmiller@mx.commercial.com>"
218 .fi
220 You can use patterns, eg. * as keys.
222 .TP
223 \fBexpand_h_sender_address\fR = \fIboolean\fR
225 This sets the domain of the sender address as given by the Sender: header
226 to the same address as in the envelope return path address
227 (which can be set by either \fBset_return_path_domain\fR or \fBmap_return_path_addresses\fR).
228 This is for mail clients (eg. Microsoft Outlook) which use this address as the sender address.
229 Though they should use the From: address, see RFC 821.
230 If \fBfetchmail(1)\fR encounters an unqualified Sender: address,
231 it will be expanded to the domain of the pop server, which is almost never correct.
232 Default is true.
234 .TP
235 \fBexpand_h_sender_domain\fR = \fIboolean\fR
237 Like \fBexpand_h_sender_address\fR, but sets the domain only.
238 Deprecated, will be removed in a later version.
240 .TP
241 \fBlast_route\fR = \fIboolean\fR
243 If this is set, a mail which would have been delivered using this route,
244 but has failed temporarily, will not be tried to be delivered using the next route.
246 If you have set up a special route with filters using the lists `allowed_rcpt_domains',
247 `allowed_return_paths', and `allowed_mail_locals' or their complements (not_),
248 and the mail passing these rules should be delivered using this route only,
249 you should set this to `true'.
250 Otherwise the mail would be passed to the next route (if any),
251 unless that route has rules which prevent that.
253 Default is false.
255 .TP
256 \fBauth_name\fR = \fIstring\fR
258 Set the authentication type for ESMTP AUTH authentication.
259 Currently only `cram-md5' and `login' are supported.
261 .TP
262 \fBauth_login\fR = \fIstring\fR
264 Your account name for ESMTP AUTH authentication.
266 .TP
267 \fBauth_secret\fR = \fIstring\fR
269 Your secret for ESMTP AUTH authentication.
271 .TP
272 \fBwrapper\fR = \fIcommand\fR
274 If set, instead of opening a connection to a remote server,
275 \fIcommand\fR will be called and all traffic will be piped to its stdin and from its stdout.
276 Purpose is to tunnel ip traffic, eg. for ssl.
278 Example for SMTP over SSL tunneling:
279 .nf
280 wrapper="/usr/bin/openssl s_client \-quiet \-connect mail.gmx.net:465 2>/dev/null"
281 .fi
283 SMTP over SSL is supported since masqmail-0.1.8.
284 It is marked obsolete by the IETF but is still in use.
287 Example for encryption with STARTTLS (RFC-3207):
288 .nf
289 # don't forget the instant_helo, otherwise it won't work
290 instant_helo=true
291 wrapper="/usr/bin/openssl s_client \-quiet \-starttls smtp \-connect mail.gmx.net:25 2>/dev/null"
292 .fi
294 This is supported since masqmail-0.2.28.
295 STARTTLS supersedes SMTP over SSL.
297 Note for openssl:
298 Ensure that stderr is redirected.
299 Do *not* use \-crlf in the wrapper command, because masqmail does already insert CRLF.
300 However, you might want to specify \-crlf if you want to test your wrapper command
301 interactively on the command line.
303 .TP
304 \fBpipe\fR = \fIcommand\fR
306 \fIcommand\fR will be called and the message will be piped to its stdin.
307 Purpose is to use gateways to uucp, fax, sms or whatever else.
309 You can use variables to give as arguments to the command,
310 these are the same as for the mda in the main configuration, see \fBmasqmail.conf(5)\fR.
312 .TP
313 \fBpipe_fromline = \fIboolean\fR
315 Only if `pipe' is used.
316 A from line will be prepended to the output stream whenever a pipe command is called.
317 Default is false.
319 .TP
320 \fBpipe_fromhack = \fIboolean\fR
322 Only if `pipe' is used.
323 Each line beginning with `From ' is replaced with `>From ' whenever a pipe command is called.
324 You probably want this if you have set \fBpipe_fromline\fR above.
325 Default is false.
328 .SH AUTHOR
330 Masqmail was written by Oliver Kurth.
331 It is now maintained by Markus Schnalke <meillo@marmaro.de>.
333 You will find the newest version of masqmail at \fBhttp://marmaro.de/prog/masqmail/\fR.
334 There is also a mailing list, you will find information about it at masqmail's main site.
337 .SH BUGS
339 Please report bugs to the mailing list.
341 .SH SEE ALSO
343 \fBmasqmail(8)\fR, \fBmasqmail.conf(5)\fR