masqmail

annotate ChangeLog @ 421:f37384470855

Changed lockdir to /var/lock/masqmail; Create lockdir and piddir on startup. Moved the lockdir out of the spool dir. (When /var/lock is a ramdisk we do well to have the lock files there.) Added the new configure option --with-lockdir to change that location. Nontheless, if we run_as_user, then lock files are always stored in the spool dir directly. Instead of installing the lockdir and piddir at installation time, we create them on startup time now if they are missing. This is necessary if lockdir or piddir are a tmpfs.
author markus schnalke <meillo@marmaro.de>
date Wed, 30 May 2012 09:38:38 +0200
parents 75f4a5676808
children 34c919a8d74e
rev   line source
meillo@48 1 This ChangeLog file summarizes the (implementation) changes from the
meillo@48 2 technical view.
meillo@41 3
meillo@41 4 The code repository log file provides the changes in full detail.
meillo@41 5
meillo@41 6 Have a look at the NEWS file for a summary of the changes in a less
meillo@41 7 technical speach and with focus on compatibility.
meillo@41 8
meillo@41 9
meillo@379 10 0.3.4 Wed, 18 Jan 2012 09:21:54 +0100
meillo@379 11 * Reworked the route concept. Better names: ``online_routes'' is now
meillo@379 12 known as ``query_routes'' and the ``local_net_route'' in now named
meillo@379 13 ``permanent_routes''. Removed the idea of the localnet because it
meillo@379 14 is only part of the more general concept: permanent routes. Removed
meillo@379 15 `local_nets'; they are now represented by allowed_recipients in a
meillo@379 16 permanent route. (See: examples/localnet.route) Now, there is no
meillo@379 17 more abiguity between `local' and `local net'. Run
meillo@379 18 admin/config-transition on your config to learn how to update it.
meillo@379 19 * Switched the default group for masqmail from `trusted' to `mail'.
meillo@379 20 * Fixed a problem with psb->remote_host, introduced in version 0.3.2
meillo@379 21 (changeset 412385b57dc4).
meillo@379 22 * Fixed a bug in matching of allowed recipients. Thanks to Juergen
meillo@379 23 Daubert for finding and reporting the issue.
meillo@379 24 * Enabled auth support per default.
meillo@379 25 * Removed support for openssl linking. It had been rarely used and
meillo@379 26 could have caused legal problems. We don't miss functionality here,
meillo@379 27 because we already have builtin MD5 support.
meillo@379 28 * Removed ident support. This had been discussed on the mailing list
meillo@379 29 in Oct 2011.
meillo@379 30 * `local_hosts' now understands glob patterns like `*example.org'.
meillo@379 31 * Lots of refactoring and removal of unused code.
meillo@379 32 * Smaller cleanups of the man pages.
meillo@379 33
meillo@338 34 0.3.3 Wed, 31 Aug 2011 08:38:13 +0200
meillo@336 35 * Fixed a possible security problem, reported by John Lightsey. See
meillo@336 36 Debian bug #638002. The return value of seteuid() calls was handled
meillo@336 37 wrong or not at all. Now, the (already available) set_euidgid()
meillo@336 38 function is used when possible. Additionally, removed the unnecessary
meillo@336 39 identity change when writing into an already open file descriptor.
meillo@336 40 * Added debug level 9 for msgs to stderr during reading config.
meillo@338 41 * Fixed local-part only address patterns in route conditions. The man
meillo@338 42 page claimed behavior that wasn't implemented up to now. Thanks to
meillo@338 43 Juergen Daubert for the bug report.
meillo@338 44 * Switched default listen address back from 127.0.0.1 to `localhost'.
meillo@338 45 Better be straight-forward than too clever.
meillo@336 46
meillo@324 47 0.3.2 Fri, 03 Jun 2011 10:14:33 +0200
meillo@324 48 * Fixed an important bug with folded headers! The folded lines
meillo@324 49 of a long header would be ignored in unpredictable cases.
meillo@324 50 Also fixed another problem with folded headers and
meillo@324 51 g_strconcat() in spool read.
meillo@324 52 * Reworked allowed and denied addrs for routes to be more
meillo@324 53 consistent and allow more flexible matching:
meillo@324 54 - allowed_mail_locals + allowed_return_paths ->
meillo@324 55 allowed_senders
meillo@324 56 - not_allowed_mail_locals + not_allowed_return_paths ->
meillo@324 57 denied_senders
meillo@324 58 - allowed_rcpt_domains -> allowed_recipients
meillo@324 59 - not_allowed_rcpt_domains -> denied_recipients
meillo@324 60 * Reworked online_detect to the simpler online_query. Only
meillo@324 61 pipe is supported now. Use
meillo@324 62 online_query="/bin/cat /path/to/file"
meillo@324 63 instead of
meillo@324 64 online_detect=file
meillo@324 65 online_file=/path/to/file
meillo@324 66 and
meillo@324 67 online_query="/path/to/some/script foo"
meillo@324 68 instead of
meillo@324 69 online_detect=pipe
meillo@324 70 online_pipe="/path/to/some/script foo"
meillo@324 71 See man page masqmail.conf(5) and admin/config-transition.
meillo@324 72 * Removed protocol option from route config because it was
meillo@324 73 somehow redundant. Now, if `pipe' is set, the protocol will
meillo@324 74 be pipe, otherwise it'll be smtp. That's just natural.
meillo@324 75 * Bugfix: off-by-one in pipe aliases
meillo@324 76 * Null-terminated the decoded base64 strings.
meillo@324 77 * Now the Received: headers are much friendlier to read. The
meillo@324 78 header for locally (i.e. non-SMTP) received mail is changed
meillo@324 79 to the format postfix uses.
meillo@324 80 * Replaced header_fold() with a better implementation and
meillo@324 81 improved the (yet) unused function header_fold().
meillo@324 82 * Made protocol names upper case, like RFC 5321 requires them.
meillo@324 83 * Several improvements to the man pages.
meillo@324 84 * As always: various refactoring.
meillo@324 85 * Ran aclocal and autoconf.
meillo@324 86 * Added a description of how I create a masqmail release.
meillo@324 87
meillo@291 88 0.3.1 Wed, 08 Dec 2010 18:03:04 -0300
meillo@253 89 * smtp_out.c: changed the SMTP greeting behavior to match RFC
meillo@253 90 2821 (always try EHLO first). Thanks to inne for pointing me
meillo@253 91 on that. See also Debian bug #349211
meillo@253 92 * fail_msg.c: postmaster is now matched caseless, as
meillo@253 93 required by RFC
meillo@287 94 * cmdline arguments are now added to the recipient list instead
meillo@287 95 of substracted, when -t is used
meillo@287 96 * print version if called without arguments (see commit message
meillo@287 97 or code)
meillo@287 98 * added -bm for mode accept (it's the default but the other MTAs
meillo@287 99 have it too)
meillo@287 100 * calling masqmail as `newaliases' is now recognized
meillo@291 101 * mark -qo (without argument) obsolete (see man page)
meillo@253 102 * refactored the cmdline argument processing (-m is recognized,
meillo@253 103 unknown -oXXX options are ignored now and some corner-cases
meillo@253 104 covered)
meillo@287 105 * operation modes are now enforced exclusive, fail otherwise
meillo@287 106 * -q and -qo are non-exclusive
meillo@258 107 * fixed -oem by removing it ;-) (see NEWS and docs/oem-option)
meillo@287 108 * heavy refactoring in parse.c and deliver.c, plus various
meillo@287 109 other refactoring
meillo@287 110 * fixed `To: alice, bob' with -t. If rcpt headers contained
meillo@287 111 an unqualified address followed by more addresses, they were
meillo@287 112 not recognized.
meillo@253 113 * created new functions manipulate_queue() and run_queue()
meillo@253 114 and moved code from main()
meillo@253 115 * replaced the loop-based alias_expand() with a new one that
meillo@253 116 wraps the recursive alias_one()
meillo@253 117 * removed ADDR_FLAG_NOEXPAND as it is not needed anymore
meillo@287 118 * removed ACC_DEL_RCPTS because it's always used together with
meillo@287 119 ACC_RCPT_FROM_HEAD
meillo@287 120 * s/EXIT_SUCCESS/0/ && s/EXIT_FAILURE/1/
meillo@253 121 * made addr_isequal() and addr_isequal_parent() more flexible,
meillo@253 122 thus making addr_isequal_alias() needless and removed
meillo@253 123 * merged rcptlist_with_one_of_hostlist() and
meillo@253 124 rcptlist_with_addr_is_local() into split_rcpts()
meillo@256 125 * removed the obsolete pos argument from time_interval()
meillo@253 126 * renamed the default route for the local net to
meillo@253 127 `default local_net_route'
meillo@253 128 * renamed `alias_local_caseless' to `caseless_matching' because
meillo@253 129 it does not only affect the matching of local parts of aliases
meillo@253 130 anymore but is used anywhere where address matching is
meillo@253 131 performed
meillo@253 132 * renamed conf.alias_local_cmp to conf.localpartcmp
meillo@253 133 * minor improvements of debug messages
meillo@287 134 * heavily improved and updated man/masqmail.8
meillo@253 135 * several, mostly cosmetic, cleanups
meillo@253 136
meillo@230 137 0.3.0 Fri, 23 Jul 2010 21:58:25 +0200
meillo@230 138 * new development branch
meillo@230 139 (Attention: No backward compatibility guaranteed.)
meillo@230 140 * removed POP3 support (also pop-before-smtp/smtp-after-pop)
meillo@230 141 * removed maildir support
meillo@230 142 * removed built-in mserver functionality
meillo@230 143 * removed, already deprecated, `remote_port' config option
meillo@230 144 * removed --disable-smtp-server and --with-glib-static
meillo@230 145 configure options
meillo@230 146 * exit if host_name is not set in conf file
meillo@230 147 * local_hosts defaults to `localhost;foo;foo.example.org' now
meillo@230 148 (generated from the value of host_name, here it would have
meillo@230 149 been `foo.example.org')
meillo@230 150 * listen on `localhost:25' now if listen_addresses is not set
meillo@230 151 in the conf file. To not listen at all, set listen_addresses
meillo@230 152 to the empty string.
meillo@230 153 * set default values for log_dir, spool_dir, mail_dir
meillo@230 154 * improved mservdetect
meillo@230 155 * build resolvtest tool now, the code was already there
meillo@230 156 * added setup guides
meillo@230 157 * improved and simplified the example config
meillo@230 158 * removed the old manual because it is really outdated now
meillo@230 159 * better debug logging of outgoing SMTP dialogs
meillo@230 160 * renamed misc/ to devel/ and contrib/ to admin/
meillo@230 161 * added admin/config-transition, to check for and inform about
meillo@230 162 obsolete config options
meillo@230 163
meillo@230 164 0.2.28 Fri, 23 Jul 2010 09:58:56 +0200
meillo@230 165 * added STARTTLS support with external wrappers like openssl.
meillo@230 166 Added a new route config option `instant_helo' therefore.
meillo@230 167 * added misc/list-versions
meillo@230 168
meillo@230 169 0.2.27 Sun, 18 Jul 2010 22:40:04 +0200
meillo@230 170 * replaced the MD5 implementation with the one of Solar
meillo@230 171 Designer
meillo@230 172 * replaced hmac_md5.c with an own implementation of RFC 2104
meillo@230 173 * added authors of contributed parts to AUTHORS
meillo@230 174
meillo@230 175 0.2.26 Sun, 18 Jul 2010 10:28:43 +0200
meillo@230 176 * write a log message when the daemon starts up. Thanks to
meillo@230 177 Juergen Daubert.
meillo@230 178 * added a missing #include <sys/stat.h> to local.c. Thanks to
meillo@230 179 Dominik Lang (phil).
meillo@230 180 * improved documentation of `wrapper' in route files
meillo@230 181 * fix handling of --with-liblockfile=no or
meillo@230 182 --without-liblockfile. Thanks to Nico Roeser.
meillo@230 183 * documentation improvements in the INSTALL file and some man
meillo@230 184 pages. Thanks to Nico Roeser.
meillo@230 185 * added misc/update-manpage-date, a development helper script
meillo@230 186 to update the date and version in man pages
meillo@159 187
meillo@149 188 0.2.25 Thu, 08 Jul 2010 00:49:36 +0200
meillo@126 189 * added server-side SMTP SIZE support. Thanks to Paolo.
meillo@126 190 * always remove Bcc: headers from now on
meillo@126 191 * never create headers from envelope recipients from now on
meillo@126 192 * add ``To: undisclosed-recipients:;'' if no recipient header
meillo@126 193 is present
meillo@143 194 * added checks for too long addresses in SMTP dialog. Thanks
meillo@143 195 to Paolo.
meillo@126 196 * allow colons (`:') unquoted in config file. Thanks to Paolo.
meillo@126 197 * new warnmsg.tpl.it. Thanks to Paolo.
meillo@126 198 * don't install the tests any longer
meillo@149 199 * remove all installed dirs but no generated data (logs,
meillo@149 200 spooled files, config)
meillo@126 201 * removed the ACC_NO_RECVD_HDR because it is never used
meillo@126 202 * changed name ACC_NODOT_TERM to ACC_DOT_IGNORE for better
meillo@126 203 understanding
meillo@143 204 * fixed max_size_delete
meillo@143 205 * added Paolo's mailq.wmbiffrc
meillo@126 206 * better debugging output. Thanks to Paolo.
meillo@143 207 * documented some, yet undocumented, config options
meillo@126 208 * improved documentation of -t option
meillo@149 209 * moved rmail to sbin and added man page for rmail(8)
meillo@126 210 * several typo fixes in man pages and code comments
meillo@143 211 * gen-dist: don't distribute mercurial files
meillo@126 212
meillo@94 213 0.2.24 Mon, 21 Jun 2010 10:07:32 +0200
meillo@77 214 * removed dead code in child.c
meillo@77 215 * fixed closing of log files on receival of SIGHUP. See commit
meillo@77 216 message and http://bugs.debian.org/536060 .
meillo@77 217 * the daemon does reparent to init anymore if init is already
meillo@77 218 its parent. This situation appears on SIGHUP receival.
meillo@77 219 * fixed correct processing of mails with data lines longer
meillo@77 220 4096 chars. See commit message for details.
meillo@94 221 * various refactoring
meillo@94 222 * fixed is_ingroup() to check for the primary group of users
meillo@94 223 * moved man page of mservdetect to section 1
meillo@94 224 * added rmail script from postfix which is a bit better than
meillo@94 225 calling masqmail as rmail. See docs/uucp-setup
meillo@94 226 * permissions.c describes how to make another group (e.g.
meillo@94 227 `uucp') trusted
meillo@94 228 * uninstall target removes now docs and thelike
meillo@94 229 * minor updates in the documentation
meillo@77 230
meillo@69 231 0.2.23 Sun, 30 May 2010 21:00:44 +0200
meillo@53 232 * fixed inverted condition for undefined online_file. Thanks to
meillo@53 233 Juergen Daubert.
meillo@69 234 * masqmail installs to /usr/local by default now. Previously it
meillo@69 235 installed to /usr.
meillo@69 236 * man pages get installed again. Again thanks to Juergen Daubert.
meillo@69 237 Docs and examples do get installed now too.
meillo@69 238 * updated the docs. Moved the man pages from docs/ to man/.
meillo@69 239 Added the old manual from the old website to the distribution.
meillo@69 240 * reworked the test cases completely.
meillo@69 241 * updated the README file and added a bug report howto
meillo@53 242 * fixed dist-gen (wrong paths for md5sum)
meillo@53 243
meillo@48 244 0.2.22 Thu, 20 May 2010 21:19:56 +0200
meillo@41 245 * new maintainer: markus schnalke <meillo@marmaro.de>. See NEWS.
meillo@41 246 * fixed expanding of $prefix for template files. Thanks to Johann
meillo@41 247 Felix Soden.
meillo@41 248 * fixed delivery with empty or non-existent alias files.
meillo@41 249 Thanks to Marcos Dione.
meillo@41 250 * fixed empty or only-whitespace connection names.
meillo@41 251 * fixed typos, reported by Reuben Thomas.
meillo@41 252 * corrected man page about /etc/aliases. Thanks to Alexis.
meillo@41 253 * further corrections and improvements in man pages. Man pages will
meillo@41 254 be maintained in the nroff code directly in future.
meillo@41 255 * removed distribution specific data from repo. It is now separately
meillo@41 256 available on the website.
meillo@41 257 * changed default online status file to /var/run/masqmail/masqmail-route
meillo@41 258 * removed trigraph warnings
meillo@41 259
meillo@30 260 0.2.21 Mon, 07 Nov 2005 14:09:21 -0800
meillo@30 261 * do not use shell when executing sub programs (security fix)
meillo@30 262 * do not accept backtick in email adresses (security fix)
meillo@30 263 * write log files as 'mail' user (security fix)
meillo@41 264 * use /var/run/masqmail/ for pid files
meillo@0 265 0.2.20 Mon, 19 May 2003 21:14:06 +0200
meillo@0 266 * fixed a segfaulting bug in spool.c caused by folded headers
meillo@0 267 * regard connect_error_fail when failing for pipes (Debian Bug #186364)
meillo@0 268 * hopefully fixed uid/gid problem in peidopen.c
meillo@0 269 0.2.19 Wed, 12 Mar 2003 21:33:53 +0100
meillo@0 270 * fixed a bug in addr_string (set buffer = NULL if g_free'd buffer)
meillo@0 271 0.2.18 Fri, 06 Dec 2002 14:57:41 +0100
meillo@0 272 * new option connect_error_fail
meillo@0 273 * install /var/{log,spool} before subdirs, so
meillo@0 274 they get correct ownerships, if installing to a tmp. directory
meillo@0 275 Thx to Juergen Daubert.
meillo@0 276 * failure notices and warnings also if connection fails
meillo@0 277 0.2.17 Thu, 28 Nov 2002 14:59:24 +0100
meillo@0 278 * fixed errors in man page masqmail.conf.5 about online_detect
meillo@0 279 Thx to Juergen Daubert.
meillo@0 280 * fixed a segfaulting bug in accept.c on pop retrieval, if there
meillo@0 281 is no return_path in the mail and Sender: is empty.
meillo@0 282 Thx to Olaf Buddenhagen for debug information.
meillo@0 283 * implemented 'last_route' option
meillo@0 284 * moved *.tpl to /usr/share/masqmail/tpl (from /etc/masqmail/tpl)
meillo@0 285 * french translation of warnmsg.tpl by Rémi Denis-Courmont
meillo@0 286 * added delivery warn messages for deferals
meillo@0 287 new options: 'warn_intervals', 'warnmsg_file', 'max_defer_time'
meillo@0 288 * warn/fail also if remote SMTP server replies with 4xx or 5xx
meillo@0 289 just after EHLO/HELO (yes, that was a bug)
meillo@0 290 * removed a few -Wall warnings. Thanks to Juergen Daubert.
meillo@0 291 0.2.16 Tue, 12 Nov 2002 17:27:13 +0100
meillo@0 292 * fixed debugging, which has been broken in 0.2.15
meillo@0 293 0.2.15 Wed, 06 Nov 2002 12:19:55 +0100
meillo@0 294 * added french translation of delivery failure message template.
meillo@0 295 Thanks to Rémi Denis-Courmont
meillo@0 296 * accept -f "" without segfaulting. Thanks to Ralf Friedl.
meillo@0 297 * fixed buffer overflows in conf.c. Thanks to Damian M Gryski.
meillo@0 298 * read conf file _after_ dropping privileges
meillo@0 299 0.2.14 Sat, 26 Oct 2002 14:40:49 +0200
meillo@0 300 * corrected html version of documentation
meillo@0 301 * include masqmail.8 man page (was garbled in 0.2.13)
meillo@0 302 * small lintian fixes for Debian
meillo@0 303 0.2.13 Wed, 23 Oct 2002 20:54:39 +0200
meillo@0 304 * fixed a possible buffer overflow (IMHO not exploitable) Thanks to Anonymous.
meillo@0 305 0.2.12 Wed, 23 Oct 2002 18:57:42 +0200
meillo@0 306 * new do_pipelining option (to switch it off if necessary)
meillo@0 307 * new helo_name option for route
meillo@0 308 * fixed remote_port option (but marked it as deprecated)
meillo@0 309 * swapped setegid/seteuid in maildir_out()
meillo@0 310 * try again on EAGAIN failure for local delivery via mbox
meillo@0 311 0.2.11:
meillo@0 312 * make it possible for *.route file to have mode 600, owned by root.
meillo@0 313 Thx to Juergen Daubert for noticing.
meillo@0 314 * do not choke on trailing blanks after comments in conf file. Anonymous
meillo@0 315 again.
meillo@0 316 * try again on EAGAIN failure for local delivery via mda
meillo@0 317 * fixed a potential buffer overflow in conf.c. Thanks to Anonymous
meillo@0 318 again.
meillo@0 319 * set umask 066 for log files. Thanks to Anonymous.
meillo@0 320 * implemented map_h_mail_followup_to_addresses
meillo@0 321 * fixed a bug: masqmail -t with empty body caused weird
meillo@0 322 errors. Thanks to Anonymous.
meillo@0 323 * added do_save_envelope_to option
meillo@0 324 0.2.10:
meillo@0 325 * fixed a small bug in mserver.c (atoi) (Thanks to Gert Ohme)
meillo@0 326 * allow ';' in rval also if rval is unqoted
meillo@0 327 * write pidfiles to /var/run/masqmail{,-get}.pid
meillo@0 328 * now runs on freebsd without leaving zombies
meillo@0 329 * use setjmp() in readsock.c for timeouts
meillo@0 330 0.2.9:
meillo@0 331 * attempts to make it compile on freebsd
meillo@0 332 - works, but leaves zombies behind (will be done next release, I hope)
meillo@0 333 * removed some bashisms from configure.ac
meillo@0 334 * fixed segfault when called with -t under some circumstances
meillo@0 335 * some fixes about locking when fetching mail (yes, 0 _is_ a valid fd...)
meillo@0 336 * some speedups for uidl handling, and do not bloat log files any more
meillo@0 337 0.2.8:
meillo@0 338 * use flock() for locking in retrieving mails (get.c)
meillo@0 339 * can use /etc/mailname as host_name (for Debian)
meillo@0 340 * added ESMTP LOGIN
meillo@0 341 * made uidl handling even more safe
meillo@0 342 0.2.7:
meillo@0 343 * fixed stupid locking bug
meillo@0 344 * do not complain about 'unknown mode' when getting mail
meillo@0 345 * added italian version of failmsg.tpl (by Paolo)
meillo@0 346 * changed MIME boundaries in failmsg.tpl (Paolo)
meillo@0 347 * applied patches from Paolo (Gabel - ):
meillo@0 348 mostly replacing g_strdup_printf() with g_strdup(), a few ticks ('),
meillo@0 349 changed SENDER_LOCAL environment variable and fixed missing '\' in
meillo@0 350 debian/masqmail.ip-up
meillo@0 351 0.2.6:
meillo@0 352 * rediscovered previously undocumented allowed_return_paths option for
meillo@0 353 routes and made it usable for null sender addresses.
meillo@0 354 * added mbox_default, and {mbox,mda,maildir}_users options
meillo@0 355 * changes to vsnprintf function use in pop3_in.c and smtp_in.c (by egp)
meillo@0 356 * fixes to ip-up/ip-down scripts (by Ben Low)
meillo@0 357 * ENABLE_SMTP_SERVER define was incorrectly written as
meillo@0 358 ENABLE_MODE_SMTP (by Ben Low)
meillo@0 359 * fixed bug in get_header() in src/header.c (by egp)
meillo@0 360 0.2.5:
meillo@0 361 * PowerPC fix for varargs functions
meillo@0 362 * relay checking: if do_relay is set to false, do not allow non local
meillo@0 363 to non local addresses
meillo@0 364 * alias is always caseless for postmaster (disregarding
meillo@0 365 alias_local_caseless option)
meillo@0 366 * do not rebounce to postmaster
meillo@0 367 * implemented Maildir support
meillo@0 368 * rearranged append_file in local.c
meillo@0 369 * use sysexits.h for correct error reply for failure messages (mda only)
meillo@0 370 0.2.4:
meillo@0 371 * fixed uidl bug: uidl list was not written if a mail was not
meillo@0 372 fetched because it was in the list
meillo@0 373 * fixed bug in src/conf.c: g_free'd twice in destroy_route()
meillo@0 374 * security fix, Debian Bug#102092: 'Privilege escalation in masqmail
meillo@0 375 piped alias handling': fixed by using set[ug]id instead of sete[ug]id
meillo@0 376 in peopen.c (noted by Colin Phipps)
meillo@0 377 * limit count of children in pop3_in.c and wait for them
meillo@0 378 * ignore SIGPIPE signal
meillo@0 379 * docu updates by Uli Funcke
meillo@0 380 * find path to masqmail via --prefix or --exec-prefix option for configure
meillo@0 381 * implemented -v (log to stdout) option
meillo@0 382 0.2.3:
meillo@0 383 * local_addresses and not_local_addreses option (patch by Uli Funcke)
meillo@0 384 * replaced /usr/sbin/masqmail in fail_msg.c with /usr/sbin/sendmail
meillo@0 385 * typo in man pages (noted by Sebastian Inacker)
meillo@0 386 * hostnames can now begin with a digit (noted by CatcherInTheRye)
meillo@0 387 * chdir to '/' (on some systems getcwd() failes when changing uid)
meillo@0 388 * implemented lock_dir option
meillo@0 389 * ignore EINVAL after fdatasync
meillo@0 390 * configure option to link with libcrypto
meillo@0 391 * configure option to disable resolver support
meillo@0 392 * configure option to enable mserver support
meillo@0 393 * configure option to disable smtp server
meillo@0 394 * configure option to link glib statically
meillo@0 395 * msg_count option for get configuration
meillo@0 396 * bug fix: do not terminate if accept() return
meillo@0 397 error (patch by Edouard G. Parmelan)
meillo@0 398 * removed some files from package in
meillo@0 399 debian (by Edouard G. Parmelan))
meillo@0 400 * mailrm alias (by Edouard G. Parmelan)
meillo@0 401 * bug fix: removed superfluous g_free from
meillo@0 402 dot_unlock() (by Edouard G. Parmelan)
meillo@0 403 * write uidl list to temporary file first
meillo@0 404 * write uidl list each time a message was retrieved
meillo@0 405 (avoid duplicate mails when interupted)
meillo@0 406 0.2.2:
meillo@0 407 * fix of Debian Bug#92894 by Gregor Hoffleit
meillo@0 408 (correct error reply for lacking permissions)
meillo@0 409 * fixed 'last line missing' bug
meillo@0 410 * fixed spool locking bug: lock was deleted
meillo@0 411 if unsuccessful (unlocking it)
meillo@0 412 * added patch from Uli Funcke for log_user
meillo@0 413 (user getting all delivered mail)
meillo@0 414 * implemented get daemon
meillo@0 415 * create lock file when getting mail
meillo@0 416 * use tables for finding route and get lists
meillo@0 417 0.2.1:
meillo@0 418 * expand_h_sender_address now defaults to true (as described in docs)
meillo@0 419 * included documentation patch by Marc Herbert (masqmail call in ifup configuration)
meillo@0 420 * complain to log if failure message template cannot be opened
meillo@0 421 * errmsg_file defaults to /etc/masqmail/tpl/failmsg.tpl
meillo@0 422 * corrected error message for insufficient permissions (Debian Bug #92894)
meillo@0 423 * get mail depending on connection: -go option and online_get
meillo@0 424 0.2.0:
meillo@0 425 * included the debian/ directory from the debian package.
meillo@0 426 * added return_path option for get configuration
meillo@0 427 * added max_messages option for get configuration
meillo@0 428 * added independent program 'mservdetect', which can be used with
meillo@0 429 online_detect=pipe as replacement for online_detect=mserver
meillo@0 430 * added online detection method 'pipe'
meillo@0 431 * replaced configure option --with-conffile with --with-confdir, default
meillo@0 432 is now /etc/masqmail/ (/etc/masqmail/masqmail.conf for the conf file).
meillo@0 433 * added do_uidl_dele option (delete messages in uid listing on server)
meillo@0 434 * qualify address for get configuration.
meillo@0 435 * better checking for valid From: address when retrieving mail via pop3
meillo@0 436 and this is used as the return path.
meillo@0 437 * port number for mail_host in routes possible
meillo@0 438 * introduce delivery failue notices
meillo@0 439 * added addr_string() function for easy output of addresses
meillo@0 440 * expire spool lock files after a while (currently 300s)
meillo@0 441 * started development branch 0.2.x
meillo@0 442
meillo@0 443 0.1.12:
meillo@0 444 * previous fix auf AUTH broke it - reverted it partially and fixed it again
meillo@0 445 * bug fix in get.c: retrieval via pop from different server could cause mail to be lost
meillo@0 446 0.1.11:
meillo@0 447 * bug fix in smtp_out.c: of AUTH methods supplied by server, only the first was recognized
meillo@0 448 0.1.10:
meillo@0 449 * added support for IP address as mail_host in routes
meillo@0 450 * include <time.h> in masqmail.h to make it compile with glibc 2.2.2
meillo@0 451 0.1.9:
meillo@0 452 * fixed a few typos in man pages
meillo@0 453 * ignore -v option
meillo@0 454 * added patch from Bernhard Ehlers to program aliases runq, rmail, smtpd and in.smtpd
meillo@0 455 * added patch from Edouard G. Parmelan to correct default directories to install
meillo@0 456 * implemtented pipe, pipe_fromhack and pipe_fromline options
meillo@0 457 for routes (for protocol 'pipe')
meillo@0 458 * implememted 'pipe' protocol for routes
meillo@0 459 * memset to 0 of configuration structures (it is safer and easier)
meillo@0 460 * list of routes for each connection
meillo@0 461 * do not be picky about EOF if locally received message is not terminated by a dot
meillo@0 462 * speeded up accept.c for large messages (noted by Falko Flessner)
meillo@0 463 0.1.8:
meillo@0 464 * security bug fix (Debian Bug#81079): if local address cannot be
meillo@0 465 resolved, masqmail listened on an arbitrary port (fixed by Adel
meillo@0 466 Belhouane)
meillo@0 467 * bug fix: -d without argument caused segfault (Thanks to Jan Setzer)
meillo@0 468 * added more help for configure
meillo@0 469 * Iain Lea sent a spec file for Redhat. Thanks!
meillo@0 470 * lines can now be indefinetely long for mail acception (well, nearly...)
meillo@0 471 * implemented 'wrapper' options for routes and get configurations for ssl and maybe other purposes
meillo@0 472 * unified read_sockline() for smtp_out.c, smtp_in.c, pop3_in.c, accept.c and mserver.c
meillo@0 473 * escaping of quotes in configuration now possible and now works
meillo@0 474 correctly in alias file (Edouard G. Parmelan sent a patch, but I fixed it differently)
meillo@0 475 * kill -HUP seems to work now.
meillo@0 476 * close all file descriptors >= 3 on start (patch by Edouard G. Parmelan)
meillo@0 477 * replaced exit() with _exit where appropriate (children)
meillo@0 478 * added pipe_fromhack and pipe_fromline options
meillo@0 479 * added mda support and mda_fromhack and mda_fromline options
meillo@0 480 * user can delete his own mail if received via smtp from one of ident_trusted_nets
meillo@0 481 * bug fix in lookup.c: if the name that an MX points could not be resolved, delete entry
meillo@0 482 * added expand_h_sender_address option. expend_h_sender_domain should be obsolete now.
meillo@0 483 * unprivileged user can delete his own mail from queue if received locally
meillo@0 484 * replaced popen() in local.c with peopen() from snippet from sourceforge. Fixed a bug there.
meillo@0 485 0.1.7:
meillo@0 486 * debug option can be changed for privileged users only
meillo@0 487 * fixed a security hole: -C option for unprivileged users now implies
meillo@0 488 run_as_user and drops _all_ privileges
meillo@0 489 * environment variables for pipe transport
meillo@0 490 * wildcards for map_* options
meillo@0 491 * rearranged interface handling, IP addresses now possible for
meillo@0 492 listen_addresses and mserver_iface
meillo@0 493 * beautified masqmail.c
meillo@0 494 * revised uid and gid settings in spool.c and local.c (pipe transport)
meillo@0 495 * optionally use ident protocol (RFC 1413) and store user id in spool file
meillo@0 496 * proper spool file locking
meillo@0 497 0.1.6:
meillo@0 498 * record user id in spool file (though it is not used anywhere)
meillo@0 499 * command line option to remove messages from queue (-Mrm)
meillo@0 500 * command line option for version information (-bV)
meillo@0 501 0.1.5:
meillo@0 502 * implemented -F option
meillo@0 503 * removed bug in accept.c (dot bug, noted by Andre Masloch)
meillo@0 504 * location of main conf is now configurable with ./configure
meillo@0 505 (suggested by Greger Hoffleit). Default is /etc/masqmail.conf.
meillo@0 506 * remote_port defaults to 25 (noted by Andre Masloch)
meillo@0 507 * docu fixes: remote_port documented and typo fix (noted by Andre Masloch. Again :-))
meillo@0 508 * do not return failure on exit on delivery if mail queue was empty (noted by Andre Masloch)
meillo@0 509 * qualify -f address with host_name if unqualified (noted by Andre Masloch)
meillo@0 510 0.1.4:
meillo@0 511 * Jens Askengren discovered a segfaulting bug when parsing headers.
meillo@0 512 0.1.3:
meillo@0 513 * warn if pop/auth options are given, but compiled without support
meillo@0 514 * fixed allowed_rcpt_domains option (was broken since 0.1.0, but nobody noticed)
meillo@0 515 * exit with 1 if queue run fails for any reason (not for daemon)
meillo@0 516 * fail if alias file cannot be read
meillo@0 517 * better handling of SMTP SIZE error
meillo@0 518 * implemented alias_local_caseless option (suggestion by Andre Masloch)
meillo@0 519 * case insensitive domain matching (noted by Andre Masloch)
meillo@0 520 * removed nearly all warnings if compiled with -Wall
meillo@0 521 0.1.2:
meillo@0 522 * some changes in configure.in
meillo@0 523 * continue if get conf could not be read. Thanks to Edouard G. Parmelan!
meillo@0 524 * fixed another bug on pipe addresses in spool.c
meillo@0 525 * Andre Masloch found a bug in spool.c which caused a segfault on pipe addresses. Thanks!
meillo@0 526 0.1.1:
meillo@0 527 * Edouard G. Parmelan sent a patch for starting a queue run on start of daemon. Thanks!
meillo@0 528 * rpm packages for SuSE
meillo@0 529 * regard CFLAGS in Makefile.am
meillo@0 530 * implemtented -g <name> option
meillo@0 531 * be more verbose in pop3_get.c
meillo@0 532 * implemented -f option (set return path)
meillo@0 533 * fixed bug: "no debug file, msg was:" in smtp_out.c when debugging was off
meillo@0 534 * internal changes of smtp_out_log_failure()
meillo@0 535 * removed 'no log file' error
meillo@0 536 * complain if host name could not be resolved in connect.c
meillo@0 537 * added option resolve_list for route and get configurations
meillo@0 538 * removed bug in rcptlist_with_one_of_hostlist(): exited when
meillo@0 539 list was empty
meillo@0 540 0.1.0:
meillo@0 541 * included ESMTP AUTH support (as client), CRAM-MD5 only
meillo@0 542 * included pop3 client support, with UIDL and APOP, single drop only
meillo@0 543 * rearranged routing code:
meillo@0 544 - messages will be deleted from spool earlier, as soon as they are delivered
meillo@0 545 - unified online/offline delivery, making it more simple
meillo@0 546
meillo@0 547 0.0.13:
meillo@0 548 * ignore set_h_{from,reply_to}_domain if map_h_{from,reply_to}_addresses
meillo@0 549 is set and warn in logs about misconfiguration.
meillo@0 550 * fail if there are no recipients
meillo@0 551 * fixed bug: if called with -t, qualify recipient address with host_name
meillo@0 552 * fixed bug: if called with -bi, no longer wait for message on stdin
meillo@0 553 0.0.12:
meillo@0 554 * warn if spool file could not be deleted (Thanks to Alberto González
meillo@0 555 Palomo)
meillo@0 556 * fixed bug: set len for getsockname
meillo@0 557 * fixed bug: set local_net_routes to NULL if there is no local net
meillo@0 558 (noted by Frank Schnekenbuehl)
meillo@0 559 * say 'mail queue is empty' if mail queue is empty (Thanks to
meillo@0 560 Frank Schnekenbuehl)
meillo@0 561 * fixed bug: setegid in local.c (was noted by both Michael Piefel and
meillo@0 562 Alberto González Palomo)
meillo@0 563 0.0.11:
meillo@0 564 * if Bcc: headers have been removed (-t option), and there is no To:
meillo@0 565 or Cc: header,an empty Bcc: header will be created (RFC 822
meillo@0 566 compliance!)
meillo@0 567 * fixed bug: if rcpts are given on command line To: headers were
meillo@0 568 created, even if they already existed. This caused Bcc: recipient
meillo@0 569 addresses to be revealed if they were given on the cmd line.
meillo@0 570 Now a To: header is only created if there is no To:, Cc: or Bcc:
meillo@0 571 header. Thanks to Richard Clamp for pointing this out.
meillo@0 572 * fixed bug: segfault when -d option was given without arguments
meillo@0 573 * fixed bug: segfault when configuration file not found
meillo@0 574 0.0.10:
meillo@0 575 * removed -g option from Makefile
meillo@0 576 * fixed bug: -odq did not work, was broken in some earlier version
meillo@0 577 * addresses with leading '\' will not be expanded any further in aliases
meillo@0 578 * pipe transport implemented
meillo@0 579 * alias support implemented.
meillo@0 580 * changed permissions for queue runs again: got to be root,
meillo@0 581 mail or in group trusted.
meillo@0 582 * some configuration parameters can be read from files
meillo@0 583 * internal changes in routing logics/deliver code, preparing for
meillo@0 584 aliases support.
meillo@0 585 * Gregor Hoffleit sent another patch: use liblockfile if available
meillo@0 586 (Debian!) and DESTDIR will be used. Also updated the NEWS file. Thanks
meillo@0 587 again!
meillo@0 588 * define fdatasync to fsync if not available.
meillo@0 589 * lookup.c includes sys/types.h, some environments need this
meillo@0 590 * fixed bug in RFC 822 parsing: name in brackets after address
meillo@0 591 caused problems. Thanks to David Maslen.
meillo@0 592 * values in tables without leading spaces
meillo@0 593 0.0.9:
meillo@0 594 * anyone in group 'trusted' is now allowed to do queue runs. Thanks to
meillo@0 595 Alberto Gonzalez Palomo for the suggestion.
meillo@0 596 * changed umask for spool writing to 026.
meillo@0 597 * removed silly 'no rcpt domain for this route' message
meillo@0 598 * there is now a mailing list
meillo@0 599 (see http://www.innominate.org/mailman/listinfo/masqmail)
meillo@0 600 * Gregor Hoffleit sent a patch to make masqmail work with mutt (and
meillo@0 601 balsa and any other MUA that uses the mutt libs): it now supports
meillo@0 602 '--' in options. Thanks!
meillo@0 603 * accept_message() supports flag ACC_NO_RECVD_HDR (but this is not
meillo@0 604 used in masqmail).
meillo@0 605 * accept_message() is no longer responsible for queuing, makes it
meillo@0 606 easier to recycle the code for other projects (eg. jpilot-Mail)
meillo@0 607 0.0.8:
meillo@0 608 * added a FAQ page.
meillo@0 609 * removed all warnings, at least for egcs. Output of make looks
meillo@0 610 pretty now ;-)
meillo@0 611 * added allowed_mail_locals and not_allowed_mail_locals options for
meillo@0 612 routes.
meillo@0 613 * implemented folding und unfolding of headers (but currently used
meillo@0 614 for the Received: header only).
meillo@0 615 * corrected docs: should be 'online_detect', NOT 'detect_online'.
meillo@0 616 * mailq now gives information about the time mails spent in the queue,
meillo@0 617 the message size and the received host.
meillo@0 618 * added allowed_rcpt_domains option for routes.
meillo@0 619 * increased buffer size to 1024 for SMTP responses when delivering.
meillo@0 620 * fixed minor bug: slash in unquoted strings in conf parsing was not
meillo@0 621 allowed.
meillo@0 622 0.0.7:
meillo@0 623 * fixed a bug in smtp_out.c: sock was tested before it was initialized.
meillo@0 624 * fixed a bug in the configuration code: for statements in two
meillo@0 625 adjacent lines, the second was not recognized.
meillo@0 626 0.0.6:
meillo@0 627 * rewrote part of the configuration parsing code because it caused
meillo@0 628 problems with reading config statements on multiple lines.
meillo@0 629 * added a LF after each mail local mail spool file, as this
meillo@0 630 seems to be required for some MUAs and especially cucipop when
meillo@0 631 it reads mails. Otherwise mails seem to be concatenated. Thanks
meillo@0 632 to Dale Perkel for pointing this out.
meillo@0 633 0.0.5:
meillo@0 634 * added expand_h_sender_domain option (boolean, default: true)
meillo@0 635 because some clients use the Sender: address as the sender address
meillo@0 636 (though it should be the From: address).
meillo@0 637 * changed configure script to better recognize whether libresolv
meillo@0 638 should be linked or not.
meillo@0 639 * fixed a nasty bug: if masqmail -q was called (or qo <name>
meillo@0 640 and a mail was not delivered), the headers were lost! Problem was an
meillo@0 641 additional LF after received_host in the spool file.
meillo@0 642 0.0.4:
meillo@0 643 * 'From' hack is now a 'From ' hack.
meillo@0 644 * configure now accepts options --with-logdir=LOGDIR and
meillo@0 645 --with-spooldir=SPOOLDIR.
meillo@0 646 * the directories /var/masqmail and /var/spool/masqmail will now be
meillo@0 647 created with make install; user and group will be set appropriately
meillo@0 648 * configure now accepts options --with-user=USER and --with-group=GROUP
meillo@0 649 * dove into autoconf: configure now recognizes libc5 and links with
meillo@0 650 libresolv only for libc6 and defines getline for libc5
meillo@0 651 * fixed timeout code when sending. This was broken in some earlier
meillo@0 652 version.
meillo@0 653 0.0.3:
meillo@0 654 * fixed bug in spool write code: rcpt address was written incorrectly
meillo@0 655 to spool file under some circumstances (with a LF).
meillo@0 656 * added methods for online detection (file and mserver) and added code
meillo@0 657 to deliver immediately when mail is received at online time.
meillo@0 658 * too many changes to list: rearranged routing code, unified smtp
meillo@0 659 deliveries to the local net with online deliveries, so now route
meillo@0 660 configurations can be used for the local net. Also multiple messages
meillo@0 661 per connection for the local net possible. And reduced code size.
meillo@0 662 * fixed bug: if server does not use neither the esmtp size extension
meillo@0 663 nor pipelining, output after MAIL FROM was not flushed. So MM waited
meillo@0 664 forever for a response...
meillo@0 665 0.0.2:
meillo@0 666 * fixed bug: euid was not set properly for local delivery
meillo@0 667 * when debugging, it does not write the whole message to the log
meillo@0 668 any more.
meillo@0 669 * added 'From' hack
meillo@0 670 * qualified address for return path and recipients is now required
meillo@0 671 if not accepted locally, if locally accepted the addresses will be
meillo@0 672 qualified with host_name. (Thereby fixed a seg fault bug)
meillo@0 673 * added -i option (same as -oi)
meillo@0 674 * added more header rewriting (set_ and map_ options)
meillo@0 675 * fixed bug: potential seg fault when writing spool files because it
meillo@0 676 was not read properly
meillo@0 677 * multiple messages per connection now also if mail is sent directly
meillo@0 678 (same for local_nets is still missing, but I will use routes for these
meillo@0 679 anyway in the future)
meillo@0 680 * the queue will now be read in random order
meillo@0 681 * implemented multiple messages per connection (but only online
meillo@0 682 and if mail_host is defined)
meillo@0 683 * implemented rewriting of local parts in return path for online
meillo@0 684 delivery
meillo@0 685 * domain matching is no longer case sensitive (had to define
meillo@0 686 _GNU_SOURCE so that I could use FNM_CASEFOLD for fnmatch)
meillo@0 687 * added do_correct_helo option for routes
meillo@0 688 * fixed bug: corrected retrying hosts if one failed (connect.c).
meillo@0 689 0.0.1:
meillo@0 690 * fixed bug: seg fault when delivering online directly and there was
meillo@0 691 more than one rcpt to a single host.
meillo@0 692 * fixed bug: if mail was succesfully delivered in online mode to all
meillo@0 693 rcpts, and if there were additional (local) rcpts for which the mail
meillo@0 694 was not yet delivered, the mail was deleted from spool.
meillo@0 695 * rearranged smtp_out.c to prepare for multiple messages per connection
meillo@0 696 * log now shows the real host a message is sent to by SMTP (previously
meillo@0 697 it was the one looked for, now it is the one that was found by DNS)
meillo@0 698 * added NOOP, HELP and not recognized replies in smtp_in
meillo@0 699 * fixed bug: forgot to close dup_sock in accept_connect (listen.c)
meillo@0 700 * can now list the queue with the -bp option or when called as mailq
meillo@0 701 * debug_level is now configurable and -d option added
meillo@0 702 * corrected rfc821 address parsing and rearranged code
meillo@0 703 0.0.0:
meillo@0 704 * initial release