Skip to content
HISTORY 319 KiB
Newer Older
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: vstring_get() etc. now return VSTREAM_EOF when they
	terminate prematurely, instead of returning the last
	character stored.  This avoids mis-leading warnings. File:
	global/vstring_vstream.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040105

	Cleanup: don't bother the flush daemon while deferring mail
	if the destination is not "fast flush" eligible. File:
	global/flush_clnt.c.

	Safety: the SMTP server flushes recipients to the cleanup
	server in order to avoid SMTP timeouts when virtual or
	canonical expansions take a lot of time. File smtpd/smtpd.c.

	Safety: add warnings to postmap and postalias when table
	lookup results in an empty string.

20040110

	Example: script to run qmail-local from Postfix by Ron
	Bickers.

	Change: queue minfree limit is now 1.5 * message size limit.
	File: smtpd/smtpd_check.c.

	Bugfix: apply hostname restriction even when host address
	lookup fails in check_{sender,recipient}_{ns,mx}_access.
	File: smtpd/smtpd_check.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040115

	Performance: allow delivery concurrency to increase even
	while mail is deferred, as long as the delivery agent does
	not report really serious trouble with the destination.
	Files:  *qmgr/qmgr_deliver.c.

Boris Mühmer's avatar
Boris Mühmer committed
	Cleanup: in postfix-files, symbolic links and hard links
	are now first-class citizens with explicit mention of
	source and destination pathnames. Files: postfix-install,
	conf/postfix-files, conf/post-install.

20040116

	Cleanup: sendmail -v caused one mail delivery report upon
	every delivery attempt, not just the first one. The fix is
	to "kill" a queue file record after the first delivery
	attempt. This means a new record type. Files:  *qmgr/qmgr_active.c,
	*qmgr/qmgr_message.c, global/rec_type.c.

	Cleanup: in anticipation of other built-in rate limiters,
	the client_connection_rate_time_unit parameter is renamed
	to client_rate_time_unit.

	Documentation: finished the HOSTING_README file with an
	overview of methods to host domains with Postfix.

20040119

	Bugfix: anvil (count and rate limiting) server race condition
	could result in dangling pointer.  Postfix erases memory
	after allocating and before freeing, so it is extremely
	unlikely that this could be used to bring harmful data into
	the anvil server. File anvil/anvil.c.

20040120

	Cleanup: new header_checks(5) and body_checks(5) manual
	pages.  The sample-regexp* and sample-pcre* files are no
	longer needed and have been removed, as are the default
	*_table configuration files.

	Cleanup: support for the non-standard Errors-To: header
	is removed. File: cleanup/cleanup_message.c.

20040121

	Feature: "PREPEND headername: headervalue" action in Postfix
	access maps, to facilitate external policy servers that
	label mail instead of rejecting it. Files: smtpd/smtpd.c,
	smtpd/smtpd_check.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040122

	UNDO the 20040104 change (vstring_get() etc. return
	VSTREAM_EOF when they terminate prematurely, instead of
	returning the last character stored, to avoid mis-leading
	warnings). File:  global/vstring_vstream.c.

	Portability: test -e is not portable. File: conf/postfix-script.

Boris Mühmer's avatar
Boris Mühmer committed
	Misc. documentation fixes by Victor Duchovni.

	Documentation: the README files are now hyperlinked, and
	are referenced in the on-line manual pages.
Boris Mühmer's avatar
Boris Mühmer committed

	Bugfix: the pickup daemon now strokes the watchdog frequently
	to prevent the watchdog from barking when mail arrives
	faster than it can be picked up. File: pickup/pickup.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040123

	Feature: set smtpd_reject_unlisted_{sender,recipient}=no to
	turn off automatic rejection of non-existent local, virtual
	or relay addresses. This way it can be made conditional
	for local clients, always on for remote clients. Files:
	global/mail_params.h, smtpd/smtpd.c, smtpd/smtpd_check.c.

20040124

	Feature: PREPEND in header/body_checks, for message tagging.
	File: cleanup/cleanup_message.c.

20040126

	Safety: handle the case that main.cf is updated while it is
	being read. File: util/dict.c.

	Feature: "instance" attribute that links policy etc. queries
	to the same message instance.

	Cleanup: the mynetworks setting may now be empty. File:
	global/mail_params.c.

20040127

	Bugfix: missing flush_init() call. Introduced 20040105.
	File: postqueue/postqueue.c.

20040128

	Cleanup: clnt_stream derived classes now try to detect that
	the server has disconnected before sending data and warning
	about an error. File: global/clnt_stream.c.

20040202

	Bugfix: changed mis-leading warning about text>4096 characters
	into "unexpected end-of-input". File: util/attr_scan0.c.

20040201

	Feature: sasl_method, sasl_username and sasl_sender attributes
	in smtpd policy queries. Files: src/smtpd/smtpd_check.c.

20040204

	Safety: smtpd_soft_error_limit now determines when
	$smtpd_error_sleep_time starts to take effect.

	Cleanup: local(8) and virtual(8) will now create maildirs
	in a world-writable directory. Files: util/make_dirs.c.

	Bugfix: don't panic on a corrupt queue file.  File:
	*qmgr/qmgr_message.c.

20040205

	Cleanup: sample-filter.cf is gone. Better documentation is
	available with "man header_checks".

20040209

	Bugfix: when delivery to smtpd_proxy_filter fails, report
	"451 Queue file write error" instead of repeating the
	previous "354 End data with <CR><LF>.<CR><LF>" response.
	File:  smtpd/smtpd.c.

20040220

	Compatibility: accept and ignore the sendmail -bh and -bH
	mode of operation requests.

20040302

	Bugfix: SMTPD proxy didn't send QUIT as the result of code
	duplication. Evidence reported by Mark Martinec. File:
	smtpd/smtpd.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040311

Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: bad address syntax was passed to transport map
	lookups.  Problem reported by Andrei Koulik. File:
	util/match_ops.c, trivial-rewrite/resolve.c.

20040324

	Portability: ekkoBSD support by Philip Reynolds.
	Files: makedefs, util/sys_defs.h.

20040325

	Cleanup: smtp_skip_4xx_greeting and smtp_skip_5xx_greeting
	functionality is moved from connection management to SMTP
	protocol processing, so that Postfix now logs the server
	response when a server refuses to provide service.  Files:
	smtp/smtp_connect.c, smtp/smtp_proto.c.

	Cleanup: smtp_skip_4xx_greeting is no longer configurable;
	it is now permanently turned on.

20040326

	Workaround: in the trivial-rewrite server, turn on the code
	to strip trailing "." while rewriting addresses, and change
	the address resolver to strip trailing "." in a compatible
	manner.  This does not eliminate the problem that the SMTP
	server may use a different address for recipient validation
	than what the cleanup server uses for virtual alias mapping.

20040329

	Bugfix: the SMTP server did not log client (and SASL)
	information with the real-time content filter was enabled.
	Files: smtpd/smtpd.c, smtpd/smtpd_sasl_proto.c.

	Compatibility: smtpd_reject_unlisted_sender is turned off
	by default, to avoid trouble with with in-house software
	that sends out mail software with an unreplyable address.

20040331

	Bugfix: postdrop should not abandon mail submission after
	receiving a SIGHUP signal when SIGHUP was ignored by the
	parent process.  Victor Duchovni, Morgan Stanley.  File:
	postdrop/postdrop.c.

	Bugfix: parsing bug in PgSQL dictionaries causing UNIX
	sockets to be ignored. Liviu Daia. Files: global/dict*sql.c.

	Performance: allow MySQL and PgSQL database connections to
	be closed when idle for more than 1 minute; Liviu Daia.
	Files: global/dict*sql.c.
Boris Mühmer's avatar
Boris Mühmer committed
	Sanity: the SMTP server no longer accepts sender or recipient
	addresses that end in the "@" null domain, as well as
	addresses that rewrite into such a form.  Specify
	"resolve_null_domain=yes" to get the old behavior back.
	File:  trivial-rewrite/resolve.c.

20040402

	Cleanup: added WARN action support for access maps, for
	consistency with the WARN action in header and body checks.
	File:  smtpd/smtpd_check.c.
Boris Mühmer's avatar
Boris Mühmer committed

20040407

	Bugfix: missing return statement at the end of the
Boris Mühmer's avatar
Boris Mühmer committed
	FREE_MEMORY_AND_RETURN error handling macro. Adi Prasaja.
Boris Mühmer's avatar
Boris Mühmer committed
	File: trivial-rewrite/resolve.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040411

	Future proofing: client_rate_time_unit is renamed to
	anvil_rate_time_unit, so that it is no longer limited to
	clients only. File: src/global/mail_params.h.

	Cleanup: postalias and postmap now log problems to syslogd.
	Files: postalias/postalias.c, postmap/postmap.c.

20040413

	Feature: "postfix set-permissions" (re)sets ownership and
	access permissions of Postfix files and directories.

	Feature: "postfix upgrade-configuration" updates main.cf
	and master.cf. This is for people who people copy over
	their old files after installing a newer Postfix version.

	Feature: HTML files are now optionally installed under
	control of the html_directory configuration parameter.
	Files: postfix-install, conf/postfix-files, conf/post-install.

	Cleanup: README file installation is now optional.  Files:
	postfix-install, conf/postfix-files, conf/post-install.

Boris Mühmer's avatar
Boris Mühmer committed
20040414

Boris Mühmer's avatar
Boris Mühmer committed
	Cleanup: references to sample-mumble.cf files removed,
	conf/mumble_table files removed, new commands added to
	conf/postfix-script.

	Cleanups: function declared in but used as void, missing
	include file, missing const qualifier, unused variable.
	Matthias Andree. Files:  bounce/bounce_notify_util.c,
	bounce/bounce_service.h, postlog/postlog.c, smtpd/smtpd_check.c,
	util/attr_scan64.c.
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: more robust version of SIGHUP test of 20040331.
	Victor Duchovni, Morgan Stanley. File: postdrop/postdrop.c.

	Safety: added NOCLOBBER qualifiers to local variables that
	might be clobbered by longjmp(). Files: util/sys_defs.h,
	smtp/smtp_proto.c, lmtp/lmtp_proto.c, smtpd/smtpd_check.c,
	smtpstone/smtp-source.c.

	Bugfix: sub-level Makefiles no longer turned on the extra
	compiler warnings. Files: Makefile.in.*, makedefs.*.
Boris Mühmer's avatar
Boris Mühmer committed

20040415

	Bugfix: the LMTP client attempted to reuse a connection
	after timeout, causing protocol synchronization errors.
	Reported by Rob Mueller. File: lmtp/lmtp.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040416

	Cleanup: non-delivery reports now include the original
	recipient information. File: bounce/bounce_notify_util.c.

20040415-18

	Typos: many documentation fixes by Rob Foehl.

20040418

	Cleanup: "int" versus "const int" prototype mismatch between
	the DICT sequence method prototype and possible implementations.
	Files: util/dict_db.c, util/dict_dbm.c.

20040419

	Bugfix: the code that rejects client/helo RESTRICTIONS with
	smtpd_delay_reject=no looked at the wrong evidence and
	rejected client/helo ACCESS MAP lookups instead. Michael
	Tokarev. Files:  smtpd/smtpd.c, smtpd/smtpd_check.c.

	Bugfix: missing # in master.cf in optional submission
	service.

20040420

	Bugfix: smtpd logged the client too often. Michael Tokarev.
	File: smtpd/smtpd.c.

	Cleanup: client_event_status_update_time renamed to
	anvil_status_update_time. Files: mantools/postlink,
	proto/postconf.proto, anvil/anvil.c.

Boris Mühmer's avatar
Boris Mühmer committed
20040421

	Workaround: allow pipelined SMTP clients to overshoot the
	SMTP server recipient limit without triggering the server
	hard error limit.  The SMTP server does not count "too many
	recipients" towards the hard error limit, as long as the
Boris Mühmer's avatar
Boris Mühmer committed
	number of excess recipients stays within a configurable
	overshoot limit (default: smtpd_recipient_overshoot_limit
	= 1000).  Solution in cooperation with Victor Duchovni.
Boris Mühmer's avatar
Boris Mühmer committed
	Files:  smtpd/smtpd.c, smtpd/smtpd_state.c, smtpd/smtpd.h.
Boris Mühmer's avatar
Boris Mühmer committed
20040503

	Bugfix: missing "sasl enabled" guard in the SMTPD policy
	client.  File: smtpd/smtpd_check.c.

20040614

	Bugfix: the SMTP client did not reset per-session EHLO,
	SASL, and history information when opening a connection to
	an alternate SMTP server.  This is the result of abstraction
	no longer matching function. Reported and diagnosed by
	Victor Duchovni, Morgan Stanley.

	Bugfix: non-portable reuse of variadic argument lists.
	Fix by Victor Duchovni, Morgan Stanley. Files:  global/bounce.c,
	global/defer.c, global/sent.c, global/trace.c, global/verify.c.

	Portability: NetBSD 2.0 has changed from statfs to statvfs.
	John Heasley. File: util/sys_defs.h.

	Documentation: typo fixes by IKEDA Nozomu.

20040616

	Bugfix: one missed variadic argument list fix. Victor
	Duchovni, Morgan Stanley. File: global/verify.c.
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: the resolver client cache should be context dependent
	because address verification probes may use a different
	route than normal mail deliveries. File: global/resolve_clnt.c.
Boris Mühmer's avatar
Boris Mühmer committed
	Safety: added similar context dependence to the address
	rewriting client in order to avoid trouble when Postfix is
	changed. File: global/rewrite_clnt.c.
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: space in HELO commands could end up in XFORWARD
	commands.  File: smtpd/smtpd.c.
Boris Mühmer's avatar
Boris Mühmer committed
20040619
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: more missing resets in the SMTP client when it
	switches to an alternate SMTP server.  In this case the
	error_mask that controls whether an SMTP session transcript
	is mailed to the postmaster, and the size_limit that controls
	how large a message Postfix will send. Found during code
	maintenance.  File: smtp/smtp_connect.c.
Boris Mühmer's avatar
Boris Mühmer committed
20040622

	Safety: when mail is delivered to a transport with per-delivery
	recipient limit of 1, split the recipient address on the
	recipient delimiter if one is defined, so that extended
	addresses don't get extra delivery concurrency slots.
	Files: *qmgr/qmgr_message.c.

20040714

	Bugfix: the code to eliminate the local MTA from the MX
	address list did not handle the case that inet_interfaces
	produced a less preferred match than proxy_interfaces.
	Victor Duchovni, Morgan Stanley. File: smtp/smtp_addr.c.

20040723

	Safety: spawn(8) now rejects a user with the -1 UID or GID
	value, so that commands will not end up running as root.
	Files:  util/spawn_command.c, spawn/spawn.c.

	Bugfix: "421 Timeout exceeded" wasn't guarded by setjmp().
	Victor Duchovni, Morgan Stanley. File: smtpd/smtpd.c.

20040801

	Portability: h_errno is not an lvalue in the UnixWare 7.1
	multi-threaded environment. Olivier PRENANT.

20040812

	Bugfix: update SMTP server error counter when a client is
	denied access with smtpd_delay_reject=no.

20040817

	Bugfix: The smtp_chat_cmd() output flushing code in the
	SMTP client could run before an I/O error handler was set
	up.  Problem diagnosed by Victor Duchovni, Morgan Stanley.
	The fix is to disable the smtp_chat_cmd() output flushing
	code as it duplicates better code in smtp_loop().  File:
	smtp/smtp_chat.c.

20030823

	Bugfix: vstream_popen() did not close the child pipe after
	failure to fork(). File: util/vstream_popen.c.

20040913

	Bugfix (introduced 20020803): sent the wrong bounce message
	type when a Delivered-To: loop was detected for a mailing
	list alias.  Nicolas Riendeau. File: bounce_notify_util.c.

20041006

	Bugfix: "sendmail -bv" did not reject the -t option.  File:
	sendmail/sendmail.c

20041228

	Bugfix: SMTPD_PROXY_README incorrectly claimed that ":port"
	in master.cf causes a server to listen only on "localhost"
	without exposing the service to the network.  Instead,
	":port" causes a client to connect to "localhost".


20050131

	Bugfix: when extracting recipients from message headers,
	the Postfix sendmail command produced output records longer
	than $line_length_limit, causing postdrop to reject the
	mail. Diagnosis by Victor Duchovni. File:  sendmail/sendmail.c.

20050208

	Sanity check: don't allow unlimited message size with limited
	mailbox size. File: local/local.c, virtual/virtual.c.

20050215

	Bugfix: don't chmod queue files while running "postfix
	set-permissions". This prevents mail from being labeled as
	"corrupt" when a live Postfix system is upgraded.  Found
	by Victor Duchovni.  File: conf/post-install.

20050227

	Bugfix (bug introduced 20040331): with SIGHUP ignored, the
	postdrop signal handler would effectively ignore SIGINT,
	SIGQUIT and SIGTERM.  Simplified the overly-conservative
	protection against nested signals in postdrop. File:
	postdrop/postdrop.c.
Boris Mühmer's avatar
Boris Mühmer committed
20050321
Boris Mühmer's avatar
Boris Mühmer committed
	Robustness: don't look for SMTP status code when there was
	none. File: smtp/smtp_chat.c, lmtp/lmtp_chat.c.
Boris Mühmer's avatar
Boris Mühmer committed
20050327
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: the SMTP and LMTP clients did not ask the queue
	manager to reduce destination concurrency when "lost
	connection" or "connection timed out" happened AFTER Postfix
	received the server greeting. Files: smtp/smtp_trouble.c,
	lmtp/lmtp-trouble.c.
Boris Mühmer's avatar
Boris Mühmer committed
20050407
Boris Mühmer's avatar
Boris Mühmer committed
	@%^!#& Thanks to inadequate SASL documentation the client
	could negotiate a security layer where none was desired.
	Better documentation has become available since Postfix
	SASL support was implemented, and now Postfix needs to be
	fixed. Files: */*_sasl_glue.c.
Boris Mühmer's avatar
Boris Mühmer committed
20050412
Boris Mühmer's avatar
Boris Mühmer committed
	Bugfix: while updating the cleanup_flush() infrastructure
	in the 2.3 development release, eliminated a portability
	problem that was introduced when "REJECT text" support was
	added. File: cleanup/cleanup.c.
Boris Mühmer's avatar
Boris Mühmer committed
20050417
Boris Mühmer's avatar
Boris Mühmer committed
	Safety: don't call syslog from a user-triggered signal
	handler. File: postdrop/postdrop.c.