masqmail

view NEWS @ 336:2d4aa516ba0e

updated ChangeLog and NEWS
author markus schnalke <meillo@marmaro.de>
date Sat, 27 Aug 2011 18:38:55 +0200
parents a4d8f20a992f
children 75f4a5676808
line source
1 This NEWS file lists changes which may be important for you, especially
2 in regard to compatiblity in upgrades.
4 See ChangeLog file for more details and technical changes that don't
5 affect users directly.
7 The manual pages describe newly added options. Take them for reference.
10 0.3.3
12 - Fixed a possible security problem, reported by John Lightsey. Unwanted
13 identity changes to the user root could have appeared.
16 0.3.2
18 - Fixed an important bug with folded headers! In earlier versions mail
19 to many recipients may, in unpredictable cases, only have been
20 delivered to the ones on the first line. This is fixed now. Sorry for
21 the inconvenience.
23 - Reworked allowed and denied addrs for routes to be more consistent
24 and allow more flexible matching:
25 o allowed_mail_locals + allowed_return_paths -> allowed_senders
26 o not_allowed_mail_locals + not_allowed_return_paths -> denied_senders
27 o allowed_rcpt_domains -> allowed_recipients
28 o not_allowed_rcpt_domains -> denied_recipients
29 See man page masqmail.route(5).
31 - Reworked online_detect to the simpler online_query. Only pipe is
32 supported now. Use
33 online_query="/bin/cat /path/to/file"
34 instead of
35 online_detect=file
36 online_file=/path/to/file
37 and
38 online_query="/path/to/some/script foo"
39 instead of
40 online_detect=pipe
41 online_pipe="/path/to/some/script foo"
42 See man page masqmail.conf(5) and admin/config-transition.
44 - Removed protocol option from route config because it was somehow
45 redundant. Now, if `pipe' is set, the protocol will be pipe, otherwise
46 it'll be smtp.
48 - Now the Received headers are much friendlier to read. The header for
49 locally (i.e. non-SMTP) received mail is changed to the format postfix
50 uses.
52 - Several improvements to the man pages.
54 - Updated autoconf.
57 0.3.1
59 - Changed the SMTP greeting behavior to match RFC 2821 (always try EHLO
60 first). Now always an EHLO greeting is sent first, no matter what kind of
61 greeting text the server had sent. If the EHLO failes, an HELO greeting
62 is tried as fall back. This change will fix setups in which it hadn't
63 been possible to send mail because the server required AUTH but hadn't
64 said ``ESMTP'' in its greeting message. Thanks to inne for pointing me
65 on that. This fixes also Debian bug #349211.
67 - The postmaster address is now matched caseless, as required by RFC.
69 - -qo (without argument) is now considered obsolete. Its behavior (online
70 detect and send over the available route) is included in -q. One may
71 simply use -q instead. In the -qo case no local mail is sent, but why
72 would be not want to do so? -qo (without arg) is still working but will
73 likely change its behavior to something more useful in the future.
75 - Command line address arguments are now added to the recipient
76 list instead of substracted, when -t is used. This coveres a rare
77 corner-case. It is a change from exim's behavior to postfix's.
79 - Several changes were made related to the operation modes: The situation
80 within the modes was made clear (see man page of masqmail(8)). If more
81 than one mode is specified then masqmail aborts. For the default operation
82 mode ``accept messages on stdin'' the command line switch -bm was added
83 (similar to othe MTAs). If masqmail is called without arguments, the
84 version information is printed now.
86 - The command line option -m is recognized now (although ignored).
87 Unknown -oXXX options are ignored. Some software (like spost of nmh)
88 calls the MTA with -m. This is mainly a relict of old sendmail times
89 but needed for compatibility.
91 - The implementation of the command line option -oem had been
92 weird. Now specifying -oem or -oee results in a (some kind of dumb but)
93 logical behavior. Common users will probably not notice any difference.
94 The changes affect only the exit code of the corner-case: Calling masqmail
95 with -oem but without -oi/-i while submitting messages on stdin.
97 - Fixed the recognition of lists of unqualified addresses in headers
98 when using -t. E.g. `To: alice, bob'.
100 - Renamed the config file option `alias_local_caseless' to
101 `caseless_matching' because the option affects any address matching.
103 - Renamed the default route for the local network to
104 `default local_net_route'. This is only of interest for log/debug file
105 studies.
107 - Improved and updated the man page for masqmail(8), especially in
108 respect to -oem which appears to be wrongly implemented. Minor
109 improvements of debug messages.
112 0.3.0
114 - Start of the new development branch. Attention: Backward
115 compatibility with 0.2.x versions will *NOT* be maintained. Upgrading
116 from 0.2.x to 0.3.x will probably require manual adjustment of the
117 configuration. The script admin/config-tansition can be used to check
118 the config files for obsolete options.
120 - Removed POP3 support (also pop-before-smtp/smtp-after-pop). Use some
121 other POP3 client instead.
123 - Removed maildir support. Use an MDA, like procmail, to deliver to
124 maildir.
126 - Removed the built-in mserver functionality. Use the mservdetect
127 program instead. See masqmail.conf(5) under `online_pipe' for details.
129 - Removed --disable-smtp-server and --with-glib-static configure
130 options. We see no more need to not compile the SMTP server function.
131 For static linking, see docs/howto-static-linking.
133 - `host_name' is the only mandatory config option now. If you only set
134 host_name, then masqmail will:
135 o accept mail on the command line
136 o listen on the local port 25 for incoming mail
137 o deliver mail locally
138 o not know how to handle mail for remote destinations
139 Therefore you should set up at least one route configuration.
141 - Default values are available for: listen_addresses, local_hosts,
142 log_dir, spool_dir, mail_dir. See masqmail.conf(5) for the values.
144 - Mservdetect works much better now.
146 - Improved the documentation:
147 o Added setup guides
148 o Improved and simplified the example config
149 And removed the old manual because it is really outdated now.
151 - Renamed misc/ to devel/ and contrib/ to admin/. devel/ contains
152 stuff for developers of masqmail, admin/ contains stuff for people who
153 install, upgrade, and configure masqmail.
156 0.2.28
158 - Added STARTTLS support with external wrappers like OpenSSL. See
159 `wrapper' and `instant_helo' in masqmail.route(5) for examples how to
160 use it. `instant_helo' is a new route config option.
163 0.2.27
165 - Replaced contributed code with possible licensing problems with
166 alternatives. The MD5 implementation changed from the reference
167 implementation of RFC 1321 to the Public Domain implementation of
168 Solar Designer. The HMAC-MD5 implementation changed from the reference
169 implementation of RFC 2104 to an own implementation (ISC License).
171 - Added the authors of contributed parts to the AUTHORS file.
174 0.2.26
176 - Write a log message when the daemon starts up. Thanks to Juergen
177 Daubert.
179 - Fix handling of --with-liblockfile=no or --without-liblockfile for
180 configure script. Thanks to Nico Roeser.
182 - Improved the INSTALL file and some man pages. Thanks to Nico Roeser
183 Improved the documentation of the wrapper option of route files.
186 0.2.25
188 - Added server-side SMTP SIZE support. Thanks to Paolo.
190 - Masqmail will from now on:
191 o always remove Bcc: headers
192 o never create headers from envelope recipients
193 o add ``To: undisclosed-recipients:;'' if no recipient header (To:
194 or Cc:) is present in the mail
196 - Colons (`:') don't need to be quoted in the config file anymore.
197 Thanks to Paolo.
199 - Added checks for too long addresses in SMTP dialog. Thanks to Paolo.
201 - Moved rmail to sbin and added a man page for it.
203 - Added warnmsg.tpl.it. Thanks to Paolo.
205 - The tests do not get installed any longer. All on install created
206 dirs are removed on uninstall, except they contain generated data like
207 logs, spooled files, or configuration.
209 - Documented some, yet undocumented, config options. Several typo
210 fixes in man pages and code comments.
213 0.2.24
215 - This version keeps on logging after an restart of the deamon, for
216 instance when sending SIGHUP to the daemon process for rereading its
217 config.
219 - Now the daemon keeps the same process id when it receives SIGHUP to
220 reread the config.
222 - Mail messages with lines longer than 4096 characters do not get
223 truncated anymore.
225 - Fixed checking of the trusted group. Primary groups are now
226 detected too.
228 - Mservdetect's man page is now in section 1.
230 - An `rmail' command is now included and gets installed with
231 masqmail. See docs/uucp-setup for more information.
233 - Docs and thelike, that masqmail installs, is removed on uninstall
234 now.
237 0.2.23
239 - This release fixes a major bug in 0.2.22 which made online detection
240 by file unusable. Thanks to Juergen Daubert for reporting and providing
241 a patch.
243 - Masqmail installs to /usr/local by default now. Previously it
244 installed to /usr. To regain the old behavior, add
245 --prefix=/usr
246 to the configure call.
248 - Man pages get installed again; in 0.2.22 they were not. Again thanks
249 to Juergen Daubert. Docs and examples do get installed now too.
251 - Updated the docs. Moved the man pages from docs/ to man/. Added the
252 old manual from the old website to the distribution. Added a bug
253 reporting howto.
256 0.2.22
258 - Hello, I'm meillo, the new maintainer and developer of masqmail. Oku
259 handed masqmail over to me, because he wasn't active anymore.
261 - This release includes various fixes for problems in 0.2.21, mainly
262 based on bugs from Debian.
264 - Distribution specific data has been excluded from the distribution,
265 but is separately available on the project's website.
267 - Man pages will not be generated from xml sources in future, but the
268 nroff sources will be maintained directly.
270 - The default online status file is now
271 /var/run/masqmail/masqmail-route, as it already was in the Debian
272 package.
275 0.2.21
277 - Retrospective: Probably, this version was not published in the usual
278 way by oku. I (meillo) grabbed it from Debian's package archive. It does
279 not introduce new functions but fixes security problems, such as writing
280 log files as user `mail'. It also changes the location for pid files;
281 they are stored in /var/run/masqmail/ now.
284 0.2.18
286 - delivery warnings and failures are now also implemented if the
287 connection to a server fails. Because masqmail is designed for dialup
288 networks, a connection failure will merely generate a warning by default.
289 If you deliver in a local network and use the default local_net route,
290 this would generte a failure. You can change this behaviour by setting
291 'connect_error_fail' to either true or false in the route configurations.
293 0.2.17
295 - delivery warnings have been finally implemented: if delivery of a mail
296 fails temporarily, warning mail will be generated, informing the sender
297 of the problem. After some time, the mail will be handled as failing
298 permanently, and be bounced. New options: 'warn_intervals',
299 'max_defer_time' and 'warnmsg_file'.
301 - the message templates for failures and warnings will now be installed
302 into /usr/share/masqmail/tpl/, and no longer to /etc/masqmail/tpl/. The
303 default for the search path (options 'errmsg_file' and 'warnmsg_file'
304 has been changed accordingly.
306 - new option 'last_route'. See man 5 masqmail.route.
308 0.2.12
309 two new options have been added:
310 - do_pipelining will be used only in broken mail setups. Actually, I
311 implemented it only to test such a setup.
313 - helo_name for routes sets the helo_name. This may be useful for
314 eg. ssh tunneling, or if do_correcthelo does not work, because you are
315 behind a firewall.
317 - the old 'remote_port' option should not be used any more. Set the
318 port with mail_host="foo.bar.com:1234" in the route file instead.
320 0.2.11
322 - two new options have been added: do_save_envelope_to for the main
323 configuration and map_h_mail_followup_to_addresses for the route
324 files. See the man pages on purpose and usage.
326 - the route files can now be mode 0400, owned by root. Previous
327 versions had problems when sendmail was called directly by a
328 non-priviledged user, because the route files could not be read.
330 0.2.10
332 - this version should work on FreeBSD. At least I care now if it does not.
334 - masqmail now writes pid files to /var/run/, one for the smtp/queue
335 daemon and one for the get daemon. So you now know whom to kill ;-)
337 - much effort has been put into the Debian package, which now uses debconf.
339 0.2.7
341 - sorry for my reluctany in the last months...
342 - my email address is oku@masqmail.cx. I hope that I keep this for the rest
343 of my life...
345 0.2.6
347 - you can configure the prefered local delivery mechanism for each user. See
348 man page masqmail.conf (5), options mbox_default, mbox_users, mda_users and
349 maildir_users. BIT FAT NOTE: if you used an mda, set mbox_default = "mda"
350 (or use the mda_users option). Just setting mda is not enough any more.
352 - there are the allowed_return_paths and not_allowed_return_paths for the
353 route configurations, this enables better checking for return path addresses
354 than allowed_mail_locals. You can also use this to enable or disable messages
355 from null sender addresses (<>) using "<>".
356 note: this option has been there for quite a time... I just forgot to document it.
358 0.2.5
360 - simple relay checking: if you set do_relay=false in masqmail.conf, users
361 with a return path that is not local will get a 550 reply if they try to
362 deliver to a not local address. This is for users to force them to have a
363 proper configuration. It is _not_ to prevent spammers from using your MTA
364 as a relay, it can be easily forged! masqmail is not designed to be an always
365 accessible MTA for an internet site.
367 - added Maildir support. To use it, add --enable-maildir as ./configure
368 optiom. Currently, if enabled, all local deliveries are to Maildir
369 (in ~user/Maildir), and none to mailbox. This is preliminary, future versions
370 will be configurable (probably together with mda delivery).
372 0.2.4
374 - added -v option, this logs to stdout, so you see what happens when
375 calling masqmail from command line. This is not yet finished, and only
376 for fetching mails completed.
378 0.2.3
380 - new option lock_dir where locks will be put to. Defaults to the spool
381 dir with '/lock/' appended (if spool_dir is /var/spool/masqmail/, lock_dir
382 is /var/spool/masqmail/lock/).
384 - You can use the 'do_uidl_dele' option more reliably. The uidl list
385 will be written immediately after a message was fetched, so if you use the
386 do_uidl and do_uidl_dele option you can safely interrupt masqmail when it is
387 getting mail via pop3, and do not get the message again next time.
389 - there are a lot of new options for ./configure to customize masqmail
390 to your needs. See INSTALL.
392 - Uli Funcke sent a patch with the new options 'local_addresses' and
393 'not_local_addresses' for masqmail.conf. With these, you can declare single
394 email addresses as local, though they normally are not, and vice versa,
395 declare addresses as not local though normally they are (determined with
396 local_hosts). These options are not yet documented.
398 0.2.2
399 - with -go5m you can now run a get daemon, the command 'masqmail -go5m' will fetch
400 mail every five minutes, using the detected online configuration.
402 0.2.1
404 - there is a new option for the main conf: online_gets. Using this option,
405 you can retrieve mail with just calling masqmail -go, masqmail will detect
406 whether it is online (similar to connect_routes (which is now called
407 online_routes)).
409 0.2.0
411 This is the first release of he development branch of masqmail
413 - the default configuration is now /etc/masqmail/masqmail.conf
414 (as it already was for the debian package). The --with-conffile
415 option for configure has been replaced by the --with-confdir option.
417 - added delivery failure notices:
418 o you can customize your own delivery failure report, its
419 default location is /etc/masqmail/tpl/failmsg.tpl
420 o if a delivery via a route fails permanently (the server replied with a 5xx status)
421 the message will be bounced, if it is bounced, no further delivery will be attempted.
422 This is different to previous versions, where failed messages were kept in the queue until
423 it was finally delivered, deleted or forever.
425 - there is a new online detection method: pipe. This allows you more
426 flexibility to detect the current online status, eg. the DHCP status on notebooks.
428 This method will once replace the 'mserver' option,
429 you can already use the program mservdetect to use it:
431 online_method=pipe
432 online_pipe="/usr/bin/mservdetect localhost 222"
434 instead of
436 online_detect=mserver
437 mserver_iface="localhost:222"
439 0.1.9
441 - you can use pipes in routes to implement gateways to uucp, fax, sms etc.
442 The setup is similar to mda transport. See man pages.
444 - for each connection (connect_routes), you can now give a list of
445 route files, which will be used in the order given. You can use the
446 filter rules (allowed_* and not_allowed_* rules) within each route.
448 0.1.8
450 - for pop retrieval and smtp sending you can use a wrapper for eg. ssl
451 tunneling. See man pages.
453 - a user can delete his mail from the spool with -Mrm if received
454 locally, and if you configure with --enable-ident and set
455 ident_trusted_nets also if received via smtp.
457 - a backslash now works to escape characters in the configuration, so
458 you can now use quotes inside quotes. All other characters with a
459 leading backslash will be converted to itself (\a becomes a, \\
460 becomes \).
462 - you can now use an mda for local mails. The mda will be called
463 *after* alias expansion. See documentation for more.
465 0.1.0
466 - masqmail can now retrieve mail with pop3. See the manual on how to do that.
467 - supports now ESMTP AUTH as a client.
468 - when called with -qo (without a connection name), the online status
469 will be checked with the configured method.
471 0.0.10
472 - there is now alias support. Give the location of the alias file (usually /etc/aliases) with eg.
473 alias_file = "/etc/aliases"
474 - delivery to pipes is now possible, but only if it appears in an alias file. Example:
475 pipe: |/usr/bin/command
476 will expand the address pipe to "|/usr/bin/command" which invokes '/usr/bin/command'
477 as the user and group masqmail is running as.
478 - entries starting with '\' in alias files will not be exanded further
480 - changed permissions for queue runs again: got to be root, mail or in group trusted.
482 - some configuration parameters can be read from files, these are
483 allowed_mail_locals, not_allowed_mail_locals, allowed_rcpt_domains, not_allowed_rcpt_domains,
484 map_return_path_addresses, map_h_from_addresses, map_h_reply_to_addresses
485 any entry in these list beginning with a '/' are regarded as
486 filenames, the content of these will be put at that location. Entries
487 in these files are separated by new lines. Example:
488 in the route file you have:
489 map_h_from_addresses = "/etc/masqmail/hfrom.map"
490 and hfrom.map contains:
492 john: John Smith <jsmith@mail.academic.edu>
493 cmiller: "Charlie Miller" <cmiller@foo.com>
495 UPDATE (Jan 2000): The new home location of MasqMail is
496 http://www.innominate.org/~oku/masqmail/, the new email adress of the
497 author is Oliver Kurth <kurth@innominate.de>.
499 0.0.9
500 - see ChangeLog.
502 NOTE: The home location of MasqMail at
503 http://merlin.uni-sw.gwdg.de/~okurth/masqmail/ is uncertain from the
504 beginning of Nov. 1999! See http://www.freshmeat.net for new
505 announcements. I leave the university and begin a new job on Nov. 1st 1999
506 in Berlin :-).
508 0.0.8:
509 - there is now a FAQ page. See docs/faq.html.
510 - added allowed_rcpt_domains option for routes.
511 - added allowed_mail_locals and not_allowed_mail_locals options for routes.
512 - mailq now gives information about the time mails spent in the queue,
513 the message size and the received host.
515 0.0.7:
516 -bug fix release: for statements in two adjacent lines, the second was not recognized.
518 0.0.6:
519 - bug fix release: some MUAs (cucipop) saw the locally delivered mails
520 concatenated. (cucipop is not a MUA but a pop server, but it has to read the
521 mails).
523 0.0.5:
524 - fixed a bug that caused the headers to be lost under some circumstances.
525 - added expand_h_sender_domain option for routes.
526 - rewrote the libresolv part in configure. Should work better now.
528 0.0.4:
529 - MM should now recognize whether libresolv should be linked.
530 - added --with-logdir=LOGDIR and --with-spooldir=SPOOLDIR to set directories.
531 These will be created if not already existent.
532 - added --with-user=USER, --with-group=GROUP options to set user and group id
533 for MasqMail.
535 0.0.3:
536 - MasqMail can now deliver mails that are received at online
537 time immediately to the internet. See the options detect_online,
538 mserver_iface and online_file.
539 - You can define a route configuration for the local net. See option
540 local_net_route.