masqmail-0.2

annotate docs/old-manual/docs/masqmail.route.5.html @ 179:ec3fe72a3e99

Fixed an important bug with folded headers! g_strconcat() returns a *copy* of the string, but hdr->value still pointed to the old header (which probably was a memory leak, too). If the folded part had been quite small it was likely that the new string was at the same position as the old one, thus making everything go well. But if pretty long headers were folded several times it was likely that the new string was allocated somewhere else in memory, thus breaking things. In result mails to lots of recipients (folded header) were frequently only sent to the ones in the first line. Sorry for the inconvenience.
author meillo@marmaro.de
date Fri, 03 Jun 2011 09:52:17 +0200
parents
children
rev   line source
meillo@56 1 <body text="#000000" link="#0000ff" bgcolor="#ffffff"><center><table width="80%">
meillo@56 2 <tr><td><h1>masqmail.route</h1>
meillo@56 3 <h2>masqmail route configuration file</h2>
meillo@56 4
meillo@56 5
meillo@56 6 <h2>Description</h2>
meillo@56 7
meillo@56 8 <p>This man page describes the syntax of the route configuration files
meillo@56 9 of <a href="masqmail.8.html">masqmail</a>. Their usual locations are in <em>/etc/masqmail/</em>.</p>
meillo@56 10
meillo@56 11
meillo@56 12
meillo@56 13 <h2>Options</h2>
meillo@56 14
meillo@56 15
meillo@56 16
meillo@56 17 <p><b>protocol</b> = <em>string</em></p>
meillo@56 18
meillo@56 19 <p><em>string</em> can be one of 'smtp' or 'pipe', default is
meillo@56 20 'smtp'. If set to 'smtp', mail will be sent with the SMTP protocol to
meillo@56 21 its destination. If set to 'pipe', you also have to set 'pipe'
meillo@56 22 to a command, the message will then be piped to a program. See option 'pipe' below.</p>
meillo@56 23
meillo@56 24
meillo@56 25
meillo@56 26
meillo@56 27 <p><b>mail_host</b> = <em>string</em></p>
meillo@56 28
meillo@56 29 <p>This is preferably the mail server of your ISP. All outgoing
meillo@56 30 messages will be sent to this host which will distribute them to their
meillo@56 31 destinations. If you do not set this mails will be sent
meillo@56 32 directly. Because the mail server is probably 'near' to you, mail
meillo@56 33 transfer will be much faster if you use it.</p>
meillo@56 34 <p>You can optionally give a port number following the host name
meillo@56 35 and a colon, eg mail_host="mail.foo.com:25".</p>
meillo@56 36
meillo@56 37
meillo@56 38
meillo@56 39
meillo@56 40 <p><b>resolve_list</b> = <em>list</em></p>
meillo@56 41
meillo@56 42 <p>Specify the method how the domain of the server is resolved. Possible values are
meillo@56 43 dns_mx, dns_a, byname. For 'dns_mx', the domain is assumed to be an MX
meillo@56 44 pointer to a list of host names, these will be tried each in order
meillo@56 45 (lowest preference value first, equal preference values in random
meillo@56 46 order). For 'dns_a', the domain is assumed to be an A pointer. For
meillo@56 47 'byname', the library function <b>gethostbyname (3)</b> will be used.</p>
meillo@56 48 <p>The default is "dns_mx;dns_a;byname".</p>
meillo@56 49
meillo@56 50
meillo@56 51
meillo@56 52
meillo@56 53 <p><b>connect_error_fail</b> = <em>boolean</em></p>
meillo@56 54
meillo@56 55 <p>If this is set, a connection error will cause a mail delivery to
meillo@56 56 fail, ie. it will be bounced. If it is unset, it will just be defered.</p>
meillo@56 57 <p>Default is false. The reason for this is that masqmail is designed
meillo@56 58 for non permanent internet connections, where such errors may occur
meillo@56 59 quite often, and a bounce would be annoying.</p>
meillo@56 60 <p>For the default local_net route is is set to true.</p>
meillo@56 61
meillo@56 62
meillo@56 63
meillo@56 64
meillo@56 65 <p><b>helo_name</b> = <em>string</em></p>
meillo@56 66
meillo@56 67 <p>Set the name given with the HELO/EHLO command. If this is not
meillo@56 68 set, <b>host_name</b> from <em>masqmail.conf</em> will be used, if
meillo@56 69 the <b>do_correct_helo</b> option (see below) is unset.</p>
meillo@56 70
meillo@56 71
meillo@56 72
meillo@56 73
meillo@56 74 <p><b>do_correct_helo</b> = <em>boolean</em></p>
meillo@56 75
meillo@56 76 <p>If this is set, masqmail tries to look up your host name as it
meillo@56 77 appears on the internet and sends this in the HELO/EHLO command. Some
meillo@56 78 servers are so picky that they want this. Which is really
meillo@56 79 crazy. It just does not make any sense to lie about ones own identity,
meillo@56 80 because it can always be looked up by the server. Nobody should
meillo@56 81 believe in the name given by HELO/EHLO anyway. If this is not
meillo@56 82 set, <b>host_name</b> from <em>masqmail.conf</em> or as given with
meillo@56 83 the <b>helo_name</b> (see above) will be used.</p>
meillo@56 84
meillo@56 85
meillo@56 86
meillo@56 87
meillo@56 88 <p><b>do_pipelining</b> = <em>boolean</em></p>
meillo@56 89
meillo@56 90 <p>If this is set to false, masqmail will not use ESMTP PIPELINING, even
meillo@56 91 if the server announces that it is able to cope with it. Default is true.</p>
meillo@56 92 <p>You do not want to set this to false unless the mail setup on the
meillo@56 93 remote server side is really broken. Keywords: wingate.</p>
meillo@56 94
meillo@56 95
meillo@56 96
meillo@56 97
meillo@56 98 <p><b>allowed_mail_locals</b> = <em>list</em></p>
meillo@56 99
meillo@56 100 <p>This is a semicolon ';' separated list of local parts which will be
meillo@56 101 allowed to send mail through this connection. If unset
meillo@56 102 and <b>not_allowed_mail_locals</b> is also unset, all users are
meillo@56 103 allowed.</p>
meillo@56 104
meillo@56 105
meillo@56 106
meillo@56 107
meillo@56 108 <p><b>not_allowed_mail_locals</b> = <em>list</em></p>
meillo@56 109
meillo@56 110 <p>This is a semicolon ';' separated list of local parts which will be
meillo@56 111 not allowed to send mail through this connection. Local
meillo@56 112 parts in this list will not be allowed to use this route even if they
meillo@56 113 are part of <b>allowed_mail_locals</b> (see above).</p>
meillo@56 114
meillo@56 115
meillo@56 116
meillo@56 117
meillo@56 118 <p><b>allowed_return_paths</b> = <em>list</em></p>
meillo@56 119
meillo@56 120 <p>This is a semicolon ';' separated list of addresses. Messages which
meillo@56 121 have one one of these addresses as the return path will be used using
meillo@56 122 this route (if not also in <b>not_allowed_return_paths</b> or an item
meillo@56 123 in <b>not_allowed_mail_locals</b> matches).</p>
meillo@56 124 <p>Patterns containing '?' and '*' can be used. The special item "<>" matches
meillo@56 125 the null sender address (eg. failure notices or delivery notifications).</p>
meillo@56 126
meillo@56 127
meillo@56 128
meillo@56 129
meillo@56 130 <p><b>not_allowed_return_paths</b> = <em>list</em></p>
meillo@56 131
meillo@56 132 <p>This is a semicolon ';' separated list of addresses. Messages which
meillo@56 133 have one one of these addresses as the return path will not be used using
meillo@56 134 this route (even if also in <b>allowed_return_paths</b> or an item
meillo@56 135 in <b>allowed_mail_locals</b> matches).</p>
meillo@56 136 <p>Patterns containing '?' and '*' can be used. The special item "<>" matches
meillo@56 137 the null sender address (eg. failure notices or delivery notifications).</p>
meillo@56 138
meillo@56 139
meillo@56 140
meillo@56 141
meillo@56 142 <p><b>allowed_rcpt_domains</b> = <em>list</em></p>
meillo@56 143
meillo@56 144 <p>A list of recipient domains where mail will be sent to. This is for
meillo@56 145 example useful if you use this route configuration when connected to
meillo@56 146 another LAN via ppp. Patterns containing '?' and '*' can be used.</p>
meillo@56 147
meillo@56 148
meillo@56 149
meillo@56 150
meillo@56 151 <p><b>not_allowed_rcpt_domains</b> = <em>list</em></p>
meillo@56 152
meillo@56 153 <p>A list of recipient domains where mail will not be sent
meillo@56 154 to. This is for example useful if you send mail directly (<b>mail_host</b> is
meillo@56 155 not set) and you know of hosts that will not accept mail from you
meillo@56 156 because they use a dialup list (eg. <a href = "http://maps.vix.com/dul/">http://maps.vix.com/dul/</a>. If any domain
meillo@56 157 matches both <b>allowed_rcpt_domains</b> and <b>not_allowed_rcpt_domains</b>,
meillo@56 158 mail will not be sent to this domain. Patterns containing '?' and '*' can be used.</p>
meillo@56 159
meillo@56 160
meillo@56 161
meillo@56 162
meillo@56 163 <p><b>set_h_from_domain</b> = <em>string</em></p>
meillo@56 164
meillo@56 165 <p>Replace the domain part in 'From:' headers with this value. This
meillo@56 166 may be useful if you use a private, outside unknown address on your
meillo@56 167 local LAN and want this to be replaced by the domain of the address of
meillo@56 168 your email addrsss on the internet. Note that this is different to <b>
meillo@56 169 set_return_path_domain</b>, see below.</p>
meillo@56 170
meillo@56 171
meillo@56 172
meillo@56 173
meillo@56 174 <p><b>set_return_path_domain</b> = <em>string</em></p>
meillo@56 175
meillo@56 176 <p>Sets the domain part of the envelope from address. Some hosts check
meillo@56 177 whether this is the same as the net the connection is coming from. If
meillo@56 178 not, they reject the mail because they suspect spamming. It should be
meillo@56 179 a valid address, because some mail servers also check
meillo@56 180 that. You can also use this to set it to your usual address on the
meillo@56 181 internet and put a local address only known on your LAN in the
meillo@56 182 configuration of your mailer. Only the domain part will
meillo@56 183 be changed, the local part remains unchanged. Use <b>
meillo@56 184 map_return_path_addresses</b> for rewriting local parts.</p>
meillo@56 185
meillo@56 186
meillo@56 187
meillo@56 188
meillo@56 189 <p><b>map_h_from_addresses</b> = <em>list</em></p>
meillo@56 190
meillo@56 191 <p>This is similar to <b>set_h_from_domain</b>, but more flexible. Set
meillo@56 192 this to a list which maps local parts to a full RFC 822 compliant
meillo@56 193 email address, the local parts (the keys) are separated from
meillo@56 194 the addresses (the values) by colons (':').</p>
meillo@56 195
meillo@56 196 <p>Example:</p>
meillo@56 197
meillo@56 198 <p>map_h_from_addresses = "john: John Smith <jsmith@mail.academic.edu>;
meillo@56 199 charlie: Charlie Miller <cmiller@mx.commercial.com>"</p>
meillo@56 200 <p>You can use patterns, eg. * as keys.</p>
meillo@56 201
meillo@56 202
meillo@56 203
meillo@56 204
meillo@56 205 <p><b>map_h_reply_to_addresses</b> = <em>list</em></p>
meillo@56 206
meillo@56 207 <p>Same as <b>map_h_from_addresses</b>, but for the 'Reply-To:' header.</p>
meillo@56 208
meillo@56 209
meillo@56 210
meillo@56 211
meillo@56 212 <p><b>map_h_mail_followup_to_addresses</b> = <em>list</em></p>
meillo@56 213
meillo@56 214 <p>Same as <b>map_h_from_addresses</b>, but for the 'Mail-Followup-To:'
meillo@56 215 header. Useful when replying to mailing lists.</p>
meillo@56 216
meillo@56 217
meillo@56 218
meillo@56 219
meillo@56 220 <p><b>map_return_path_addresses</b> = <em>list</em></p>
meillo@56 221
meillo@56 222 <p>This is similar to <b>set_return_path_domain</b>, but more
meillo@56 223 flexible. Set this to a list which maps local parts to a full RFC 821
meillo@56 224 compliant email address, the local parts (the keys) are
meillo@56 225 separated from the addresses (the values) by colons
meillo@56 226 (':'). Note that this option takes RFC 821 addresses
meillo@56 227 while <b>map_h_from_addresses</b> takes RFC 822 addresses. The
meillo@56 228 most important difference is that RFC 821 addresses have no full
meillo@56 229 name.</p>
meillo@56 230
meillo@56 231 <p>Example:</p>
meillo@56 232 <p>
meillo@56 233 map_return_path_addresses =
meillo@56 234 "john: <jsmith@mail.academic.edu>;
meillo@56 235 charlie: <cmiller@mx.commercial.com>"
meillo@56 236 </p>
meillo@56 237 <p>You can use patterns, eg. * as keys.</p>
meillo@56 238
meillo@56 239
meillo@56 240
meillo@56 241
meillo@56 242 <p><b>expand_h_sender_address</b> = <em>boolean</em></p>
meillo@56 243
meillo@56 244 <p>This sets the domain of the sender address as given by the Sender:
meillo@56 245 header to the same address as in the envelope return path address
meillo@56 246 (which can be set by either <b>set_return_path_domain</b> or <b>map_return_path_addresses</b>).
meillo@56 247 This is for mail clients (eg. Microsoft Outlook) which use this address as the sender
meillo@56 248 address. Though they should use the From: address, see RFC
meillo@56 249 821. If <a href="http://www.fetchmail.org">fetchmail</a> encounters an unqualified Sender:
meillo@56 250 address, it will be expanded to the domain of the pop server, which is
meillo@56 251 almost never correct. Default is true.</p>
meillo@56 252
meillo@56 253
meillo@56 254
meillo@56 255
meillo@56 256 <p><b>expand_h_sender_domain</b> = <em>boolean</em></p>
meillo@56 257
meillo@56 258 <p>Like <b>expand_h_sender_address</b>, but sets the domain only.
meillo@56 259 Deprecated, will be removed in a later version.</p>
meillo@56 260
meillo@56 261
meillo@56 262
meillo@56 263
meillo@56 264 <p><b>last_route</b> = <em>boolean</em></p>
meillo@56 265
meillo@56 266 <p>If this is set, a mail which would have been delivered using this
meillo@56 267 route, but has failed temporarily, will not be tried to be delivered
meillo@56 268 using the next route.</p>
meillo@56 269 <p>If you have set up a special route with filters using the lists
meillo@56 270 'allowed_rcpt_domains', 'allowed_return_paths', and
meillo@56 271 'allowed_mail_locals' or their complements (not_), and the mail
meillo@56 272 passing these rules should be delivered using this route only, you
meillo@56 273 should set this to 'true'. Otherwise the mail would be passed to the
meillo@56 274 next route (if any), unless that route has rules which prevent
meillo@56 275 that.</p>
meillo@56 276 <p>Default is false.</p>
meillo@56 277
meillo@56 278
meillo@56 279
meillo@56 280
meillo@56 281 <p><b>auth_name</b> = <em>string</em></p>
meillo@56 282
meillo@56 283 <p>Set the authentication type for ESMTP AUTH authentification.
meillo@56 284 Currently only 'cram-md5' and 'login' are supported.</p>
meillo@56 285
meillo@56 286
meillo@56 287
meillo@56 288
meillo@56 289 <p><b>auth_login</b> = <em>string</em></p>
meillo@56 290
meillo@56 291 <p>Your account name for ESMTP AUTH authentification.</p>
meillo@56 292
meillo@56 293
meillo@56 294
meillo@56 295
meillo@56 296 <p><b>auth_secret</b> = <em>string</em></p>
meillo@56 297
meillo@56 298 <p>Your secret for ESMTP AUTH authentification.</p>
meillo@56 299
meillo@56 300
meillo@56 301
meillo@56 302
meillo@56 303 <p><b>pop3_login</b> = <em>file</em></p>
meillo@56 304
meillo@56 305 <p>If your Mail server requires SMTP-after-POP, set this to a
meillo@56 306 get configuration (see <a href="masqmail.get.5.html">masqmail.get</a>).
meillo@56 307 If you login to the POP server
meillo@56 308 before you send, this is not necessary.</p>
meillo@56 309
meillo@56 310
meillo@56 311
meillo@56 312
meillo@56 313 <p><b>wrapper</b> = <em>command</em></p>
meillo@56 314
meillo@56 315 <p>If set, instead of opening a connection to a remote server, <em>command</em> will
meillo@56 316 be called and all traffic will be piped to its
meillo@56 317 stdin and from its stdout. Purpose is to tunnel ip traffic, eg. for ssl.</p>
meillo@56 318 <p>Example for ssl tunneling:</p>
meillo@56 319 <p>wrapper="/usr/bin/openssl s_client -quiet -connect pop.gmx.net:995 2>/dev/null"</p>
meillo@56 320
meillo@56 321
meillo@56 322
meillo@56 323
meillo@56 324 <p><b>pipe</b> = <em>command</em></p>
meillo@56 325
meillo@56 326 <p>If set, and protocol is set to 'pipe', <em>command</em> will be
meillo@56 327 called and the message will be piped to its stdin. Purpose is to use
meillo@56 328 gateways to uucp, fax, sms or whatever else.</p>
meillo@56 329 <p>You can use variables to give as arguments to the command, these
meillo@56 330 are the same as for the mda in the main configuration, see <a href="masqmail.conf.5.html">masqmail.conf</a>.</p>
meillo@56 331
meillo@56 332
meillo@56 333
meillo@56 334
meillo@56 335 <p><b>pipe_fromline = <em>boolean</em></b></p>
meillo@56 336
meillo@56 337 <p>If this is set, and protocol is set to 'pipe', a from line will be prepended to the output stream whenever
meillo@56 338 a pipe command is called. Default is false.</p>
meillo@56 339
meillo@56 340
meillo@56 341
meillo@56 342
meillo@56 343 <p><b>pipe_fromhack = <em>boolean</em></b></p>
meillo@56 344
meillo@56 345 <p>If this is set, and protocol is set to 'pipe', each line beginning with 'From '
meillo@56 346 is replaced with '>From ' whenever a pipe command is called. You probably want this if you have
meillo@56 347 set <b>pipe_fromline</b> above. Default is false.</p>
meillo@56 348
meillo@56 349
meillo@56 350
meillo@56 351
meillo@56 352
meillo@56 353 <h2>Author</h2>
meillo@56 354
meillo@56 355 <p>masqmail was written by Oliver Kurth
meillo@56 356 <oku@masqmail.cx></p><p>You will find the newest version of
meillo@56 357 masqmail at <a href = "http://masqmail.cx/masqmail/">http://masqmail.cx/masqmail/</a> or search for it
meillo@56 358 in freshmeat (<a href = "http://www.freshmeat.net">http://www.freshmeat.net</a>). There is also a mailing list,
meillo@56 359 you will find information about it at masqmails main site.</p>
meillo@56 360
meillo@56 361
meillo@56 362
meillo@56 363 <h2>Bugs</h2>
meillo@56 364
meillo@56 365 <p>You should report them to the mailing list.</p>
meillo@56 366
meillo@56 367
meillo@56 368
meillo@56 369 <h2>See also</h2>
meillo@56 370
meillo@56 371 <p>
meillo@56 372 <a href="masqmail.8.html">masqmail</a>, <a href="masqmail.conf.5.html">masqmail.conf</a>, <a href="masqmail.get.5.html">masqmail.get</a>
meillo@56 373 </p>
meillo@56 374
meillo@56 375
meillo@56 376
meillo@56 377 <h2>Comments</h2>
meillo@56 378
meillo@56 379 <p>This man page was written using <a href="http://masqmail.cx/xml2man/">xml2man</a> by the same
meillo@56 380 author.</p>
meillo@56 381
meillo@56 382
meillo@56 383
meillo@56 384 </td></tr></table></center>
meillo@56 385 </body>