2.0.6

2026-07-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix UB when subject is just a re or a fwd

	Reported-By: kstoianov-ship-it

2.0.5

2026-07-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3: fix crash during SASL CRAM authentication.

2.0.4

2026-07-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: Handle messages that don't end in a newline, gracefully.

2.0.3

2026-07-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix bad Javascript generated on 32-bit
	platforms.

	* Fix a compilation error in maildirwatch.h on some platforms.

	* maildrop: Fix inconsistent maildir filename when delivering a
	message with broken MIME formatting.

2.0.2

2026-06-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* FreeBSD compilation fix

2026-06-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-imap: Hard cap on limit-less IMAP constructs, to return
	an error instead of exhausting stack or heap.

	Reported-By: Tristan Madani
2.0.1

2026-06-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix compilation if ispell is not installed.

	* maildrop: Fix anchored searches and match variable settings.

2.0.0

2026-06-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* cone, sqwebmail: Show a note when a message uses an unknown character
	set, and we default to iso-8859-1.

2026-06-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: handle garbled emails that specify "unknown-8bit" or
	some other random nonsense as their character set. Process them as
	iso-8859-1 instead of refusing to show them at all.

2026-06-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlm2.C: Fix buggy encoding of non-ASCII characters.

2026-05-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* More compliant implementation of bounce formatting (RFC 6533).

2026-05-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlmmoderate.C (cmdmoderate): Replace C with C++ API.

2026-05-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fedora: handle Changes/droppingOfCertPemFile. After updating,
	manually set TLS_TRUSTCERTS in the courierd configuration file
	to /etc/ssl/certs/ca-certificates.crt

2026-04-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Replace --enable-bannerprog configure option with an
	environment variable. Replace POSIX timezones in the package's
	TIMEZONELIST file with Olsen timezones.

2026-04-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Tweaks to the mail filter screen.

2026-04-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix possible encoding problem with shown timestamps.

2026-04-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix display glitch when removing a message from a sharable
	folder.

2026-03-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: remove extra newlines at the end of autoreplies, line-wrap
	the headers in the autoreply.

	* sqwebmail: improve the algorithm for sorting messages in the folder
	by subject.

2026-03-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: do not require either the -t or the -m option to be
	specified, this is treated as an empty template for a reply/forward
	format that requires one, and do not abort if the From: header was
	missing, the response is logically treated as if it was empty.

2026-03-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix formatting issues on the calendar display.

2026-03-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-imap: Convert C to C++ code.

2026-03-07  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/webmlmd.C (adminrequest): implement modmimefetch, fetch
	multipart/related content.

2026-03-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/sendmail2.C (rewrite_from): Preserve multiple addresses in
	the explicit From: header if it exists on locally originated email
	(the sendmail command), apply all environment variables and options
	to each address in the existing From: header.

2026-03-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Convert address book page's code to C++.

2026-02-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Update draft screen to use the C++ mime parser, fixing
	several long-standing issues

	* sqwebmail: Address book buttons insert the email addresses from
	the addressbook directly, instead of their nicknames.

	* sqwebmail: Nicknames are no longer replaced with the actual
	addresses when the draft message is set, the actual addresses get
	inserted immediately.

	* sqwebmail: Make the From, To, Cc, Bcc fields on the create message
	screen slightly larger.

	* sqwebmail: Convert pcp daemon to use the C++ MIME parser.

	* sqwebmail: Spell checking UI fixes.

2026-02-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Fix problem with duplicate signatures after spell checking
	a draft message.

2026-01-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/maildrop: handle "binary" transfer encoding analogous to
	8bit handling.

2026-01-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: use more appropriate exit codes when terminating with
	an error.

2026-01-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: fix non-plain text autoreplies, removing a broken error
	message, a bonus. Using -m automatically implies -N and everything
	works out just right. Use POSIX exit codes for errors, to fix some
	issues when invoking mailbot from maildrop's .mailfilter

	* sqwebmail: Convert modules that parse MIME messages to C++, and
	update them to use the new C++ MIME parsing library. Clean up
	autoreplies. When editing mail filters peek at the autoreply content,
	and block non-functional DSN and non-quoting autoreplies when the
	autoreply content was uploaded as a non text-plain message.

1.6.0

2025-12-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update makedat script to handle automatic configuration
	file backups created by package managers (shared makesmtpaccess,
	makeimapaccess, makeacceptmailfor, makepercentrelay and
	makehosteddomains).

2025-12-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update links to RFCs.

2025-11-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier: use the new C++ MIME parsing library to rewrite
	E-mail sent via esmtp and uucp. Leave existing multipart MIME
	sections unaltered unless it is really necessary to reencode
	one of its entities. Update other parts of Courier code to use
	the C++ MIME library, including: couriermlm, courierfax.

2025-11-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit2.C (SubmitFile::MessageEnd): Exempt DSN module
	from the MIME parsing error block, for now.

2025-10-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* reformime: fail if the input message has a MIME parsing error.

1.5.1

2025-10-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix MIME parsing bugs

1.5.0

2025-10-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: Fix RPM spec file to be compatible with the
	unified bin directory hierarchy.

2025-10-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* cone: Makefile fixes

	* couriermlm: use the new C++ MIME library to parse mailing list
	commands.

	* courier/submit2.C: use the new C++ MIME library to validate
	messages and extract From: headers for SPF lookups.

2025-09-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: reimplemented in C++ using the new C++ MIME library.

2025-08-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* reformail: reimplemented in C++ using the new C++ MIME library.
	Compare E-mail addresses (for -r, and other options),
	case-insensitively.

2025-08-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* reformime: reimplemented in C++ using the new C++ MIME library.

2025-05-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* Remove obsolete diagnostic references to FAM and Gamin.

2025-05-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* Require C++17 support. Add autoconf checks for C++17. Provide
	build instructions for oldest versions of enterprise Linux distros
	whose gcc is too old.

2025-04-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* all: low level MIME parsing code reimplemented in C++, the
	C code remains in place, with some changes.

	* maildrop: update the low-level message header parsing code, used by
	getaddr() and hasaddr() functions, and the reformail tool.

1.4.1

2025-04-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* gcc compatibility fixes

2025-03-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix lintian warnings.

2025-03-20  "Hanno Böck" <hanno@hboeck.de>

	* gcc compatibility fixes

1.4.0

2025-03-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C (my_spf_lookup): In the Received-SPF header
	replace SPF=<name> with identity=<name>, per RFC 4408.

2024-12-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* Implement /ipv4only and /ipv6only options in esmtproutes

	* Move smtproutes handling into libesmtp.

2024-11-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* rpm packaging fixes: fix warning messages from redefining global
	macros.

1.3.13

2024-09-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* packaging: Fix rpm packaging, use a synthesized changelog entry
	with the current date, to set the rpmbuild epoch date.

	* Fix several issues with the cdefaultsep configuration setting,
	which broke mailboxes containing + characters.

2024-09-07  Sam Varshavchik  <mrsam@courier-mta.com>

	* packaging: Fix deb packaging of systemd service, other deb
	packaging improvements.

1.3.12

2024-08-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3login.c (login_pop3): Fix a problem when proxying UTF8 POP3
	connections.

1.3.11

2024-08-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-debuild: implement DEBGCC=default, to help with pbuilder.

2024-07-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* Allow "+" as separators in email addresses instead of "-".

1.3.10

2024-07-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix spec file dependencies

1.3.9

2024-06-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd: support per-local port custom -haproxy configuration.
	Multiple updates to the couriertcpd man page, updated documentation
	for ipv6 and CIDR support.

2024-06-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd: remove -noidentlookup, implement -haproxy

2024-05-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* couriertcpd: set the IP_FREEBIND option on all listening sockets.

1.3.8

2024-05-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* packaging/debian: Changes required for building Courier on Ubuntu 24.

1.3.7

2024-04-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update spec file, removing hooks for obsoleted RPM-based
	distributions (Suse, Mandrake, etc...)

2024-04-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* Adjust logic of A and AAAA lookups, for MX records. Avoids
	potential issues with IPv4-only or IPv6-only nodes not finding
	usable addresses because only the other kind were cached. Always
	explicitly query for A and AAAA records.

1.3.6

2024-04-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix spurious gcc 14 warnings

	* courier.spec.in: Fedora 40 fixes

	* courier/courierd.dist.in.git: add a stub CUSTOM section in the end
	for any custom configuration settings.

2024-03-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/libesmtp.c: fix missing logging in case
	of a broken connection.

	* sqwebmail: Fix rendering of mailformed URLs in plain text mail.

2023-12-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update rpm spec to match updated courier-authlib packaging.

1.3.5

2023-11-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822: use tm_gmtoff in preference over daylight, for determining
	TZ offset.

2023-11-09  Jaco Kroon <jaco@uls.co.za>

	* pop3+imap: log stls=1 (pop3) and starttls=1 (imap) on LOGIN lines.

2023-09-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpd.dist.in.git: Add missing
	TLS_PRIVATE_KEYFILE setting.

1.3.4

2023-08-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: fix null pointer check when loading search results.

2023-08-16  Jaco Kroon <jaco@uls.co.za>

	* Turn off IMAP_TLS_REQUIRED if IMAP_TLS is already set.

	* Compiling with -DMAILDIR_SKIP_SYMLINK_CHECKS turns off checking for
	rogue symlinks in maildirs.

1.3.3

2023-08-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* Recognize newer EC-based public key algorithms when displaying
	available PGP keys.

2023-07-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: fix compilation error caused by non-default configure
	script options.

2023-07-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix logic that unnecessarily rewrites MIME headers, in some
	cases.

1.3.2

2023-06-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: another spellcheck config fix.

1.3.1

2023-06-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: fix --without-spellcheck option.

1.3.0

2023-05-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail: Use hunspell for spell checking, as an alternative to aspell.

1.2.4

2023-04-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix spurious gcc 13 compiler warnings. Have configure script
	include the standardized location of the CA certificate bundle,
	in addition to various legacy compatibility paths.

	* update the ESMTP server to recognize alternative Courier
	ESMTP extension names, in addition to the current ones. A future
	version of Courier will switch the syntax of its custom ESMTP extension
	names to be strictly compliant with the ESMTP specification. The names
	remain unchanged for now, but this version of Courier recognizes both
	the existing names and the new names.

	update internal scripts, replace deprecated fgrep alias
	with grep -F.

1.2.3

2023-03-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/libesmtp.c: treat RFC1035_MX_NONE as a
	permanent failure.

2023-03-04  Hanno Böck <hanno@gentoo.org>

	* Various fixes for calls to getgrnam_r/getpwnam_r

2023-03-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: Update to C++11, replacing internal classes with
	modern C++ library classes.

	* maildrop: Fix the -V command line option to also explicitly
	set VERBOSE, fix assorted -V logging bugs.

2023-02-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* all: update configure.ac to require at least version 2.0.5 of
	libidn

1.2.2

2023-02-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: remove unsafe SIGALRM handler.

2023-02-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: No longer accept a non-standard single
	flag name instead of a parenthesized flag list to APPEND, due to
	ambiguity with the UTF8 extension.

1.2.1

2022-12-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (load_dh_params): OpenSSL 3 does not
	report an error when PEM_read_bio_Parameters_ex does not find
	any DH parameters, handle that.

1.2.0

2022-11-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* Switch to libidn2.

	* Debian/Ubuntu: update lintian overrides

2022-11-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* make install: replace absolute links with relative links.

1.1.11

2022-11-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* Add a MISC section in the esmtpd-ssl configuration file, for
	stashing any custom config settings.

	* Adjust deb packaging. Check /etc/lsb-release and include the
	distribution release in the deb package version, to faciliate
	updating to the same version of the package in an updated release.

	Fix build dependencies.

	* Update rpm packaging. Remove constructs for historical rpm-based
	Linux distributions.


2022-11-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* Courier: fix potential crash when multiple messages are cancelled
	quickly.

1.1.10

2022-06-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit2.C (SubmitFile::trapsignals): Remove signal-unsafe
	signal handling code.

	* Update deliverquota man page.


1.1.9

2022-05-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* openssl 3.0 updates.

2022-05-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* gcc 12 and autotools update. Fix minor use after free bugs:
	when showing links to decoded PGP attachments, and if the
	calendar module is enabled, and the calendaring server runs out
	of disk space; when updating the index file. Freed memory was
	read before any additional allocations took place.

2022-04-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier, courier-imap: remove the --disable-root-check configure
	option, now that make check can deal with it.

2022-04-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* Add scripts to create installable .deb packages, update
	documentation.

2022-04-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier: Webadmin refresh: convert the UI to UTF-8, integrate with
	systemd. Replace the suid root cgi-bin binary with a sqwebmail-style
	daemon that communicates with a non-privileged cgi-bin-invoked
	binary over a filesystem socket. Update courier.sysvinit to start
	webadmin accordingly.

	Other makefile fixes.

2022-03-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* Do not use hardcoded uids and gids that are established at
	compile time, look up courier/mail uid/gid at runtime. Remove
	--with-mailuid and --with-mailgid internal options, that are
	used internally. They must always be set to the corresponding
	user and groupname, and this is now looked up at runtime.

	Based on a patch by Ondřej Surý <ondrej@sury.org>.

2022-03-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/authenticate_auth.c: Fix broken SASL authentication.

2022-01-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fixes to Makefile to workaround test suite failures related to
	permission checking when make check runs as root.

1.1.8

2022-01-16  Arjen de Korte <build+github@de-korte.org>

	* Fix linking failure on some Linux distributions.

1.1.7

2022-01-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix linking failure on some Linux distributions.

1.1.6

2022-01-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap, sqwebmail: fix minor memory leaks. If valgrind is installed,
	"make check" will run it to check for memory leaks.

2022-01-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/pop3: use ALARM to kill couriertls if the server process
	terminates but openssl hangs trying to shut down the socket.

2021-11-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: update to pcre2.

2021-11-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* submit: do not reject null MX records when validing the
	sending IP address against the sender's HELO/EHLO identifier.

2021-09-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/bofh.c (chkusersubdom): Fix bofh badfrom checking.

1.1.5

2021-08-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* imapd.c (bye): Just call exit(), we may be in an inconstent state.

2021-06-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/libesmtp.c (esmtp_mailfrom_cmd_idna): do not
	indicate SMTPUTF8 for a non-UTF8 message.

	* pop3login: use unbuffered reads, handle our own buffering.

2021-05-23  Milan Obuch <courier-users@dino.sk>

	* configure in module.esmtp respects --with-certsdir

2021-05-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* Minor code tweaks, make it compleable with -Wall -Werror.

1.1.4

2021-05-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix use after free in a rare situation when the system hostname
	is intentionally set to "*.{domain}" for the hostname-dependent
	configuration feature.

1.1.3

2021-04-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3: pro-forma POP3 LANG extension.

2021-03-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/Makefile.am: Fix inconsistent permissions on
	the symlink to the courieresmtpd binary.

	* webadmin/webadmin.pl.in: Allow specific IP addresses specified
	in unsecuredok.

	* pop3d-ssl.dist.in (TLS_STARTTLS_PROTOCOL): Remove duplicate entry
	in the pop3d-ssl configuration file.

	* tcpd/tcpd.c (docheckblocklist): Fix DNSBL lookuup logic.
1.1.2

2021-03-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* make*: Individual files that did not end in a newline were
	not handled correctly.

	* imap: adjust error message.

1.1.1

2021-03-20  Arjen de Korte <build+github@de-korte.org>

	* Fix TLS_CACHEfile naming mismatch.

2021-03-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: fix erroneous force of GnuTLS build.

1.1.0

2021-02-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Implement support for the TLS ALPN extension.

2021-02-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* Replace FAM/Gamin with inotify.

	* Install the maildirwatch tool.

	* Remove the IMAP_ENHANCEDIDLE setting from the imapd configuration
	file.

	* Spec file: use triggers to restart courier after an upgrade, going
	forward.

1.0.16

2021-03-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix handling of bad DNS queries.

1.0.15

2021-02-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* spec file: explicitly add dependencies on gzip.

	* maildir/maildircache.c (create_cache_name): Fix UTF-8 addresses.

2020-12-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* Additional Unicode fixes. Implement hostname-dependent
	configuration.

2020-12-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix RSET logic issues.

2020-12-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* openssl: Add TLS_PROTOCOL setting to disable client-initiated
	renegotiation.

2020-11-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: send corrupted Unicode alerts only for new messages.

2020-11-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* spec file: add BuildRequires: %{__make} (will be required in F34).

	* courier/courierd.C (courierbmain): Fix logical bug in handling
	a submitdelay-ed message.

2020-10-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* waitlib: fix testwait.c failure with LTO enabled on F33.

	* pop3login.c: fflush before STARTLS.

	* sqwebmail/webpgp: update for current gpg version.

1.0.14

2020-05-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-authlib API update.

2020-05-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (nonsslerror): Spurious message when
	if connection closed during handshake.

2020-05-07  Alessandro Vesely <vesely@tana.it>

	* rfc1035/rfc1035search.c: More back-end support for simultaneous
	DNS queries.

	* Fix logic that converts domain names to lowercase.

	* tcpd/tcpd.c: Use simultaneous DNS queries to query for A and TXT
	records at the same time.

2020-04-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fixed defaults in the mkesmtpdcert script.

1.0.13

2020-04-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* configure.ac: Remove inadvertent debugging message.

1.0.12

2020-04-21  Alessandro Vesely <vesely@tana.it>

	* Add back-end support for simultaneous DNS queries

2020-04-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* Add AC_PROG_CC_C99 to configure

1.0.11

2020-04-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix TLS client connection bug regression in 1.0.10

1.0.10

2020-04-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix corruption of logged local mail addresses when using aliases.

2020-02-25  FlorianMickler <florian@mickler.org>

	* tcpd/starttls.c (dossl): Start client after negotiating SSL,
	in order to allow EXTERNAL client certificate authentication.

2019-12-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix virtual IP and hostname handling when using GnuTLS for SSL.

	* Add -noidentlookup option to the default TCPDOPTS.

2019-11-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* configure.ac: Update for Fedora 31 RPM.

2019-10-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (verifypeer): Use openssl to verify
	hostnames.

2019-10-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* When making both IPv4 and IPv6 mx lookups, ignore one of them
	SOFTFAILing if the other one succeeds.

2019-09-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* smtp, imap, pop3: include remote port TCP port number together
	with the IP address, in log messages.

1.0.9

2019-08-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update documentation in the imapd and pop3d ssl config flies.

	* Fix the RPM spec file for CentOS 7

2019-07-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C (my_spf_lookup): Convert hostnames and addresses
	in the Received-SPF: header from UTF-8 to ACE.

	* rfc1035/spf.c (get_macro): When expanding macros in SPF messages
	convert UTF-8 domains to ACE.

2019-07-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtp.c (isindomaindb): use ualllower instead
	of tolower.

1.0.8

2019-06-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* sqwebmail.c (rename_sent_folder): Fix quoting of autorenamed
	Sent folder.

2019-05-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* cgi/cgidaemon.c (connect_err): Fix quoting in HTTP headers for
	error messages.

1.0.7

2019-02-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/testmxlookup.sgml: Minor editing to the testmxlookup
	man page.

2019-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/comsts.c (sts_download2): Specify --max-redirect 0
	for STS policy downloads, as per STS spec.

	* pop3dserver.c (do_retr): Use the new MIME_UNICODE_MESSAGE_TYPE
	setting to set the type of the wrapped MIME attachment.

2019-02-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/comsts.c (open_and_lock_cached_policy_file): Fix
	errno getting clobbered by isatty().

	* courier/filters/verifyfilter.c: -n option explicitly suppresses
	stderr.

	* courier/filters/verifysender: Pass the -n option to verifysmtp.

2019-02-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* testmxlookup: implement the Strict Transport Security policy for
	SMTP, as specified in RFC 8461. Add some diagnostic options to
	testmxlookup.

2019-02-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/filters/verifyfilter.c: Remove the 'smtpfilter' symlink
	to verifyfilter. Replace it with a shell script wrapper that loads
	the environment variables and invokes verifyfilter.

	* tcpd/libcouriertls.c: Add support for verifying certificate
	subject alternative names.

	* tcpd/tlsclient.c: Implement the override_vars parameter.

1.0.6

2019-01-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3dserver.c: Fix parsing of pop3d file cache, on some
	architectures.

2019-01-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c: Ignore unreadable cert files.

1.0.5

2018-12-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: Send an alert about a Unicode messages to a non-Unicode
	client at most once per IMAP session.
1.0.4

2018-11-28  Hideki SAKAMOTO <hsakamt@tsnr.com>

	* imap/pop3dserver.c: Deal with MS Outlook's broken implementation of
	RFC 6856.

1.0.3

2018-11-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3dserver.c (calcsize): Fix spurious flagging of non-UTF8
	messages as UTF-8.

	To fix existing mailboxes with erroneously-flagged messages. In
	each mailbox, if its existing courierpop3dsizelist file starts with

	/3 [followed by additional data]

	Only if the first line in courierpop3dsizelist starts with /3, then
	execute:

	perl -p -i -e 's/:\d+$/:0/' courierpop3dsizelist

2018-11-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3dserver.c (readpop3dlist): Be able to update
	courierpop3dsizelist from version 2 to 3 in place.
	(do_retr): Instead of returning an ERR to a non-Unicode client,
	handle Unicode messages by wrapping them as an attachment.

1.0.2

2018-10-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: Additional changes to how Unicode messages are
	handled with non-Unicode clients: disclaim all warranties, still
	report an error, but provide the raw message content, as is.

1.0.1

2018-09-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* couriertls: additional fixes.

2018-09-24  Yoshinari Takaoka <mumumu@mumumu.org>

	* couriertls: option to use a separate file for the SSL certificate's
	private key, as an alternative to the combined keyfile+certificate.

1.0

2018-08-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix substitution typoes in imapd and pop3d startup scripts.

2018-08-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/comtrack.c (track_find_record): Don't stop after
	finding the E-mail address in the current tracking file, continue
	reading the remaining tracking files.

2018-07-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* couriermlm: Implement smtp prefiltering. Implement blocking of
	Unicode messages and E-mail addresses, by default.

	* rfc2045/reformime: parse utf-8 address types in DSNs.

2018-07-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier: implement "utf-8" address type in delivery status
	notifications.

	* mailbot: generate message/global, message/global-delivery-status,
	and message/global-headers, when needed, when formatting autoreplies.

	* reformime: -m option uses message/global instead of message/rfc822
	for UTF8 messages.

	* sqwebmail: recognize message/global and message/rfc822 attachments.
	Update very old login error message that references a long gone-by
	era.

2018-07-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier: implement the SMTPUTF8 extension.

	* dotforward: parse for Delivered-To: only in the header portion
	of the message.

2018-07-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-imap: update Courier-IMAP to support UTF8 POP3. Update
	version of the courierpop3dsizelist cache file.

2018-07-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier-imap, sqwebmail: update Courier-IMAP to support UTF8 IMAP.
	Convert maildir folders to use UTF-8 for folder names. Add
	--checkutf8 and --convutf8 options to maildirmake to convert
	pre-UTF8 maildirs to UTF8 maildirs, a mandatory upgrade procedure.

2018-07-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* waitlib/configure.ac: Fix typo.

2018-06-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/starttls.c (main): Add -user option. Additional fixes
	to imap/pop3 startup scripts to have couriertls drop root privileges.

2018-06-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/reformime.c (main2): fix crash if -x or -X is specified
	without the corresponding -s option.

2018-06-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/tlsclient.h: add username option, used in couriertls_start
	to set the child process's uid and gid.

	* libs/imap/imaplogin.c (starttls): Set username option for couriertls

	* libs/imap/pop3login.c (starttls): Set username option for couriertls

	* imapd-ssl.dist, pop3d-ssl.dist: Use separate imap and pop3 session
	cache files. Startup script: remove/set ownership and permsission
	on the imap and pop3 session cache files.

2018-06-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/filters/libfilter/libfilter.c: Use argv[0] to determine
	socket name. ratefilter, verifyfilter, dupfilter, and perlfilter
	provide their argv[0] to lf_init().

2018-05-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/makedat/makedat.in (cidr): Fix smtpaccess syntax parsing
	for IPv6 address ranges.

2018-04-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update for Fedora 28 RPM.

2018-04-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C: Reformat the Received: header to comply with
	RFC 5322.

2018-02-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/maildrop/search.C: ":H" pattern matching option, matching
	only the main message headers.

2018-02-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/libcouriergnutls.c: Remove usage of deprecated OpenPGP
	API. Tag the "Unexpected SSL connection shutdown" with the "DEBUG"
	label just like the OpenSSL version does.

	* libs/tcpd/starttls.c: If TCPREMOTEIP is set, prepend it to error
	messages.

2017-12-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/maildir/maildirmake.c (main): maildirmake's -q option
	will create the maildir if it does not exist.

	* libs/rfc2045/reformime.c (main2): Added -rU option, and a new
	internal RFC2045_RW_8BIT_ALWAYS conversion option.

	* libs/rfc2045/reformime.c (main2): Fix crash when the -s option
	is not valid.

0.78.2

2017-11-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* Use libtool to build libfilter and waitlib modules. Fixes perlfilter
	link failure on Fedora 27.

	* gettext update.

	* rpm packaging fixes.

2017-11-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/sqwebmail/pcp.c (sqpcp_eventstart): Fix null pointer dereference.

2017-11-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/rfc2045/rfc2045reply.c (mkreply): Fix null pointer
	dereferences.

0.78.1

2017-10-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/reformail.C (add_from_filter): Fix use after free.

2017-09-27  Giovanni Bechis <giovanni@paclan.it>

	* Fix to configure.ac

2017-09-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier: switch default header encoding to UTF-8.

2017-09-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlm.C (savemsg): Exit with EX_SOFTWARE when rejecting
	messages from non-subscribers, to avoid triggerring backscatter
	suppression for the mailing list.

0.78.0

2017-07-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd: openssl 1.1.0 update, remove the TLS_PROTOCOL setting
	from all configuration files.

	* courier/filters/verifyfilter.c: New verifyfilter module/verifysender
	tool.

	* libs/maildrop: Implement the "system" command.

	* courier/filters/courierfilter: Move courierfilter from sbindir to
	libexecdir. Replace courierfilter is a shell script wrapper that
	resets the environment before running the real courierfilter.

	* courier/module.esmtp/libesmtp.c: Carve out ESMTP sending logic
	from esmtpclient.c

2017-07-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C (getrcpts): Only remove the Bcc header when
	reading addresses from the headers. Keep it if the recipient
	addresses were explicitly specified.

0.77.0

2017-06-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/maildir/maildirquota.c (docheckquota): Skip DT_LNK.

2017-04-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Fix failure
	to report connection errors.

2017-03-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc1035: fix TLS hostname verification problem caused by CNAME
	records.

2017-03-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* couriertcpd: do not issue ANY queries for DNSBL lookups.

	* courier-unicode library API update.

2017-02-07  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/libcouriertls.c: OpenSSL API update.

2017-01-27  "Stefan Hornburg (Racke)" <racke@linuxia.de>

	* Merge several Debian patches:

	0001-Include-cstdio-in-afx.h.patch
	0005-Ignore-and-.dpkg-a-z-files.patch
	0007-Fix-bashisms.patch
	0009-Fix-linking-in-upstream-Makefiles.patch
	0012-Define-and-use-PEMFILE-in-mkesmtpdcert.patch
	     (*) with some changes.
	0013-Add-P-to-ghostscript-invocation.patch
	0014-Improve-error-reporting-in-preline.c.patch
	0017-Fix-formatting-errors-in-syslog-calls.patch
	0020-Add-perl-stanza-to-perlfilter-scripts.patch

2017-01-27  Gordon Messmer <gordon.messmer@gmail.com>

	* courier/perms.sh.in, courier/submit2.C (MessageEnd): Patches
	from FreeBSD.

0.76.4

2017-01-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix misc compilation errors.

2016-11-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* Improve compatibility with gnupg 2.

2016-09-20  "Hanno Böck" <hanno@hboeck.de>

	* libs/maildrop/maildir.C (MaildirSave): Fix new/delete mismatch.
	* libs/sqwebmail/gpg.c: Fix external linkage.

0.76.3

2016-09-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (main): Allow NOOP before
	authentication takes place if authentication is required.

0.76.2

2016-08-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* reformime: do not abort due to invalid encoding of the "name"
	attributes.

	* imapd.c (do_folder_delete): Fix check for DELETE INBOX.

2016-07-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlm.C (savemsg): Have NOBOZOS only look for commands on
	the first line of the message.

2016-06-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/local.html: Remove incorrect documentation for the
	sticky bit, and reformat the document.

2016-06-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/lcrewrite.c (rw_syntaxchk): Allow consecutive ! and %
	characters in email addresses.

0.76.1
	* Fix OpenSSL TLS SNI support.

	* couriertls: remove debugging message.

	* Update default TLS settings in courierd and esmtpd config files,
	mostly removing obsoleted settings.

0.76.0

2016-04-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* Stop using SSL2 and SSL3 openssl configuration methods.

2016-03-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/rfc1035/spf.c: "mx" keyword a no-op MX-less domains, rather
	than returning "error".

2016-03-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/libcouriertls.c: Add support for TLS SNI.

2015-12-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: implement the FLAGS variable.

2015-12-16  Andreas Kinzler <ml-ak@posteo.de>

	* maildrop: fix maildrop not searching last line of text.

2015-07-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* Add procps-ng to BuildRequires.

	* maildrop: fix parsing of a message without a body.

	* courier/submit.C: Write SPF-Received lines before the first
	Received header. Fix bug that prevented HELO's SPF-Received line
	from being written.

0.75.0

2015-06-27  "Hanno Böck" <hanno@hboeck.de>

	* libs/maildrop/mailbot.c: Fix bad malloc for --feedback-* command
	line parameters.

2015-06-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* ESMTP_PREFER_IPV6_MX: new setting.

2015-06-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* AUTH_MKHOMEDIR_SKEL setting: autocreate home directory.

2015-05-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* Drop SSLv3 from TLS_CIPHER_LIST.

2015-05-09  "Jö Fahlke" <jorrit@jorrit.de>

	* maildrop: Don't include matched subpatterns in foreach.

0.74.2

2015-04-25  Giovanni Bechis <giovanni@openbsd.org>

	* maildircache.c: fix use after free.

	* mkdhparams: make compatible with libressl

2015-03-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: Handle 01-Jan-1970 for date-based searches.

2015-02-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update to courier-unicode 1.2.

2015-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* Add the makeimapaccess script.

2015-02-16  "Hanno Böck" <hanno@hboeck.de>

	* Fix compilation warning, testsuite.

0.74.0

2014-12-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* Update autotools

2014-11-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc1035: add support for SPF records with multiple strings.

2014-10-21  Bernard Quatermass <bqcourier@quatermass.co.uk>

	* tcpd/libcouriertls.c: add parsing options for different protocol
	combination.

2014-10-21  坂元 英紀 <hs@on-sky.net>

	* Update comments in *ssl config files.

2014-10-15  Rob Austein <sra@hactrn.net>

	* libs/tcpd/libcouriertls.c (tls_create): Set SSL_OP_NOSSLv3 flag,
	to disable SSL3 support.

2014-10-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* mkdhparams: TLS_DHPARAMS environmnt variable overrides default
	DH parameter file location.

	* courier.spec.in: generate the default DH parameter file and
	package it into the rpm, instead of generating one on the first
	start.

2014-10-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/maildir/maildirinfo.c (maildir_info_imapmunge): Fix
	UTF-8 charset name.

2014-09-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (tls_create): Initialize temporary ecdh
	parameters.

2014-09-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* mkesmtpdcert: do not put DH parameters in the test cert. DH
	parameters are now in DH_PARAMS

	* mkdhparams: default to 2048 DH params for OpenSSL.

	* courier.service: bump up startup timeout, initial service start
	may take several minutes to generate DH parameters for the first
	time.

	* imap: try to print a message on stderr if the alarm() call, that
	detects FAM library breakage, goes off.

2014-09-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/rfc1035 - fix SPF lookup bug.

0.73.2

2014-09-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c: remove any slashes from the server
	hostname.

2014-07-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* gpglib, rfc2045: fix makefiles.

	* maildrop: fix parsing of headers added by the -A option.

2014-07-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* liblock, couriertls: fix compilation for OpenBSD -- based on a
	patch from Giovanni Bechis <giovanni@paclan.it>.

2014-06-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/gpglib/Makefile.am: Fix -lunicode linkage.

	* libs/rfc2045/Makefile.am: Fix -lunicode linkage.

	* libs/rfc2045/rfc2045decodemsgtoutf8.c (rfc2045_decodemsgtoutf8):
	recognize "message" MIME content type, in addition to "text".

0.73.1

2014-05-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/webmlmd.H (webmlmd): Compilation portability fix.

2014-05-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3login.c (login_callback): Log logins when running in proxy mode.

	* imaplogin.c (login_callback): Log logins when running in proxy mode.

2014-04-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: Update to use systemd macros.

2014-04-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (main): Use the SYSLOGNAME
	environment variable to open syslog.

2014-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/filters/courierfilter.c (main): Set sysconfdir environment
	variable for processes start by courierfilter.

	* courier/filters/perlfilter/perlfilter.c (perlfilter): Fix logging
	of error messages.

	* courier/libs/comctlfile.h (COMCTLFILE_ENVVAR): New record type.

	* courier/submit2.C (closectl): Write RELAYCLIENT and TCPREMOTEIP
	in control files.

	* courier/filters/perlfilter/perlfilter-ratelimit.pl: Rate limiting
	filter.

2014-02-15 "Alexei Batyr'" <lehel@pcmag.ru>

	* Fix wrong path in libs/sqwebmail/Makefile.

2014-01-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/maildrop/search.C (search_cb): Fix logged patterns getting
	garbled, in log output.

2014-01-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* Factored out the unicode library into a separate package.

2013-12-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* libunicode: Updated unicode word, grapheme, and linebreaking rules
	* to the Unicode 6.3.0 standard.

0.73

2013-11-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/imap/pop3login.c (starttls): Clear input buffer after STARTTLS.

	* libs/imap/imaplogin.c (starttls): Clear input buffer after STARTTLS.

	* Fix various compiler warnings about unchecked results from setuid
	and setgid calls.

2013-11-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/libcouriergnutls.c, libs/tcpd/libcouriertls.c: remove the
	TLS_DHCERTFILE setting, and use TLS_CERTFILE for all functionality.
	Read DH parameters from TLS_CERTFILE, or from the new TLS_DHPARAMS
	environment variable.

	* mkdhparams: New script that generates DH parameters into a standalone
	file.

	* Remove TLS_DHCERTFILE setting from imapd-ssl, pop3d-ssl, esmtpd and
	esmtpd-ssl. Add TLS_DHPARAMS, and read the DH parameters from the
	separate file. If the separate file doesn't exist, read it from
	TLS_CERTFILE, to allow for some existing configuration to continue to
	work.

	* Update imapd.cnf.openssl, pop3d.cnf.openssl, esmtpd.cnf.openssl,
	set default number of bits for RSA keys to 4096.

	* courier.spec.in: Drop %attr for symlinks, to silence rpm warnings.
	Install a link in cron.weekly to run mkdhparams weekly.

	* courier.sysvinit: Run mkdhparams from the startup script.

2013-10-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* libs/tcpd/libcouriertls.c (tls_create): Add TLSv1_1_method() and
	TLSv1_2 method(), based on patch by Rob Austein <sra@hactrn.net>.

	* courier/module.esmtp/esmtpd.dist.in,
          courier/module.esmtp/esmtpd-ssl.dist.in,
          courier/courierd.dist.in,
          libs/imap/pop3d-ssl.dist.in,
          libs/imap/imapd-ssl.dist.in: Fix up differences in the
	documentation of TLS options in various config files.

0.72

2013-08-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: pattern searches are now specified in UTF-8. maildrop
	MIME-decodes the search pattern, and transcodes it to the UTF-8
	character set, for searching purposes.

	* sqwebmail: update its maildrop rule generator to support UTF-8-able
	maildrop.

2013-07-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildir/maildirmake.c (main): Add -F option to maildirmake,
	specify new folder name using system locale's character set.

	* Autotool chain update.

	* imapd.c (mddelete): Reject DELETE folder if the maildir is a symlink.

2013-04-27  Rolf Eike Beer <dakon@users.sf.net>

	* imapd.c (doId): Implement the IMAP ID EXTENSION.

0.71

2013-03-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit2.C (MessageEnd): Fix compilation error with the
	--with-dirsync config option.

	* courier/module.esmtp/smtproutes.c (smtproutes): Removed /SECURITY=NONE
	flag, replaced with /SECURITY=REQUIRED.

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Fix minor bugs
	in error reporting, should get rid of spurious "No such file or
	directory message" in mail logs.
	(sendesmtp): New error message "/SECURITY=REQUIRED set, but TLS
	is not available".
	(starttls): Removed ROUTE_NOSECURITY flag, and the TLS_ERROR_REPORT
	and TLS_ERROR_HANDLE environment variables. When STARTTLS fails either
	by the remote server disconnecting in response to a STARTTLS, or
	returning an error message, log the mail server's address in the track
	log file. When making a connection attempt to a mail server, if it
	exists in the track log file, ignore it's STARTTLS capability.

	* courier/libs/comtrack.c: Updated track file API to also support
	logging of remote mail servers with broken STARTTLS.

2013-03-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlmmoderate.C (cmdmoderate): Convert entire moderation
	message to UTF-8, before parsing it.

2013-03-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlmmoderate.C (cmdmoderate): Return an immediate fail
	exit code, if unable to parse a moderation message.

2013-03-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Implement
	SMTPS in the ESMTP client.

2013-03-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C (a_r_from_env): Fix quoting in
	Authentication-Results: header.

	* tcpd/tcpd.c (check_blocklist): DNSBL lookup for IPv6 addresses.

2013-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* Updated documentation. Added mkdir -p to explicitly create piddir,
	in various startup scripts.

2013-02-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822: workaround for invalid utf-8 input making libidn go off the
	rails.

2013-02-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C: Change the quoting rules for -allow content,
	implement ALLOW_EXCLUSIVE.

2013-02-16  Alessandro Vesely <vesely@tana.it>

	* courier/submit.C: create Authentication-Results: header from the
	results of -allow lookups.

2013-02-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/couriertcpd.sgml: Documentation update.

2013-02-04  Alessandro Vesely <vesely@tana.it>

	* tcpd/tcpd.c: Additional changes to the -allow option.

2013-02-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/tcpd.c: Refactor -block, add -allow option with similar
	semantics. Update man page with the description of the updated
	behavior of these options.

0.70

2013-01-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/submit.C (cppmain): Set a 36 hour fixed timeout for
	submit().

2013-01-12 Gordon Messmer <yinyang@eburg.com>

	* tcpd/libcouriergnutls.c (get_server_cert): Fix size of malloced
	buffer.

2012-12-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/configure.in: Fix typo in configure check for setvbuf().

2012-12-17  Alessandro Vesely <vesely@tana.it>

	* submit.C: Typo, make environment variable NOADDDATE match the
	document name/example. Add NOADDRREWRITE.

2012-12-04  Alessandro Vesely <vesely@tana.it>

	* rfc2045/makemime.c (openfile_or_pipe): Do not dup stdin filedesc,
	sometimes the stdin buffer already gets filled.

0.69.1

2012-11-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* module.local/localmail.c: close the control file explicitly. It gets
	closed anyway upon exit(), cleanup

	* courier/submit.C: Remove dangling reference to BOFHBADMIME.

	* Fix a typo in the rpm spec file.

0.69

2012-09-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* cgi/cgi.c (cgi_set_cookie_url): Fix wrong call to free(). Not
	currently used.

	* maildir/maildiraclt.c (maildir_acl_delete): Fix double-free on error
	path of an ENOMEM.

2012-06-24  "Hanno Böck" <hanno@hboeck.de>

	* Replace "-w /etc" with `id -u` = 0 in various installation scripts.
	With fixes.

2012-06-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: Fix the RPM spec to work around /bin symlink
	breakage in F17.

	* tcpd/tcpd.c: Update libgnutls API, replace obsoleted functions
	with current API. Obsoletes most TLS_* variables that set protocol
	priorities, replaced with Gnutls-specific single TLS_PRIORITY
	setting (existing TLS_* variables are still used by the OpenSSL
	alternative). Updated *-ssl configuration files accordingly.

2012-06-21  Eray Aslan <eray.aslan@caf.com.tr>

	* tcpd: Compilation changes for gnutls 3

2012-06-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop: make a mention of reformail -D's locking in the manual
	pages.

2012-06-17  Osamu Aoki <osamu@debian.org>

	* maildrop/formatmbox.C (GetLineBuffer): Do not skip whitespaces
	looking for From: and Subject: headers, to log.

0.68.2

2012-06-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/lcrewrite.c (rw_rewrite_chksyn_at_ok_print): aliasexp
	needs to accept leading @s in addresses.

2012-06-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* couriermlm: Change the exit code OS_ERR in a number of error
	conditions, to avoid triggering backscatter suppression in Courier.

	* courier/libs/comconfig.c: retrybeta and retrymaxdelta weren't being
	read from sysconfdir.

2012-05-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/attachments.c (attach_upload): When attaching PGP keys, add
	name="pgpkeys.txt" parameter to the Content-Type: header; add
	Content-Disposition: attachment header.

	* gpglib/gpg.c: Make the MIME boundary delimiter shorter.

	* rfc2045/rfc2045mkboundary.c (rfc2045_mk_boundary): truncate
	the hostname portion of the boundary to 30 chars.

2012-05-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/status.html: Added link to the new github contrib repo.

2012-05-09  "Stefan Hornburg (Racke)" <racke@linuxia.de>

	* courier/module.esmtp/esmtpd.cnf.openssl.in: Use .rand extension for
	the random seed file.

0.68.1

2012-05-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045mkboundary.c was broken in 0.68.1

0.68

2012-05-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045mkboundary.c (rfc2045_mk_boundary): truncate
	the hostname portion of the boundary to 30 chars.

2012-04-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/courier.sgml: Remove descriptions of some configuration
	files that were moved to the courier-authlib package a while ago.
	They don't belong here any more.

	* courier/submit.C: Use the authenticated address, instead of the
	return address, for domain-based virtual configuration.

2012-04-23  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/cfilename.c (config_has_vhost): Checks whether
	vhost.[ip] exists.

	* courier/module.esmtp/courieresmtpd.c (main): Only set a message's
	virtual host if vhost.[ip] exists.

	* courier/module.esmtp/esmtpclient.c (get_sourceaddr): Make sure the
	input buffer is null-terminated.

	* courier/submit.C (getrcpts): If there's no vhost setting from the
	sender's IP address (this includes local mail!) if vhost.domain exists,
	use [domain] as the virtual host.

2012-04-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* Remove config_search(), which simply called config_localfilename().
	Change all current callers to call config_localfilename().

	* courier/libs/cfilename.c (config_set_local_vhost): saves a string
	that gets appended as a suffix, by config_localfilename(), and if that
	filename exists, that's returned as the filename, otherwise it's the
	original string without the suffix. config_get_local_vhost() returns
	the suffix string.

	* courier/module.esmtp/courieresmtpd.c (main): get TCPLOCALIP, use it
	to config_set_local_vhost().

	* courier/libs/comsubmitclient.c (submit_fork): If
	config_get_local_vhost(), add a -vhost parameter to submit().

	* courier/submit.C (cppmain): -vhost sets config_set_local_vhost().

	* courier/submit2.C (closectl): New COMCTLFILE_VHOST parameter in the
	config file, taken from the vhost setting.

	* courier/libs/comctlfile.c (ctlfile_setvhost): If COMCTLFILE_VHOST is
	set, call ctlfile_setvhost(), return an indication if the vhost has
	changed. Absence of a COMCTLFILE_VHOST treated as a discrete "(null)"
	setting.

	* courier/module.esmtp/esmtpclient.c (esmtpchild): If ctlfile_setvhost()
	then disconnect the current socket, if one is open.

	* courier/module.esmtp/esmtpclient.c (get_sourceaddr): The IP address
	specified in ipout or ip6out overrides SOURCE_ADDRESS and
	SOURCE_ADDRESS_IPV6 environment variable.

	* courier/module.local/localmail.c (main): Call ctlfile_setvhost().

	* courier/module.uucp/uucp.c (uux): Call ctlfile_setvhost().

	* courier/module.dsn/dsn.c (main): Call ctlfile_setvhost().

	* liblock/mail.c (dotlock_exists): Quell a compiler warning.

	* courier/courierd.dist.in SOURCE_ADDRESS: Add a note that this setting
	is deprecated.

2012-03-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/msg2html.c (msg2html_download): Fix decoding of attachment
	filenames.

2012-02-23  Osamu Aoki <osamu@debian.org>

	* Miscellaneous spelling fixes.

2012-01-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/libs/lcrewrite.c (rw_syntaxchk): Disallow @ at the
	beginning of an email address.

2011-12-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: Put back sysvinit bits.

0.67

2011-11-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkreply): Fix copying of the contents of the
	original message.

2011-11-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/testmxlookup.sgml: Update documentation.

	* courier/testmxlookup.c (main): Clarify error messages. Use --
	for long option names.

2011-11-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* cgi/cgi.c (cgiformdecode): rfc2231_udecodeDisposition() failure
	is not fatal.

	* pcp/pcp.c (list_msg_mime): Ditto.

	* rfc2045/reformime.c (do_print_info): Ditto.

	* rfc2045/reformime.c (get_suitable_filename): Ditto.

	* webmail/msg2html.c (msg2html_download): rfc2231_udecodeDisposition()
	failure	is not fatal.

2011-11-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* imapd.c (main): Open IMAPDEBUGFILE only if it exists already.
	(do_expunge): Optionally log deletions. Based on a patch by
	William Yodlowsky <wyodlows@andromeda.rutgers.edu>.

	* pop3dserver.c (cleanup): Optionally log deletions. Based on a patch by
	William Yodlowsky <wyodlows@andromeda.rutgers.edu>.

	* imapd.dist.in (IMAP_MOVE_EXPUNGE_TO_TRASH): Officially document how
	IMAPDEBUGFILE works.

2011-11-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* Major update to the internal DNS resolver. Add support for DNSSEC;
	this doesn't really do anything right now, but makes the support
	available, if needed in the future. Remove the global
	rfc1035_default_resolver instance, make all users explicitly
	instantiate and destroy the class instance, using the initializer and
	destructor functions. Clean up the API. Remove the options parameter,
	that carries the recursive flag, from many API methods. Store the
	recursion flag in the rfc1035_default_resolver object, together with
	the DNSSEC enabling flag, and other metadata.

2011-11-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/courierd.dist.in (TLS_ERROR_HANDLE): New setting.

	* courier/module.esmtp/esmtpclient.c (report_broken_starttls): Run
	TLS_ERROR_REPORT, if set, in response to a STARTTLS fail.

	* courier/doc/sendmail.sgml: Some minor editing.

	* courier/courierd.dist.in (TLS_ERROR_HANDLE): New setting, defaulting
	to "ignore".

	* courier/module.esmtp/esmtpclient.c (connect_error1): Use a custom
	error message for ECONNRESET, putting the blame squarely on the other
	side.
	(readline): Treat EOF on the socket connection as ECONNRESET.
	(starttls): TLS_ERROR_HANDLE: just return upon error if it's "ignore",
	and hope for the best. If TLS_ERROR_HANDLE is "soft", treat any SMTP
	error as a 4xx.
	(starttls): SECURITY STARTTLS error message should looks like an
	SMTP error message.

2011-10-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* imapscanclient.c: Postpone Y2038K for a while, for uid validities.

2011-10-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* liblock/mail.c (dotlock_exists): Handle getting here because of a
	recycled pid.

	* unicode/unicode.c (init_default_chset): Handle NULL from setlocale().

2011-09-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/reformime.c (main2): Fixed segfault on some arches from an
	initial null given to strtok.

2011-08-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* mailbot: add "feedback" and "replyfeedback" formats, generating
	RFC 5965-formatted feedback report. -a option attaches the entire
	original message, instead of only its headers, for "replydsn",
	"feedback", and "replyfeedback" formats.


2011-08-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/reformime.c (main2): On ia64 and arm, argv is in readonly
	memory.

2011-08-04  Michiel Boland <michiel@boland.org>

	* pop3dserver.c (openpop3dlist): Try a few times to reopen pop3dsizelist
	if it fails with ESTALE.

2011-07-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/showmsg2html.c (error): Provide a definition for error().

2011-07-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/pop3d.dist.in: Add AUTHSERVICE settings. They've been supported
	all along.

2011-07-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in: Fix rpmlint warnings

2011-06-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix gcc 4.6 warnings

	* courier.spec.in: switch to systemd. Remove script used when
	upgrading from ancient pre-sysconftool versions.


2011-06-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/smtpaccess.config: Set RELAYCLIENT for IPv6 localhost address.
	After upgrading makesmtpaccess will fail if it's already present in a
	different smtpaccess file, and must be removed.

2011-05-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* Fix autoconf warnings.

0.66.3

2011-05-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/msgenvelope.c (msgappends): Fix a fatal error upon encountering
	8-bit header content. Heuristically try to interpret it as UTF-8, and
	just ignore invalid UTF-8 sequences.

0.66.2

2011-05-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045cdecode.c: Tolerate lowercase hexadecimal characters
	in quoted-printable-encoded content.

2011-05-06  Thomas Jacob <jacob@internet24.de>

	* unicode/unicode.c: Compilation fixes.

0.66.1

2011-04-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* msg2html.c (showmsgrfc2369_header): Fix memory corruption.

2011-04-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (tls_create): Remove SSLv2_method().
	(tls_create): Remove "!SSLv2" from the default TLS_CIPHER_LIST.

2011-04-07  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/mkimapdcert.in (prefix): Create imapd.pem with 600 perms.

	* imap/mkpop3dcert.in (prefix): Create pop3d.pem with 600 perms.

2011-04-07  "Stefan Hornburg \(Racke\)" <racke@linuxia.de>

	* courier/module.esmtp/mkesmtpdcert.in: Create esmtp.pem with 600
	perms.

0.66.0

2011-04-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc3676parser.c: Detect content produced by broken mail
	software (I'm looking at you, Apple Mail), that spews out an entire
	paragraph as a single physical line of text. When an excessively long
	line is detected, it gets rewrapped manually.

2011-03-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode_linebreak.c: Replace manually-maintained buffer
	with unicode_buf.

	* unicode/unicodebuf.c: Factored out unicode buffer utilities from
	webmail/html.c

	* webmail/html.c (search_tags): Receive a ubuf ptr for the key. Remove
	ubuf_append_0().

	* rfc2045/rfc3676parser.c (count_quote_level): Revert previous
	patch. Do not parse > indentation in non-flowed text.

	* rfc2045/rfc2045reply.c (reply_contents): Remove extra space after
	> prefix was reformatting non-flowed text.

2011-03-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/html.c (open_element): Fix accounting of discardable elements.

2011-03-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/filter.c: Remove lots of dead code. Fix force-wrapping.

2011-03-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* html.c (seen_attrname): Permit '-' characters in attribute names
	(HTTP-EQUIV).

2011-03-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* html.c (seen_closing_elem): Allow : character in closing element
	name.
	(seen_opening_elem): Allow : character in opening element name.
	(seen_attrname): Allow : character in attribute name.

	* msg2html.c (do_text_line_contents): Fix memory corruption.

	* folder.c (get_textlink): Memory leak.

	* msg2html.c (showmsgrfc2369_header): Fix memory corruption/leak.

2011-03-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc3676parser.c (count_quote_level): Parse > indentation
	even in non-flowed text.

	* html.c: Complete rewrite of the HTML filter.

	* maildir.c (opencache): Plug a memory leak.

2011-03-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode_htmlent.c: unicode_html40ent_lookup() -- lookup
	HTML 4.0 entities.

2011-03-19  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkforward): Handle PGP-signed messages.

	* images/sqwebmail.css: added white-space: nowrap to several tables
	in order to avoid ugly wrapping during real estate shortages.

	* newmsg_create.c (newmsg_createdraft_do): Fix signature separator.

	* unicode/unicode.h: Added unicode_isspace().

	* unicode/unicode_wordbreak.c: Implementation of tr29.

	* unicode/unicode.h: unicode_lb_set_opts(), plus derivatives: set
	artbirary linebreaking options. Two options that tailor the unicode
	linebreaking algorithm.

2011-03-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkforward): Rewrite from scratch.

	* rfc2045/rfc2045replyunicode.c: Remove rfc2045_makereply_unicode(),
	superceded by rfc2045_makereply().

	* maildrop/testsuite.in (LANG): Additional test suites.

	* maildrop/mailbot.c (usage): Some options were missing from the
	usage message.

2011-03-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/images/sqwebmail.css: Adjust styles for quoted content.

	* webmail/msg2html.c (text_set_quote_level): Omit our own classes from
	generated HTML mail that's going to be sent to someone.

	* webmail/html.c (filtered_tag): Automatically add a class to BLOCKQUOTE
	TYPE=CITE elements. Add a nested DIV to all BLOCKQUOTE elements.

2011-03-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/Makefile.am: Removed all obsoleted rfc2646 code, now that
	all its users are gone.

	* webmail/autoresponse.c: Remove obsolete rfc2646 code, use common code
	shared with newmsg.c for reading and saving autoreply text.

	* webmail/rfc2646html.[ch]: Removed.

	* courier/doc/install.html: Document the webmail footer file. Always
	documented in the sqwebmail tree, now document it here too.

	* webmail/pref.c: Signature files now always get saved in UTF-8.

	* webmail/newmsg.c: Any sender's signature, and custom site footer,
	are shown when previewing the message, but get omitted from the edit
	text area. Signatures won't automatically appear in the editable text
	box when creating a new message, but will be automatically added when
	previewing the message and subsequently sending it.

	Custom site footer files must now be explicitly coded in UTF-8, and
	follow the format=flowed, delsp=yes plain text format.

	* webmail/folder.c: Update draft message formatting, to work with the
	new msg2html layer.

	* webmail/newmsg.c: msg2html layer cleanup.

2011-03-06  Sam Varshavchik  <mrsam@courier-mta.com>

	* images/sqwebmail.css: Replace message-text-plain default style
	with sans serif font.

	* unicode/unicode.c (convert_flush_iconv): Save errno in case it
	gets clobbered by the callback function.

	* webmail/sqispell.c (show_part): filter() now takes a unicode stream.

	* webmail/newmsg_create.c (newmsg_createdraft_do): filter() now takes
	a unicode stream.

	* webmail/msg2html.c: Rewrite plain/flowed text formatted to use new
	rfc3676 functions.

	* webmail/filter.c: Input to the filter object is now unicode.

2011-03-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/courier.sgml: Clarify defaultdomain requirements.

2011-02-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/mkcommon.pm: Reduce unicode table block size to 256,
	trading in larger table size for faster lookups in the hot code path.

2011-02-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode.h (mail): Added iterator-based conversion functions
	to/from unicode chars.

2011-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode.c (save_unicode): Optimize buffering of
	unicode characters.

2011-02-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/folder.c (truncate_at): Only break characters at grapheme
	breaks.

	* unicode/unicode.h: Adjust unicode_wcwidth() to return 0 for BK, CR,
	LF, CM, NL, WJ, ZW characters.

2011-02-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode.h: Internal implementation if tr14, linebreaking
	rules.

2011-02-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode_graphemebreak.c: unicode_grapheme_break() is an
	implementation of TR29.

	* rfc822/rfc2047.c (do_encode_words_method): Avoid splitting RFC
	2047-encoded works in a middle of a grapheme.

2011-02-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* gpglib/gpg.c (copyfp): Strip CRs from verified/decrypted content.

	* webmail/html.c (replacelink): Fix URL washing.

2011-01-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc2047.c (rfc2047_encode_callback): Rewrite broken logic.

	* unicode/unicode.c (deinit_iconv): Incomplete multibyte character
	remaining at the end of conversion was falsely being reported as
	a callback failure, rather than a conversion failure.

2011-01-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* Check if -liconv is needed to get iconv.

	* Clean up leftover unicode-related crud in configure scripts.

2011-01-22  Gordon Messmer <yinyang@eburg.com>

	* rfc1035/rfc1035mksocket.c (rfc1035_mksocket): Set IPV6_V6ONLY
	socket option to OFF for IPv6 sockets, if the system default is on.

2011-01-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* Removed the last remains of the old unicode mapping code.

	* unicode/unicode.c (init_default_chset): Import additional logic
	from the cone tree: CHARSET and MM_CHARSET environment variables
	override locale's charset indication. If unable to determine locale,
	parse lang.codeset@modifier string in LANG.

	* courier/sendmail.c (main): Reset CHARSET, MM_CHARSET, and LANG.

	* pcp/pcp.c (usage): Unicode API update.

	* rfc822/rfc2047.c (rfc2047_encode_str): Removed
	rfc2047_encode_callback_base64, invoked from rfc2047_encode_str().
	Rewrite rfc2047_encode_str() to use the new unicode API.

2011-01-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc2047u.c: Unicode API updates.

	* courier/cmlm2.C (cmdset): Unicode API update.

	* mailbot: Unicode API update.

	* unicode/unicode.h: Replace unicode_x_imap_modutf7 with a #define.
	Eliminted unicode_x_smap_modutf7, replaced with
	unicode_x_imap_modutf7, a space, and blacklisted chars.

	* unicode/unicodecpp.C (convert_tocase): C++ binding for
	libmail_u_convert_tocase().

	* unicode/unicode.c (init_default_chset): Map GNU libc nl_langinfo()
	return of "ANSI_X3.4*" to "US-ASCII".

2011-01-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode_ultcase.c (unicode_tc): Convert test character
	to lowercase first, before converting to titlecase -- UnicodeData
	does not specify an uppercase char's titlecase, directly.

	* maildir/maildirsearch.h (mail): New C++ binding method -
	getSearchLen().

2011-01-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/unicode.h: Define C++ binding for libmail_u_convert(),
	mail::iconvert.

	* maildir/maildirsearch.h (mail): Convert the C++ binding to use
	the unicode-aware, case-insensitive, whitespace-collapsing algorithm.

2011-01-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/strftime.c (strftime_unicode): Use libmail_u_convert_tobuf()
	instead of the obsoleted unicode functions.

	* webmail/msg2html.h: Renamed the character_set_follows callback as the
	charset_warning callback.

	* webmail/msg2html.c (showtexthtml): Invoke the charset_warning
	callback, after generating the formatted message contents, and only if
	the updated rfc2045_decodetextmimesection() function returned
	an indication of a charset conversion failure
	(showtextplain): Ditto.

	* webmail/maildir.c (execute_maildir_search): Use
	libmail_u_convert_toutf8() instead of the obsoleted unicode functions.
	(folder_toutf7): Use libmail_u_convert_tobuf() instead of the
	obsoleted unicode functions.
	(folder_fromutf7): Use libmail_u_convert_tobuf() instead of the
	obsoleted unicode functions.

	* webmail/ldaplist.c (getfilter): Use libmail_u_convert_toutf8() instead
	of the obsoleted unicode functions.

	* webmail/folder.c (show_msg_match_str): Use
	libmail_u_convert_fromutf8() instead of the obsoleted unicode functions.
	(truncate_at): Use libmail_u_convert_tou_init() and
	libmail_u_convert_fromu_init() instead of the
	obsoleted unicode functions.

	* webmail/auth.c (login_fromhdr): Use libmail_u_convert_toutf8()
	instead of the obsoleted unicode functions.

	* webmail/attachments.c (attachments_head): Remove code that used
	obsolete unicode functions.

	* webmail/addressbook.c (ab_add): Use libmail_u_convert_toutf8()
	instead of the obsolete unicode functions.
	(ab_listselect_fp): Use libmail_u_convert_fromutf8() instead of the
	obsolete unicode functions.
	(ab_show_utf8): Ditto.
	(addressbook): Ditto.

	* webmail/acl.c: Use libmail_u_convert_toutf8() and
	libmail_u_convert_fromutf8() instead of the obsolete unicode functions.

	* unicode/unicode.c (unicode_default_chset): New function calculates
	the default system unicode charset based on the global locale.
	(libmail_u_convert_init): Support a phony character set used to
	encode unicode folder names for IMAP (and SMAP). Passing the
	phony character set name to libmail_u_convert_init() encodes or
	decodes to the phony character set. For converting to the phony
	character set, libmail_u_convert_init() sets up an iconv conversion to
	UCS-2, then wraps it into a module that converts UCS-2 to the phony
	character set. For converting from the phony character set,
	libmail_u_convert_init() sets up an iconv conversion from UCS-2, then
	wraps it into a module that converts the phony character set to UCS-2.
	(libmail_u_convert_tocbuf_init): A wrapper to libmail_u_convert_init()
	that converts to native UCS-4, and saves it into a malloc-ed
	unicode_char array.
	(libmail_u_convert_tocbuf_toutf8_init): Convenience wrapper for
	converting to UTF-8.
	(libmail_u_convert_tocbuf_fromutf8_init): Convenience wrapper for
	converting from UTF-8.
	(libmail_u_convert_toutf8): Convenience wrapper that converts
	a text string to UTF-8 and returns a malloced buffer with the
	converted string.
	(libmail_u_convert_fromutf8): Convenience wrapper that converts
	a UTF-8 string to another charset, and returns a malloced buffer with
	the converted string.
	(libmail_u_convert_tobuf): Convenience wrapper that converts a
	character string and returns the converted string in a malloced
	buffer.
	(libmail_u_convert_fromu_init): Convenience wrapper that sets up
	a conversion of text to native unicode_chars.
	(libmail_u_convert_uc): Convenience wrapper for passing unicode chars
	through libmail_u_convert().

	* rfc2045/rfc2646create.c (rfc2646create_alloc): Replace unicode
	struct pointer argument with a character set string name.
	Use libmail_u_convert_fromu_init() and libmail_u_convert_tou_init()
	instead of the obsolete unicode functions.

	* rfc2045/rfc2231.c: Replace the unicode struct pointer argument with
	a character set string. Use libmail_u_convert_tobuf() instead of the
	obsolete unicode functions.

	* rfc2045/rfc2045decodemimesectionu.c (rfc2045_decodetextmimesection):
	Add a return value indication of a failed conversion to the requested
	character set.

	* maildir/maildirinfo.c: Use libmail_u_convert_tobuf() instead of the
	obsoleted unicode functions.

	* gpglib/list.c (definit): Replace the charset field in gpg_list_info,
	a unicode struct ptr, with a character string.
	(dolist_callback): Use libmail_u_convert_fromutf8() instead of the
	obsolete unicode functions.

	* gpglib/genkey.c (libmail_gpg_genkey): libmail_gpg_genkey() takes
	a charset name instead of a unicode struct ptr. Use
	libmail_u_convert_toutf8() instead of the obsoleted unicode functions.

2011-01-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap: Replace all usage of internal unicode tables with iconv.
	Courier-IMAP now supports searching text given in any character set
	that's supported by iconv. The internal unicode library is still used
	for converting unicode to/from lower/uppercase, for functionality
	not directly available in iconv. Pretty much a rewrite of the entire
	search/sort/thread implementation.

	* rfc822/rfc822_parsedt.c: Eliminate the dependency on ctype, replaced
	them with macros.

2011-01-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc822hdr.c (rfc822hdr_namecmp): Factor out rfc822hdr_namecmp
	from rfc822hdr_is_addr, and make it usable, generically.

	* all: Major rewrite of rfc2045 parsing functions, adding an abstraction
	layer for reading the contents of the parsed rfc 2045 message, rather
	than reading from a plain file descriptor.

	* courier/libs/comrwmsg7bit.c (rw_rewrite_msg_7bit): New rfc2045src
	abstraction layer API update.

	* gpglib/gpg.c (dosignencode): Ditto.

	* imap/smap.c:  New rfc2045src abstraction layer API update.

	* maildrop/mailbot.c (main): New rfc2045src abstraction layer API
	update.

	* pcp.c (list_msg_textplain): New rfc2045src abstraction layer API
	update.

	* rfc822/rfc822hdr.c (rfc822hdr_namecmp): Factor out rfc822hdr_namecmp
	from rfc822hdr_is_addr, and make it usable, generically.

	* webmail/msg2html.c (showtexthtml, showtextplain): New rfc2045src
	abstraction layer API update.

	* courier/submit2.C (MessageEnd): Drop checks for 8 bit content
	in message headers (utf-8 is coming). Removed rfcerrheader.txt,
	rfcerr2045.txt, rfcerr2046.txt, rfcerr2047.txt.

	* courier/doc/courier.sgml: Removed the documentation for BOFHBADMIME,
	accordingly.

	* pcp/pcpd.c (readnewevent): Fix uninitialized memory usage breaking
	pcpd.

	* pcp/pcp.c (list_msg_textplain): New rfc2045src abstraction layer API
	update.

	* webmail/msg2html.c (showtexthtml, showtextplain): New rfc2045src
	abstraction layer API update.

	* webmail/newmsg_newdraft.c (newmsg_newdraft): New rfc2045src
	abstraction layer API update.

	* webmail/newmsg.c (newmsg_showfp): New rfc2045src abstraction layer API
	update.

2011-01-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkreply): When copying a message's original
	headers into a DSN-formatted mailbot-generated reply, preserve the case
	of the original headers' names.

2011-01-03  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045decodemsgtoutf8.c, rfc2045/rfc2045.h: Replace
	function arg and passthrough arg to rfc2045_decodemsgtoutf8() with
	a pointer to a structure that gives callback info. The function that
	receives the decoded content now takes a character string+count,
	instead of a single character.

	* rfc2045/reformime.c (doconvtoutf8_stdout): Corresponding changes.

	* webmail/maildir.c (do_maildir_search): Corresponding changes.

	* maildrop/maildropfilter.sgml: Clarify wording.

	* maildir/maildirsearch.c (maildir_search_start_unicode): Search was
	broken, how did I miss this?

	* folder.c (folder_initnextprev): Fix bug when displaying a message
	NOT after search results.

	* maildir.c (do_search_utf8): Search was broken for non-Latin charsets.

2011-01-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045decodemsgtoutf8.c: Propagate all non-0 exit codes
	from the callback function, don't force to a negative value.

	* rfc2045/rfc2045decodemimesectionu.c: Add descriptive comments.

	* rfc2045/testsuite (Content-Type): Add additional test for proper
	iconv-based decoding implementation.

2011-01-01  Alessandro Vesely <vesely@tana.it>

	* courier/module.dsn/dsn.c: Adjust indentation to avoid parts of DSNs
	unintentionally interpreted as quoted content.

2010-12-30  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.spec.in (Requires): Require /etc/cron.hourly, rather than
	cronie or vixie-cron, so that it'll work with both.

2010-12-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c: An AUTH error logs "AUTH" as
	the failed command in syslog, rather than the last command sent from
	the client, which may be the password.

2010-12-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* unicode/Makefile.am: Updated source link to big5-iso.txt. Updated
	eastasianwidth.h.

	* maildir/maildirsearch.h: maildir_searchengine uses unicode chars
	internally. Replace maildir_search_start with
	maildir_search_start_unicode() and provide a replacement
	maildir_search_start_str() that widens a narrow char string to unicode
	char size.

	* rfc2045/rfc2045decodemsgtoutf8.c (rfc2045_decodemsgtoutf8): Add a
	pass-through opaque pointer, closure.

	* rfc2045/rfc2045decodemimesectionu.c (rfc2045_decodetextmimesection):
	Total rewrite that uses iconv, rather the built-in libunicode.

	* webmail/images/sqwebmail.css: Additional style sheets for search
	results context.

	* webmail/html/en-us/folder.html: Repurpose the folder list page as the
	search results page.

	* webmail/maildir.c (maildir_purgesearch): New function - remove search
	results file from the tmp directory.
	(maildir_search): Implement searching, save search results in a
	":search:" file in the tmp directory.

	* webmail/folder.c (folder_delmsgs): Preserve search context in a
	redirect after deleting or moving a message.
	(show_msg): Display matched contexts if showing messages after a
	search.
	(folder_initnextprev): Preserve search contexts in links from the
	message navigation bar. When showing messages from a search results
	page, navigate to next/prev matched message, instead of the next/prev
	message in the folder.
	(folder_delmsg): Preserve search context in the delete/move message
	form.

	* webmail/maildir.c (maildir_loadsearch): Save which message was the
	last one searched, and show it on the search results page.

2010-12-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/folder.h (struct): New msgnum field in the MSGINFO structure.

	* webmail/maildir.c (maildir_read): Initialize the new msgnum field in
	the MSGINFO structure.

	* webmail/maildir.c (maildir_search): Skeleton alternative for
	maildir_read() that searches the maildir. Does everything but the
	actual search, returns the first <pagesize> messages from the maildir,
	as if all of them match the search string.

	* webmail/folder.c (folder_contents): If the 'search' form parameter is
	present, call the new maildir_search() function instead of
	maildir_read(). Move the code that formats a single message line into
	a separate function, for readability. Instead of using
	(first message shown + row number) as the message number, use the
	msgnum parameter in the MSGINFO structure.
	(folder_navigate): Rename as do_folder_navigate(), folder_navigate()
	wrapper invokes do_folder_navigate() only if the 'search' form
	parameter is not present, otherwise it replaces it with
	"Return to folder" link.

	* webmail/html/en-us/folder.html - the search box.

2010-12-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045decodemsgtoutf8.c: new function:
	 rfc2045_decodemsgtoutf8().

2010-11-27  Alessandro Vesely <vesely@tana.it>

	* html.c: Try to fix up sanitization of ugly HTML

0.65.3

2011-02-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpiov.h: iovreset() flushes input buffer
	after STARTTLS (pushed into 0.65.3).

0.65.2

2010-11-06  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/configure.in: Use "gpg2" if "gpg" is not found.

	* courier.spec.in: Use gnugp2 as a requirement if gnupg is not
	installed. Update vixie-cron -> cronie.

2010-10-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/maildropex.sgml: Fix formatting problem with man page
	stylesheet.

2010-10-11  Alessandro Vesely <vesely@tana.it>

	* courier/submit.C: -rfc3848 - specify an RFC 3848-format WITH
	clause in the Received: header.

	* courier/module.esmtp/courieresmtpd.c: pass -rfc3848 to submit,
	trim trailing spaces from received SMTP commands.

0.65.1

2010-10-04  Sam Varshavchik  <mrsam@courier-mta.com>

	* attachments.c (attach_upload): Always specify client's character
	set as the upload content's character set.

	* rfc2045/makemime.c (createsimplemime): Use charset specified in the
	MIME autoresponse text.

2010-09-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/mailbot.c: Sanity check on the contents of a MIME-formatted
	autoreply template: it must specify text/plain content type, and its
	charset gets used as the charset of the formatted autoreply.
	Drop the existing C-T-E header, and document the requirement that it
	cannot be a quoted-printable formatted MIME autoreply.

2010-08-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* Makefile.am (imapd.cnf): Compatibility fixes.

2010-08-16  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (get_sourceaddr): Fix macro typo.

2010-08-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/mailfilter.c (clrfields): Added the "noquote" option to the
	filter screen that sets the donotquote autoreply option.

	* rfc2045/rfc2045reply.c: added donotquote option, to suppress autoreply
	text.

	* maildrop/mailbot.c (main): Add the -N option to mailbot, to set the
	donotquote option.

	* maildir/maildirfilter.c: "noquote" autoreply option adds the -N
	option to the mailbot command line.

	* maildir/maildirwatch.c (maildirwatch_alloc): Use alarm() to kill
	the process if FAMOpen() takes more than 15 seconds to return.
	Should prevent a hung process if FAM/Gamin is fubared.

2010-07-11  Sam Varshavchik  <mrsam@courier-mta.com>

	* pop3dserver.c: Make printed() and putchar() macros.

2010-07-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* esmtpd.cnf imapd.cnf pop3d.cnf (default_md): added default_md = sha1

2010-06-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* --with-certsdir specifies the directory where SSL cert files are
	installed. Based on a patch by "Elan Ruusamäe" <glen@delfi.ee>.

	* rfc822/rfc822.c (rfc822_print_common_nameaddr): Prevent segfault if
	address decode fails.

	* Fix make check failure when libidn is not available.

2010-06-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (get_sourceaddr): Check
	SOURCE_ADDRESS_IPV6 if the destination is an IPv6 address, and
	SOURCE_ADDRESS will be used only for IPv4 destinations.

2010-06-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.fax/application-postscript.filter.in: Pass the -P
	option to ghostscript.

	* courier/module.fax/application-pdf.filter.in: Ditto.

2010-05-31  Sam Varshavchik  <mrsam@courier-mta.com>

	* Rebuilt man pages with updated stylesheets.

0.65

2010-05-30  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/list.c: Handle GnuPG 2 --with-colons output format changes.

	* gpglib/mimegpgfork.c: GnuPG 2 wants --batch when specifying
	passphrase-fd.

	* tcpd/configure.in: Check if explicit linking with libgpg-error is
	required.

2010-05-01  Mr. Sam  <mrsam@courier-mta.com>

        * tcpd/libcouriergnutls.c (tls_connect): Fix bad call to
        gnutls_server_name_set(). Affects Courier compiled with GnuTLS
	support.

2010-04-26  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/mailbot.c (main): Set close-on-exec bit on opened files.

2010-04-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/courier.sgml: Move the SPF section to a separate refsect2
	to work around misformatting by the manpage stylesheet.

2010-04-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkreply): Fix sender's name in the
	reply salutation.

	* html/en-us/newmsg.html: Ditto.
2010-04-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc2045/reformime.sgml: Document the -c option to reformime.

2010-03-20  "Stefan Hornburg (Racke)" <racke@linuxia.de>

	* imapd.c (main): Fix typo in alert message.

2010-03-18  Hugo Monteiro <hugo.monteiro@fct.unl.pt>

	* Big quota patch (with some changes).

0.64.2

2010-03-16  Alessandro Vesely <vesely@tana.it>

	* courier/module.local/local.c (rw_local_filter): Fix crash if
	a local mail filter produces more than bufsiz-1 bytes.

2010-03-12  Sam Varshavchik  <mrsam@courier-mta.com>

        * imapd.c (main): Dummy FAM/Gamin initialization, report an error
        during login, upon a failure.

2010-03-10  Sam Varshavchik  <mrsam@courier-mta.com>

	* imap/imapd.c (imapenhancedidle): Make FAM error more meaningful.

2010-02-25  Bernard Quatermass <bernard@quatermass.co.uk>

	* pop3dserver.c (main): "disableinsecurepop3" account option disables
	non-SSL logins.

	* imapd.c (chkdisabled): "disableinsecureimap" account option disables
	non-SSL logins.

0.64.1

2010-02-24  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/mailbot.c (main): Fix memory corruption if the -c option
	was passed to mailbot.

2010-02-02  "Hanno Böck" <hanno@hboeck.de>

	* courier/module.esmtp/courieresmtpd.c: Option to disable tarpitting.

2010-01-14  Josip Rodin <joy@debbugs.entuzijast.net>

	* maildrop/main.C (run): When using system authentication on
	platforms where the mail directory does not use the sticky bit,
	use groupid set by the set-group-id bit on the binary executable,
	if any.

2010-01-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c (docommand): Do not invoke an external
	mail handler with a completely empty environment. Courier startup
	script already reset the environment, and initialized it with the
	default system locale, which we want the child process to inherit.

	* maildrop/main.C (run): In delivery mode, preserve LANG, LANGUAGE,
	and LC_* environment variables from the parent.

2010-01-09  Klaus Heinz <k.heinz@janzehn.kh-22.de>

	* courier/configure.in: Fix typo

0.64.0

2009-12-18  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/ldapaliasd.c (search_maildrop): Escape mail address in
	alias lookups.

2009-11-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc822.c: Removed rfc822_praddr().

	* rfc822/rfc822_getaddr.c (rfc822_getaddr): Implement rfc822_getaddr()
	by calling rfc822_display_addr_tobuf(), instead of rfc822_praddr().

	* rfc822/testsuite.c (doaddr): Remove rfc822_addrlist() and
	rfc822_namelist().

	* rfc822/rfc822.c: remove rfc822_addrlist() and
	rfc822_namelist()

	* courier/module.local/deliver.c (dodel): Replace usage of
	rfc822_addrlist() with rfc822_display_addr_tobuf.

	* maildrop/reformail.C (add_from_filter): Replace usage of
	rfc822_addrlist() with rfc822_display_addr_tobuf.

	* maildrop/recipenode.C (rfc822getaddr): Replace usage of
	rfc822_addrlist() with rfc822_display_addr_tobuf.

	* maildrop/reformail.C (main): Removed the -r, -p, -P, -t, -k options,
	replaced by new mailbot options.

	* maildrop/mailbot.c (main): New options that set the corresponding
	parameters to rfc2045_makereply_unicode(): -e, -T, -F -S

	* rfc2045/rfc2045replyunicode.c (rfc2045_makereply_unicode): Added
	replytoenvelope setting. Added sophisticated formatting for
	replysalut.

2009-11-21  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc822_getaddr.c: Remove rfc822_prname() and
	rfc822_prname_orlist(), replaced by rfc822_display_name() with a NULL
	character set.

	* rfc822/rfc2047u.c (rfc822_display_name): Semantical change --
	without an explicit name, display the address as the name. If the
	requested character set is NULL, do not decode RFC2047-encoded content,
	return it as is.

	* webmail/addressbook.c (addressbook): Replace rfc822_getname() by
	rfc822_display_name() with the character set specified as NULL.

	* imap/msgenvelope.c (doenva): Replace rfc822_getname() by
	rfc822_display_name_tobuf() with a NULL character set.

2009-11-17  Sam Varshavchik  <mrsam@courier-mta.com>

	* rfc822/rfc2047u.c (rfc2047_print_unicodeaddr): Fix several formatting
	issues with deprecated RFC 822 distribution lists: spurious comma
	adter the last address, pass the space after the ':' as a separator
	character.

	* rfc822/rfc2047.c (counts2/save): Fix line-wrapping of encoded
	addresses.

	* rfc822/rfc2047u.c (rfc822_display_addr_tobuf): New function.

	* webmail/maildir.c (maildir_ngetinfo): Fix logic for locating the
	name used for salutation.

	* rfc2045/rfc2045reply.c (mkreply): Fix logic for locating the
	name used for salutation.

2009-11-14  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/folder.c: In the folder cache file, always store senders and
	subjects encoded using UTF-8. After upgrading, the folder index may
	not properly show non-Latin characters until the next message is added
	to the folder, and the folder cache gets rebuilt.

	* webmail/addressbook.c: Always use UTF-8 for local sqwebmail address
	books. After upgrading, it might be necessary to do a one-time
	conversion of the address book file to UTF-8 encoding.

	* rfc822/rfc822.c (rfc822_print_common): Rewrite.

	* rfc822/rfc2047u.c (rfc822_display_name_int): Fixed various rules for
	encoding names to be more MIME compliant.
	(rfc822_display_addr_str): Renamed from rfc822_display_addr(), for a
	consistent API.
	(rfc822_display_addr): New function, decode the wire format of a single
	address. Names are MIME decoded, addresses are IDN-decoded.
	(rfc2047_print_unicodeaddr): Do not output a dummy name for an
	address without one.
	(rfc822_display_addr_str_tobuf): New function, version of
	rfc822_display_addr_str() that collects the output into a buffer.

	* rfc822/rfc2047.c (rfc822_encode_domain): New function -- IDN-encode
	a domain, with an optional "user@".
	(rfc2047_encode_header_addr): Renamed rfc2047_encode_header(), for a
	consistent API.
	(rfc2047_encode_header_tobuf): New function, encode a header from
	displayed format to wire format. Names are encoded using RFC 2047,
	addresses using IDN.

2009-11-12  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/maildropfilter.sgml: Typo fix.

2009-11-08  Sam Varshavchik  <mrsam@courier-mta.com>

	* pcp/pcpdir.c (retrevent): Fix memory leak.

	* pcp/pcp.c (list): MIME-decode the subjects in the output of the list
	command.
	(list_msg_rfc822): Fix MIME-decoding of headers in the output of the
	retrieve command.
	(main): Use the default system locale character set.

	* rfc822/rfc2047.h: Expose raw RFC 2047 decoding function,
	rfc2047_decoder().

	* rfc822/rfc822hdr.c (rfc822hdr_is_addr): New function.

	* rfc822/rfc822.c (tokenize): Tweak the logic for collecting RFC 2047
	atoms.

	* rfc822/rfc2047u.c (rfc822_display_name): New function,
	replaces rfc2047_print().
	(rfc822_display_name_tobuf): New function,
	replaces rfc2047_print().
	(rfc822_display_namelist): New function,
	replaces rfc822_namelist().
	(rfc822_display_addr): New function, replaces rfc2047_print().
	(rfc2047_print_unicodeaddr): Renamed from rfc2047_print_unicode().
	(rfc822_display_hdrvalue): New function, replaces rfc2047_decode(),
	rfc2047_decode_simple(), rfc2047_decode_enhanced().
	(rfc822_display_hdrvalue_tobuf): New function, ditto.

	* rfc822/rfc2047.c: Removed rfc2047_decode(), rfc2047_decode_simple(),
	rfc2047_decode_enhanced(), rfc2047_print().

	* rfc822/Makefile.am: Link against GNU IDN library.

	* rfc2045/rfc2045.h: Added "replydsn" option to rfc2045_makereply(),
	incorporates the MIME bounce format generated by mailbot.
	Added "subject" -- override subject of the reply.
	Added "dsnfrom" -- for the replydsn option.
	Added two callbacks used by the replydsn option.
	Remove rfc2045_makereply(), leaving just rfc2045_makereply_unicode().

	* rfc2045/reformime.c (do_print_info): MIME-decode the content
	description.
	(main2): New -H option.

	* pcp/pcpdir.c (retrevent): Fix memory leak.

	* pcp/pcp.c (list): MIME-decode the subjects in the output of the list
	command.
	(list_msg_rfc822): Fix MIME-decoding of headers in the output of the
	retrieve command.
	(main): Use the default system locale character set.

	* maildrop/mailbot.c (main): Use the default character set from the
	system locale.
	(usage): Added the -n option, for debugging purposes.
	(opensendmail): Pass the autoreply to sendmail in a file descriptor
	for a temporary file on stdin, instead of piping the resulting
	message to sendmail, running as a child process.
	(savemessage): Save the input message in a temporary file, and
	RFC2045-parse it.
	(main): Use rfc2045_makereply_unicode() to prepare the autoreply
	message. Clarify mailbot man page as to the slightly changed
	requirements for the autoreply text that must be given to mailbot.

	* imap/thread.c (thread_ref_callback): SUBJECT for THREAD REFERENCES
	wasn't getting converted to UTF-8 at the right point, moved it up into
	search.c

	* imap/search.c (fill_search_header): SUBJECT search key was being
	MIME-decoded twice.

	* courier/cmlmfetch.C (doindex): Use returnaddr() to compute return
	address for responses to the "index" request.

	* courier/cmlm.C (main): Run cmlm in the default system locale.

2009-11-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/courierd.dist: New setting: SYSLOCALE -- load default system
	locale. Remove the forced LC_ALL=C setting.

	* pcp/pcp.c: Default output charset taken from the default locale,
	rather than the fixed iso-8859-1.

	* maildrop/mailbot.c: Ditto.

0.63.0

2009-09-05  Gordon Messmer <yinyang@eburg.com>

	* outbox.c (imapd_sendmsg): Renamed sendmsg() to avoid library name
	clash.

2009-08-28  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier.sysvinit.in: Fix typo in init file.

2009-08-12  "Hanno Böck" <hanno@hboeck.de>

	* tls: change the default OpenSSL configuration to disable anonymous
	authentication ciphers.

2009-07-29  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/tcpd.c (check_drop): -drop option -- drop connections from
	blacklisted IP addresses.

	* courier/module.esmtp/esmtpd.dist.in (DROP): Added DROP variable
	to hold the -drop option.

	* courier/webadmin/admin-30esmtp.html: Added interface to set the
	DROP setting, dropped obsolete DNSBLs.

0.62.2

2009-07-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c: Fix null ptr deref.

0.62.1

2009-06-13  Sam Varshavchik  <mrsam@courier-mta.com>

	* Various portability fixes for gcc 4.4 and newer libtool.

2009-06-01  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpd.dist.in (ESMTPAUTH): Clarify the
	description of the ESMTPAUTH option.

0.62.0

2009-05-09  Sam Varshavchik  <mrsam@courier-mta.com>

	* Documentation refresh.

2009-05-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (iov_logerror): Do not log
	connection errors reported for the QUIT command.

	* courier/cdmsgq.C: Include authentication credentials in "newmsg"
	syslog entries of messages that were submitted using authenticated
	SMTP. Note that this changes the format of "newmsg" syslog entries.

2009-03-23  Fernando Gozalo <fgozalo@csi.uned.es>

	* pop3dserver.c: s/POP3_STLS/POP3_TLS/, for correct logging.

0.61.2

2009-03-04  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c (gen_encryption_desc): Fix off-by-1.

	* courier/module.local/localmail.c (save_submit_errmsg): Fix NULL ptr
	deref.

2009-02-22  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/doc/Makefile.am (man1): dotforward.1 was listed twice.

2009-02-22  "Jürgen Walch" <jwalch@plumsoft.de>

	* courier/submit.C (getrcpts): Renamed any existing Received-SPF to
	Old-Received-SPF headers only if SPF is actually enabled.

0.61.1

2009-02-05  Sam Varshavchik  <mrsam@courier-mta.com>

	* webmail/html.c: Fix handing of broken HTML email

2009-02-04  Mr. Sam  <mrsam@courier-mta.com>

	* pcp/intl/plural.c: Fix broken version that made it into the tarball.

0.61

2009-01-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* webadmin: updated LDAP configuration screens.

2009-01-27  Sam Varshavchik  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c (struct ssl_handle_t): Drop an unused
	variable.
	(set_cert): Fix cleanup upon X.509 cert import failure.

2009-01-26  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2646html.c (rfc2646_getpfix): Fix invalid parameter to callback
	function.

2008-12-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* imaprefs.c (dorefcreate): Clean up usage of rfc822_threadsearchmsg().
	A malloc() failure wasn't checked correctly.

2008-11-25  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c (maildir_filter_saverules): Use EX_SOFTWARE
	when bouncing mail from sqwebmail-generated filters.

	* courier/module.local/deliver.c (docommand): Do not convert EX_SOFTWARE
	to EX_NOPERM exit codes. Use existing localmail code that suppresses
	backscatter blacklisting for EX_SOFTWARE-generated failures.

	* courier/cmlmstartmail.C (StartMail::Send): Ignore mail submission
	errors.

2008-11-02  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cmlmsubunsub.C (docmdsub): Make sure subscription detail
	record is not empty.

2008-10-15  Sam Varshavchik  <mrsam@courier-mta.com>

	* courier/cdmsgq.C (msgq::queuescan3): Use a backup mx relay only
	for messages that should be delivered via esmtp.

	* courier/doc/courier.sgml: More backup MX relay documentation.

2008-10-11  Dmitry Osipov <ffar@mail.ru>

	* rfc2045/rfc2045_fromfd.c: Optimize header parsing.

2008-09-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* maildrop/testsuite.in: Fix a build error.

2008-09-20  Sam Varshavchik  <mrsam@courier-mta.com>

	* search.c: Empty MIME entities would always match any SEARCH. Reported
	by Dmitry Osipov.

2008-09-18  Federico Cuello <fedux@lugmen.org.ar>

	* tcpd/configure.in: --without-gnutls forces suppression of GnuTLS when
	OpenSSL is not present.

2008-09-13  Sam Varshavchik  <mrsam@octopus.email-scan.com>

	* Documentation: add links to list archives on markmail.org

2008-08-26  Alessandro Vesely <vesely@tana.it>

	* tcpd/libcouriergnutls.c (tls_connect): Fix client certificate request
	settings.

2008-08-24  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c (set_cert): Add support for certificates
	signed by an intermediate CA.

2008-08-07  Jonathan Kamens <jonathan.kamens@tamalesoftware.com>

	* courier.spec.in (BuildPreReq): Add the --without-fam option

2008-07-26  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/testsuite: Put additional stuff into testsuite

	* maildrop/reformail.C (add_messageid): Make generated Message-ID:
	field longer.

	* maildrop/deliver.C (delivery): If child process did not fully
	consume stdin, but terminated with a zero exit status, ignore SIGPIPE.

	* maildrop/reformail.C (extract_headers): If stdin is seekable,
	don't waste time on discarding stdin's content.

2008-07-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getrcpts): Clarify 534 error message text.

2008-07-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpd.dist.in (TLS_TRUSTCERTS): Remove
	TLS_PEERCERTDIR -- obsolete, replaced by TLS_TRUSTCERTS.

2008-07-21  Gordon Messmer <yinyang@eburg.com>

	* courier/cdfilters.C (dofilter_err): Log which filter is down.

2008-07-20  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: Make flowed-text formatting unicode-aware.

	* webmail: Update to the current version of gettext.

	* unicode/unicode_wcwidth.c (unicode_wcwidth): New function -- fixed
	lookup of EastAsianWidth unicode table. Return 2 as the width of
	unicodes marked "F" or "W", 1 for all others.

2008-07-19  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: Drop all the #if SQWEBMAIL_UNICODE -- unicode is now always
	turned on.

0.60

2008-07-12  Mr. Sam  <mrsam@courier-mta.com>

	* Remove the root certificate bundle. The configure script checks for
	known locations of root certificate bundles installed on different
	platforms, and sets TLS_TRUSTCERTS accordingly. After upgrading,
	review all config files and adjust TLS_TRUSTCERTS accordingly.

	* courier/configure.in (EXTRACMDLIB): Drop some cruft.

	* courier/courierd.dist.in (TLS_TRUSTCERTS): Clarify descriptions
	of several settings.

2008-07-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c: Various bits needed to implement
	EXTERNAL auth.

	* maildir/maildirquota.sgml: Update descriptions of maildir quotas.

2008-07-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmdsublist.C: Subscriber list navigation was broken :-(

2008-07-04  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c: Forward mail with a null return address.
	The lesser of three evils. All other choices may result in looping
	mail. Improve quoting of some strings.

2008-06-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (smtp_externalauth): Check
	the environment variables for subject fields set by couriertls.
	Advertise the AUTH EXTERNAL capability, if they are set.
	(ehlo): Turn off the AUTH= response, nobody should need it, anymore.
	(main): SASL authentication did not correctly handle the special case
	of "=" passed as the initial response to indicate an empty initial
	response. Switch to the new auth_sasl_ex() API.

	* imap/pop3login.c (starttls): Use the couriertls library to invoke
	couriertls, instead of doing it ourselves. SASL authentication did
	not correctly handle the special case of "=" passed as the initial
	response to indicate an empty initial response. Switch to the new
	auth_sasl_ex() API.

	* imap/pop3dcapa.c (pop3_externalauth): Check the environment variables
	for subject fields set by couriertls. Advertise the AUTH EXTERNAL
	capability, if they are set.

	* imap/imaplogin.c (starttls): Use the couriertls library to invoke
	couriertls, instead of doing it ourselves.

	* imap/capability.c (imap_externalauth): Check the environment variables
	for subject fields set by couriertls. Advertise the AUTH=EXTERNAL
	capability, if they are set.

	* imap/authenticate_auth.c (authenticate): SASL authentication did not
	correctly handle the special case of "=" passed as the initial response
	to indicate an empty initial response. Switch to the new auth_sasl_ex()
	API.

	* tcpd/libcouriergnutls.c (oid_name_list): Rename "email" to
	"emailAddress", for compatibility with OpenSSL.

	* tcpd/libcouriergnutls.c (verify_client): Check for the required
	certificate occured in the wrong spot.

	* tcpd/libcouriergnutls.c (tls_connect): Add call to
	gnutls_certificate_set_subject() to actually request the client cert.

	* tcpd/libcouriergnutls.c (tls_certificate_verified): Return an
	indication if the peer's certificate is good.

	* tcpd/libcouriertls.c (tls_certificate_verified): Ditto. Minor bug
	fixes.

	* tcpd/starttls.c (dump_to_fp): Parse Subject: header dumped by
	couriertls, export it in environment variables.

	* tcpd/tlsclient.c (couriertls_get_subject): Retrieve individual
	Subject: fields.

	* tcpd/tlsclient.c (couriertls_export_subject_environment): Export
	parsed Subject: fields to the environment.

2008-06-21  Mr. Sam  <mrsam@courier-mta.com>

	* Optimize IMAP keyword implementation. Faster results in exchange
	for a concurrency tradeoff if two concurrent sessions attempt to
	update keywords for the same message at the same time -- only one will
	win.

2008-06-13  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822_getaddr.c: Backslashed special characters in address names
	weren't being dequoted correctly by rfc822_getname() and
	rfc822_getname_orlist().

2008-05-23  Mr. Sam  <sam@email-scan.com>

	* courier/doc/draf*.txt - drop canned I-D verbiage from SMTP protocol
	extension documentation.

2008-05-18  Peter Avalos <pavalos@theshell.com>
	* rootcerts/configure.in: Do not override REHASH from the environment.

2008-05-17  Mr. Sam  <mrsam@courier-mta.com>

	* Multiple: fix several compiler warnings

2008-05-11  Mr. Sam  <mrsam@courier-mta.com>

	* pop3login.c (main): Add a timeout to the POP3 login stage

2008-05-10  Mr. Sam  <mrsam@courier-mta.com>

	* pcp/Makefile.am: include the m4 subdirectory in the tarball

2008-05-08  Bernd Wurst <bernd@bwurst.org>

	* gdbmobj/Makefile.am (libgdbmobj_la_LIBADD): Fix makefile

2008-05-08  Mr. Sam  <mrsam@courier-mta.com>

	* bdbobj/Makefile.am: same patch. Also, clean up the rest of the
	makefiles.

2008-04-09  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (cache_get): Fix TLS session caching.

2008-04-03  Mr. Sam  <sam@email-scan.com>

	* courier/module.esmtp/esmtpd.dist.in: Remove the overlooked explicit
	setting of TLS_PROTOCOL.

0.59

2008-03-12  Gordon Messmer <yinyang@eburg.com>

	* tcpd/libcouriertls.c (tls_create): Default TLS_PROTOCOL=SSL23,
	TLS_CIPHER_LIST=SSLv3:TLSv1:!SSLv2:HIGH:!LOW:!MEDIUM:!EXP:!NULL@STRENGTH

2008-03-09  Brian Candler <B.Candler@pobox.com>

	* imapd.c (is_smap): Compilation failure fix.

2008-03-07  Bernd Wurst <bernd@bwurst.org>

	* many: update description of SSL/TLS-related settings in several
	configuration files.

2008-02-03  "Paweł Tęcza" <ptecza@uw.edu.pl>

	* pref.c: autorenaming of the Sent folder can now be set in Preferences.

2008-01-29  "Stefan Hornburg \(Racke\)" <racke@linuxia.de>

	* More portability fixes.

2008-01-28  Alessandro Vesely

	* rfc1035/spf.c (transform): Fix %{ir} macro

2008-01-26  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (main): New setting in the IMAP config file,
	IMAP_MAILBOX_SANITY_CHECK -- disable sanity check on the homedir
	and maildir ownership.

2008-01-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getrcpts): Strip any trailing periods in sender
	or receipient addresses.

2008-01-04  Mr. Sam  <mrsam@courier-mta.com>

	* all: Explicitly make stderr line-buffered.

2007-12-17  Mr. Sam  <sam@email-scan.com>

	* courier/doc/webmlmd.sgml: Fix couriermlm usage.

2007-12-17  Stefan Hornburg (Racke) <racke@linuxia.de>

	* courier: More missing #include-s.

2007-12-15  Mr. Sam  <sam@email-scan.com>

	* courier/courierd.dist.in: Clarify some settings.

2007-12-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comaliases2.C: Was missing a #include <string.h>

2007-12-08  "Stefan Hornburg (Racke)" <racke@linuxia.de>

	* imapd.c (main): Suppress spurious error message

0.58

2007-11-21  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c (tls_connect): TLS_MIN_DH_BITS setting,
	invokes gnutls_dh_set_prime_bits(). Fix some bugs.

2007-11-18  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c (tls_transfer): Fix some bugs.

2007-11-18  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriergnutls.c: Fix SSL session caching bug.

2007-11-07  Mr. Sam  <sam@email-scan.com>

	* courier.spec.in (BuildPreReq): Drop obsolete build requirement on
	xpdf.

2007-11-04  Mr. Sam  <sam@email-scan.com>

	* Added support for GnuTLS.

2007-10-23  Mr. Sam  <mrsam@courier-mta.com>

	* couriertls: code cleanup.

2007-10-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/local.c (rw_del_local): Fix a memory stomp.

2007-10-14  Mr. Sam  <mrsam@courier-mta.com>

	* courier/sendmail.c: Get rid of the hard 30 minute timeout.

	* courier/submit.h (class SubmitFile): Keep track of all files
	(control and data) that were opened.

	* courier/submit.C (class Input): Rewrite input processing to use
	non-blocking I/O to read standard input. When the message source is
	local (or dsn), get rid of the hard 30 minute timeout, and poll stdin
	with a 5 minute poll() timeout, at which point the timestamps on all
	open control and data files are pinged, to keep courierd from purging
	them based on their old timestamp. Continue to use a hard timeout for
	all non-local mail.

0.57.1

2007-10-09  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapscanclient.c (do_imapscan_maildir2): Avoid a double-fclose()
	in marginal situations.

2007-10-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/local.c (rw_del_local): "User unknown" reports
	complete local address, including extensions.

2007-10-06  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C (SubmitFile::MessageEnd): Invoke run_filter()
	after all control files are closed.

	* courier/submit.C: opt BOFHHEADERLIMIT replaces hardcoded limit
	of 100,000 bytes of headers per message.

2007-10-06  Jonathan Kamens <jik@kamens.brookline.ma.us>

	* courier.spec.in: Clean up without_fax option.

2007-10-06  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/starttls.c (main): Prime the OpenSSL entropy pool on platforms
	that don't have a ready source available.

2007-10-02  Mr. Sam  <sam@email-scan.com>

	* courier/Makefile.am (webmlmd_DEPENDENCIES): webmlm and webmlmd
	need to be linked with @NETLIBS@

0.57

2007-09-25  "Johnny C. Lam" <jlam-courier@buildlink.org>

	* liblock/lockdaemon.c (OPEN_MAX): Use OPEN_MAX, instead of hardcoded
	99

2007-09-25  Mr. Sam  <mrsam@courier-mta.com>

	* liblock/lockdaemon.c (OPEN_MAX): Even better, use
	sysconf(_SC_OPEN_MAX), where available.

2007-09-23  Anton Dobkin <anton@viansib.ru>

	* folder.c (do_sharedhierlist): Missing </table>.

2007-09-21  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (chk_clock_skew): Try to autodetect clock skew.

2007-09-20  Adam Hasselbalch Hansen <ahh@one.com>

	* Include remote port number in IMAP and POP3 logs.

2007-09-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getrcpts): Reject <@domain.com> for a recipient's
	address.

2007-09-03  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (redirect_hash): Use SQWEBMAIL_RANDSEED if it's set,
	instead of sendit.sh's inode.

2007-09-03  Pawel Tecza <ptecza@uw.edu.pl>

	* sqwebmail.c: Remove hardcoded reference to TIMEOUTHARD

2007-09-02  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/newmsg_create.c: Global footer wasn't being added correctly
	do HTML-formatted mail.

2007-08-29  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/tcpd.c (doit): Ignore SIGPIPE errors in couriertcpd, preventing
	couriertcpd from being terminated if the stderr logger crashes.

2007-08-23  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/spf.c (lookup): Looping SPF query should abort with
	SPF UNKNOWN, as per specs.

2007-07-29  Mr. Sam  <mrsam@courier-mta.com>

	* Major code cleanup.

2007-07-26  Mr. Sam  <sam@email-scan.com>

	* COPYING: GPL 3

	* imap/mailboxlist.c (folder_entry): Optimization: skip over folders
	not in the current scope, avoiding unnecessary overhead of checking
	their ACLs.

2007-07-20  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cdfilters.C (dofilter): Tolerate newline-less responses from
	the filter.

	* courier/doc/dot-courier.sgml: Document that sysexit 100 from
	.courier is a permanent failure.

2007-07-10  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/rfc2646html.c (fmtwikiline): Fixes to inferred HTML
	formatting.

2007-07-04  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmd.C: fix compiler errors on some platforms.

2007-07-01  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/gpg.c: Fix signing of multipart messages that contain
	8 bit content.

	* courier: Updated PAM config files for Fedora 7

	* courier/courier.c: "courier show all" and "courier clear all"
	commands.

2007-06-30  Mr. Sam  <sam@email-scan.com>

	* courier/webmaild.in (datarootdir): Fixes for automake 1.10

2007-06-30  Mr. Sam  <mrsam@courier-mta.com>

	* Makefile.am: Drop the automake.fix hack -- gotten too much.

2007-06-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmdcmlm.H: Rename stdin() and stdout() member functions
	to something else, to avoid problems on platforms where stdin and
	stdout are stdio.h macros.

	* tcpd/libcouriertls.c (tls_create): "SSL23" selects SSLv23_method().

	* Cleanup of courierfilter code.

2007-06-28  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (folder_delmsgs): Portability fix.

2007-06-27  Mr. Sam  <mrsam@courier-mta.com>

	* cgi/cgidaemond.c: Added #include <sys/uio.h>

	* alias handling: code cleanup.

2007-06-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlm2.C: Add missing include of langinfo.h

2007-06-24  Mr. Sam  <mrsam@courier-mta.com>

	* couriermlm: use std::istream.good() instead of std::istream.eof()

0.56

2007-06-18  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpd.dist.in (ULIMIT): Make default ulimit
	larger.

2007-06-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-20aliases.pl: Remove check that prevents
	multiple virtual domains to be aliased to the same account.

2007-06-15  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmdsublist.C (show_list_address): Added link to
	a popup that shows the subscription log.

2007-05-27  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (tls_create): Setting protocol to SSL3 will
	disable SSL2.

2007-05-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmdmod.C: Implemented webmlmd-based moderation.

	* courier/cmlmmoderate.C (cmdmoderate): Changed moderation response
	templates to use "CUT HERE" to demarcate moderator's response.

2007-05-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmdsublist.C: Implement admin unsubscribe.

2007-05-04  Mr. Sam  <mrsam@courier-mta.com>

	* courier/filters/courierfilter.c (start): Fix wrong argument
	to ll_daemon_start().

	* liblock/lockdaemon.c (start1): Move lock file to filedescriptor 99,
	to avoid interference with courierfilter.

2007-04-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/filters/perlfilter/perlfilter.c (reap_child): Fix potential
	race condition when shutting down perlfilter

2007-04-26  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmcmdmisc.C: --lang parameter to couriermlm create

0.55.1

2007-04-22  Aidas Kasparas <a.kasparas@gmc.lt>

	* tcpd/couriertcpd.sgml: Update IPv6 examples.

2007-04-16  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirkeywords2.c (maildir_kwImport): Properly clean up
	after a malloc failure.

	* maildir/maildirshared.c (do_maildir_shared_sync): Plug a leak
	when syncing old-style shared folders.

2007-04-15  Mr. Sam  <mrsam@courier-mta.com>

	* unicode/eucjp.c (c2u): Check for malloc failure.
	(u2c): Ditto.

	* unicode/shiftjis.c (c2u): Ditto.

	* unicode/shiftjis.c (u2c): Ditto.

	* unicode/ksx1001.c (c2u_euckr_doconv): Ditto.

	* unicode/ksx1001.c (u2c_euckr_doconv): Ditto.

	* maildir/maildirnewshared2.c (maildir_shared_cache_read): Clarify
	calling convention, and check for invalid arguments to this function.

	* maildir/maildirkeywords2.c (doReadKeywords2): Eliminate dead code.

2007-04-08  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webmlmd.C: Supply a missing definition of error()

0.55

2007-04-05  Mr. Sam  <mrsam@courier-mta.com>

	* Update man pages and documentation to Docbook XML V4.4

2007-03-11  Mr. Sam  <mrsam@courier-mta.com>

	* couriermlm/webmlmd: Final commit, it's ready.

2007-03-10  Mr. Sam  <mrsam@courier-mta.com>

	* couriermlm: added the update command.  Also updated documentation.
	NOTE: see "INSTALL" for update instructions.

2007-03-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (authclient): Use domain name,
	not MX hostname, for looking up authenticated SMTP passwords in
	esmtpauthclient

2007-03-05  Mr. Sam  <mrsam@courier-mta.com>

	* webmlmd man page.

	* tcpd/starttls.c (smtp_proto): Send a dummy EHLO before STARTTLS
	(gmail wants it).

2007-03-04  Mr. Sam  <mrsam@courier-mta.com>

	* Added webmlm/webmlmd (documentation TODO).

	* All unicode mapping tables are now included by default.  Dropped
	--enable-unicode and --disable-folder-utf7-encoding options.

	* courier/cmlmcmdmisc.C (cmdset): Only NAME= gets encoded to RFC 2047
	format, all other variables get transcoded to UTF-8.

2007-02-26  Mr. Sam  <mrsam@courier-mta.com>

	+ couriermlm cleanup/rewrite

	* courier/idxheaderhtml.tmpl: mailing list index now uses UTF-8

	* courier/idxheadertxt.tmpl: Ditto.  **NOTE** must fix idxheaderhtml
	and idxheadertxt files in existing mailing lists!

	* courier/cmlmfetch.C (getmsginfo): RFC 2047 decode subjects and
	senders in mailing list archive index

	* courier/cmlmcmdmisc.C (cmdexport): Import/export now preserves
	write-only aliases (export file format change)

	* courier/cmlmcmdmisc.C (cmdset): List settings RFC 2047-encode
	non-Latin parameter values (specifically, NAME).

	* rfc822.c (parseaddr): rfc822a_alloc() would corrupt and misparse
	RFC2047-encoded atoms.  Fix it.

2007-02-25  Mr. Sam  <mrsam@courier-mta.com>

	* More configure script cleanup

2007-02-25  Kurt Roeckx <kurt@roeckx.be>

	* Clean up configure scripts

2007-02-25  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/rfc822.c (parseaddr): rfc822a_alloc() would corrupt and
	misparse RFC2047-encoded atoms.

2007-02-24  Mr. Sam  <mrsam@courier-mta.com>

	* cgi/cgidaemon.c: Factored out sqwebmail's prefork daemon logic
	into a standalone module.

2007-02-20  Pawel Tecza <ptecza@uw.edu.pl>

	* webmail/folder.c (do_folderlist): More cleanup.

	* webmail/html/en-us/newmsg.html: New setting HDRMAXLEN - maximum
	header size.

2007-02-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/couriermlm.sgml: Fix typo.

2007-02-18  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmsublist.C (openalias): Fix couriermlm lalias command.

2007-02-09  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (folder_nextprev): Use one row for navigation icons, if
	images are being used.  Suggested by Pawel.

2007-02-09  Pawel Tecza <ptecza@uw.edu.pl>

	* folder.c (do_folderlist): Cleanup.

2007-02-09  "Jérôme Blion" <jerome.blion@free.fr>

	* mailq: Added -batch option.

2007-02-03  Mr. Sam  <mrsam@courier-mta.com>

	* threadlib/pthread.c: Fix error checking of return calls from pthread

2007-02-02  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/newmsg.c (dosendmsg): -N failure, not fail.

2007-01-18  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/mailbot.c (check_dsn): Also check for precedence: list and
	list-id: headers.

0.54.2

2007-01-13  Lloyd Zusman <ljz@asfast.com>

	* courier/cdfilters.C (filter_cmp): Fix sorting of active courier
	filters.

0.54.1

2007-01-08  Peter Bieringer <pb@bieringer.de>

	* html/en-us/autoresponder.html: Fix typo.

2007-01-05  Mr. Sam  <mrsam@courier-mta.com>

	* all: rename rw_init() to rw_init_courier(), to avoid a name clash.

0.54

2006-12-30 Flavio Stanchina <flavio.stanchina@ies.it>

	* courier/doc/couriermlm.sgml:  Added NODSN option in couriermlm.

2006-12-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (authclient): Fix crash caused
	by an empty line in esmtpauthclient.

2006-12-29  Mr. Sam  <mrsam@courier-mta.com>

	* cgi/cgi.c (cgiformdecode): Stop converting 0xA0 to 0x20 bytes in form
	posts.  Messes up UTF-8 text.  Hope that the original reason I did this
	is no longer needed.

2006-12-27  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/html/en-us/autoresponder.html: Fix typo.

2006-11-12  Alessandro Vesely <vesely@tana.it>

	* sqwebmail/auth.c: use address returned from authlib as return
	address of sent messages.

2006-11-04  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045rewrite.c (rfc2045_rewrite_common): Make sure
	rewritten message always terminates with a trailing newline.

2006-11-04  Sergiy Zhuk <serge@yahoo-inc.com>

	* tcpd/tcpd.c: set max # of connections on a per-IP address basis

2006-11-04  Pawel Tecza <ptecza@uw.edu.pl>

	* courier/module.dsn/dsn.c: Coding style fixes

	* doc/links.html: fix link to the sqwebmail list

2006-10-28  Mr. Sam  <mrsam@courier-mta.com>

	* Ported the code to gcc 4.1.1 and openldap 2.3.

2006-10-09  Aidas Kasparas <a.kasparas@gmc.lt>

	* rfc1035/rfc1035mxlist.c (domxlistcreate): Correctly handle
	partially recovered MX lists.

2006-10-01  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* courier/module.dsn/dsn.c (print_header): Redesign how DSNs are
	formatted, to make them more customizable.

2006-10-01  Josip Rodin <joy@entuzijast.net>

	* maildrop: configure option to make courier-authlib authentication
	optional; -a option to maildrop.

2006-09-19  Josip Rodin <joy@entuzijast.net>

	* maildirmake: Clarify some error messages.

	* maildir/maildirmake.sgml: Documentation fixup.

	* maildrop/maildropex.sgml: Documentation fixup.

2006-09-19  Mr. Sam  <mrsam@courier-mta.com>

	* liblock/lockmail.c (main): Save the hide of some knucklehead who
	changed the ownership and permissions of how lockmail gets installed
	by my Makefile.  Max Vozeler <max@decl.org> via Debian's maildrop
	maintainer.

2006-09-17  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/main.C (run): -f ""? I really mean it.

2006-09-05  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (folder_list): Forbit rename folder if new folder name
	contains a dot.

	* mailfilter.c (mailfilter_submit): Quietly prune trailing ':' from
	the tail end of a header name.

2006-09-05  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* webmail: Trim whitespace from login username, and new folder names.

2006-09-05  Josip Rodin <joy@debian.org>

	* maildrop/dotlock.C (attemptlock): Clean up some error messages.

2006-09-05  Mr. Sam  <mrsam@courier-mta.com>

	* deliverquota: messages created by deliverquota will use the umask
	setting.

	* imap: message files created by the IMAP server will use the umask
	setting.

0.53.3

2006-08-11  Alessandro Vesely <vesely@tana.it>

	* courier/libs/comtrack.c: minor bug in track_save

	* courier/module.local/local.c (rw_local_filter): minor bug in rw_local_filter

2006-07-30  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* newmsg.c (newmsg_init): Remove redundant blank lines in new msgs.

	* newmsg.c (newmsg_header_rfc822): Read-only From: header shown when
	wbnochangingfrom=1, From: header entirely suppressed when >1.

2006-07-24  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* sqwebmail.c: Add optional class name to dynamically-generated
	<select> tag.

2006-07-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec: Improved RH/Fedora initscript

2006-07-22  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* Cosmetic "Create Message" improvements

	* Cosmetic "Attachments" improvements

	* Cosmetic "Spell Checking" improvements

	* Fix attribute in an input tag.  Other XHTML fixes.

2006-07-21  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* html/en-us/autoresponder.html: Small template improvements.

2006-07-21  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* "Purge All" button.

2006-07-15  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* addressbook.c: Address book XHTML fix.

2006-07-11  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* newmsg.c (newmsg_init): XHTML fixes.

2006-07-09  Mr. Sam  <mrsam@courier-mta.com>

	* images/sqwebmail.css: tweak background colors of quoted text.

2006-07-07  Peter Bieringer <pb@bieringer.de>

	* images/sqwebmail.css: some stylsheet tweaks, and other fixes.

2006-07-07  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* webmail: Move some HTML snippets from code to the template file
	(textarea for mailing lists and signature fields)

2006-07-07  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* webmail: Multiple XHTML fixes.

2006-07-07  Bill Schindler <billsch@epackage.net>

	* courier/module.esmtp/courieresmtpd.c: Put HELO and authenticated
	sender information in ESMTPHELO and SENDERAUTH environment variables.

2006-07-05  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* folder.c: Fix XHTML.

2006-07-05  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* folder.c (disposition_attachment): Explicitly send
	"Content-Disposition: inline; attachment=filename" when displaying
	inline attachments.

2006-07-02  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (folder_contents): Javascript-based visual feedback when
	selecting and deselecting messages.

2006-06-30  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* webmail/mailfilter: Reject duplicate mail filter names

2006-06-30  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* webmail/folder.c (showunknown): Do not show display/download links in
	message preview mode.

2006-06-23  Peter Bieringer <pb@bieringer.de>

	* imap/mainloop.c (sigexit): Try to log bandwidth usage before getting
	killed by a signal.

2006-06-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (doflush): Fix misleading
	error message.

	* webmail/html/en-us/loginform.inc.html: Remove 8-bit Amaya breakage.

2006-06-06  Marcin Semeniuk <m.semeniuk@net.icm.edu.pl>

	* newmsg.c (sendmsg_done): Display a confirmation message after
	sending a message.

	* html/en-us/filter.html: Fix error message typo.

2006-06-06  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* newmsg.c (newmsg_init): Change how the attachments button gets
	shown.

2006-05-30  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* webmail/pref.c (pref_setprefs): Display a confirmation message when
	preferences or password is updated.

2006-05-30  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* sqwebmail.c (init_default_locale): Fix locale initialization

2006-05-29  Sergiy Zhuk <serge@yahoo-inc.com>

	* imapd.c (quotainfo_out): Fix 64-bit issue with quota indication.

2006-05-29  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* folder.c (folder_contents): Show "To" column instead of "From" for
	drafts and sent mail folders.

2006-05-26  Mr. Sam  <mrsam@courier-mta.com>

	* all: Fix many compiler warnings.

0.53.2

2006-05-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comverp.c (verp_encode): Fix bug in encoding of
	usernames that contain '='.

2006-05-16  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail.c (rename_sent_folder): Fix monthly rotation of sent
	folder on multilingual systems.

2006-05-12  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* mailfilter: Implemented "Purge" option.

2006-05-03  Hatuka*nezumi - IKEDA Soji <nezumi@jca.apc.org>

	* webmail: miscellaneous small i18n fixes.

2006-05-02  Pawel Tecza <p.tecza@net.icm.edu.pl>

	* configure.in: --with-minpasslen configure option.

	* webmail: New "any message" webmail filter option.

	* webmail: Improve the "message limit exceeded" error message.

2006-05-02  Lloyd Zusman <ljz@asfast.com>

	* courier/cdfilters.C: Updated version of patch that invokes Courier
	filters in alphabetical order, and uses 050 exit code to accept a
	message without running the remaining filters, which gets converted
	to a 250 ESMTP code.

2006-04-14  Mr. Sam  <mrsam@courier-mta.com>

	* liblock/lockdaemon.c: Fixed some compiler warnings.

	* ldapaddressbook/libldapsearch.c: Ditto.

	* ldapaddressbook/abooksearch.c: Ditto.

	* webadmin/webadmin.c: Ditto.

	* soxwrap/mksocket.c: Ditto.

2006-04-13  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (tls_create): Fix segfault if non-cert files
	were found in the cert dir.

	* courier/cdfilters.C: Add stdlib.h

2006-04-12  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/spf.c (get_domain_pfix): Fix improper parsing of ident/pfix
	tokens.

2006-03-27  Alessandro Vesely <vesely@tana.it>

	* ldapaddressbook: Fix compilation on Solaris with LDAP

2006-03-26  Mr. Sam  <mrsam@courier-mta.com>

	* courier/aliaslookup.C: aliaslookup - new command line tool.

2006-03-25  Lloyd Zusman <ljz@asfast.com>

	* courier/cdfilters.C (add_filter): Invoke filters in alphabetical
	order.

2006-03-25  "Serhij Dubyk / Сергій Дубик" <dubyk@library.lviv.ua>

	* unicode: Added koi8-u character set.

2006-03-17  Mr. Sam  <mrsam@courier-mta.com>

	* html/en-us/loginform.inc.html: Use "include" to eliminate duplicate
	login form code in three separate template files.  New checkbox on the
	login form enables/disables soft timeout.

2006-03-17  Brian Candler <B.Candler@pobox.com>

	* imapd.c (quotainfo_out): Fix quota calculations on 32 bit platforms
	with 64 bit off_t.

2006-03-13  mag@intron.ac

	* webmail/folder.c (showtexthtml): Fix redirection links.

2006-03-12  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/sqwebmail.c (main2): Create an invisible frame at login time
	that reloads at timeoutsoft/2 intervals, thus keeping the session alive

	* webmail/pcp.c (need_refresh): Overriding TIMEOUTSOFT via environment
	variables may cause calendar session to timeout prematurely

	* webmail/html/en-us/Makefile.am (html): Added refreshfr.html

	* cgi/cgi.c (cgi_setup_1): Fix compiler warning

2006-03-06  Mr. Sam  <mrsam@courier-mta.com>

	* ldaplist.c (doldapsearch): Fix a gcc-ism.

0.53.1

2006-03-04  Gordon Messmer <yinyang@eburg.com>

	* soxwrap/sconnect.c (s_connect): Don't assume that connect() of
	a non-blocking socket always fails with EINPROGRESS

2006-03-04  Mr. Sam  <mrsam@courier-mta.com>

	* ldapaddressbook: Other fixes.

2006-02-26  Mr. Sam  <mrsam@courier-mta.com>

	* ldapaddressbook/configure.in: Some OpenLDAP versions don't provide
	a default definition for NULL in ldap.h

0.53.0

2006-02-24  Mr. Sam  <mrsam@courier-mta.com>

	* cgi/cgi.c (cgi_maxarg): Runtime setting of CGIMAXARG using
	SQWEBMAIL_MAXARGSIZE
	(cgi_maxformarg): Runtime setting of CGIMAXFORMDATAARG using
	SQWEBMAIL_MAXATTSIZE

	* webmail/attachments.c (max_attach): Runtime setting of CGIMAXMSGSIZE
	using SQWEBMAIL_MAXMSGSIZE

	* INSTALL.html: Documented these, in INSTALL.

2006-02-23  Alain NAKACHE <alain@alinto.net>

	* imap/imapd.dist.in (IMAP_ACL): New capability to control
	announcements of IMAP ACL support (on by default).

2006-02-07  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirquota.c (statsubdir): Fix quota race condition
	check optimization.

2006-02-06  Mr. Sam  <mrsam@courier-mta.com>

	* ldapaliasd.c (search_attr_retry):  Try to recover when the LDAP
	server closes the persistent socket, for inactivity.

2006-02-05  Mr. Sam  <mrsam@courier-mta.com>

	* ldapaddressbook:  Rewritten a major portion of the LDAP address
	book lookup API.  Replaced a wrapper for openldap's ldapsearch
	binary with a small program that's directly linked against OpenLDAP.
	When OpenLDAP is unavailable, a temporary no-op stub is compiled in
	its place.  The ldapsearch binary is a wrapper around a new API.

	* ldapaddressbook/libldapsearch.c:  The new API:

	The new LDAP address book lookup API is based on a callback-mechanism
	and takes a simple search string.

	(l_search_alloc): Allocate an LDAP search object.
	(l_search_free): Free the LDAP search object.
	(l_search_do): Take a simple search string and use canned LDAP
	search filters (which may be overriden by environment variables) to
	search for LDAP records whose various fields might match the search
	string, and use the "cn" and "mail" attributes to assemble the
	search results, which are returned via a callback function.

	* webmail/html/en-us/ldaplist.html: Simplify LDAP search screen.  Drop
	all the extra confusing LDAP server configuration parameters that
	nobody uses, leave only the server's host, port, and root suffix.

	Replace the confusing search form with a single free-form text field.

	* webmail/ldaplist.c: Corresponding changes to the LDAP address book
	add/search code, using the new ldapaddressbook API.  Removed a lot
	of dead code.  Drawback: extra, informative LDAP addressbook attributes
	are not returned from the LDAP searches, so they cannot be shown.

	* webmail/images/sqwebmail.css: .ldapsearch-misc style no longer used.

	* ldapaddressbook/abookread.c: the dropped LDAP address book params
	are set to empty strings; the format of the address book configuration
	file has not changed.

	* ldapaddressbook/configure.in: "undocumented" backdoor:
	--without-ldapaddressbook disables the LDAP address book wrapper.

	* ldapaddressbook/abooksearch.c (ldapabook_search): Rewrote to use
	the invocation convention for the new ldapsearch wrapper.

2006-01-30  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail.h: Increase max size of the CGI environment.

2006-01-22  Eric Barkie <eric@barkie.net>

	* maildir/maildirquota.c (do_deliver_warning): Un-clobber the Date:
	header.

	* Makefile/configure: upgrade libtool/autoconf/automake toolchain.
	Workaround for broken libtool's mkinstalldirs macro.

	* courier/ldapaliasd.c: Fix gcc 4 warning.

	* courier/filters/libfilter/libfilter.c: Ditto.

	* courier/module.esmtp/esmtpclient.c (hello): Ditto.

	* courier/module.fax/faxconvert.c: Ditto.

	* pcp/pcpd.c: Ditto.

	* pcp/pcpdir.c: Ditto.

	* rfc1035/rfc1035udp.c: Ditto.

	* tcpd/libcouriertls.c: Ditto.

	* tcpd/tcpd.c: Ditto.

	* tcpd/tlspasswordcache.c: Ditto.

	* rfc822/rfc2047.c (encodebase64): Ditto.

	* rfc822/rfc822.c (parseaddr): Ditto.

	* libhmac/hmac.c (dohashkey): Ditto.

	* soxwrap/sconnect.c (s_connect): Ditto.

2006-01-12  Mr. Sam  <mrsam@courier-mta.com>

	* imap/thread.c (dosortmsgs): Skip going through the motions of
	outputing the results of a SORT if # of sorted messages is 0.

2006-01-12 John Morrissey <jwm@horde.net>

	* maildir/maildirquota.c (do_deliver_warning): Fix quota warning
	message delivery.

2006-01-03  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (quotainfo_out): Adjusted casting to work better with
	large quotas.

0.52.2

2005-12-25  mag@intron.ac

	* sqwebmail/html.c (parsetagbuf): Update attribute count, after
	purging invalid html syntax.

2005-12-15  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (trackaddress): Fix error message spelling.

2005-12-12  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comctlfile.h (COMCTLFILE_AUTHNAME): New control file
	record: i - authenticated userid

	* courier/courierd.dist.in (DSNTOAUTHADDR): New setting:
	DSNTOAUTHADDR=1 (default)

	* courier/libs/comdsn2.c (dsn_sender): Bounce to authenticated userid
	if DSNTOAUTHADDR=1

	* courier/module.esmtp/courieresmtpd.c (startsubmit): Ditto.

2005-11-28  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpiov.c: Improve error reporting if write()
	on the socket fails.

2005-11-27  Stefan Hornburg <racke@linuxia.de>

	* courier/doc/makehosteddomains.sgml: Typo.

2005-11-22  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/attachments.c: Suppress phantom attachment shown when
	multipart/alternative formatting is enabled and there are no other
	attachments.

2005-11-20  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (showaddressheader_printsep): A <span> was missing for 2nd
	and subsequent addresses in an address header.

	* gpglib/gpg.c (dosignencode): Sign the entire message in its entirety,
	instead of signing each MIME part separately.  Some E-mail clients
	cannot handle individually-signed multipart/alternative content.

2005-11-21  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smapsnapshot.c (restore_snapshot2): Fix some file descriptor
	leaks.

2005-11-19  Mr. Sam  <mrsam@courier-mta.com>

	* Fix HTML templates (remove 8bit content inserted by Amaya).

	* message composition: Wiki-style composition of HTML messages.

2005-11-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (hello2): If esmtphelo is set
	to "*", use reverse DNS of the local IP address.

2005-11-15  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045rewrite.c: Cleanup.  Remove duplicate quoted-printable
	implementation, use one in rfc822/encode.c

	* gpglib/gpg.c: Ditto.

	* rfc822/encode.c (quoted_printable): encode spaces that precede a
	newline.

2005-09-30  Sergiy Zhuk <serge@yahoo-inc.com>

	* imapd.c (do_imap_command): Have CREATE create courierimapuidllist.

2005-09-30  Mr. Sam  <mrsam@courier-mta.com>

	* imap/pop3: log total bytes sent/received in IMAP and POP3 sessions
	(based on a patch by Peter Bieringer <pb@bieringer.de>.

0.52.1

2005-09-23  Mr. Sam  <mrsam@courier-mta.com>

	* configure.in: Look for pcre/pcre.h if pcre is not installed.
	maildir: skip parts of make check if libpcre is not installed (used
	by other courier packages).

2005-09-22  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirpurgetmp.c (maildir_purge): When autopurging messages
	from a folder based on their timestamp, scan 'new' in addition to
	'cur', otherwise mail delivered to the folder directly never gets
	purged, unless the folder is open.

0.52

2005-09-07  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/Makefile.am (testmaildirfilter_LDADD): Move -lpcre to LDADD,
	from LDFLAGS.

2005-09-05  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/html.c: Filter out <!-- > constructs, they are parsed
	by MSIE.

2005-08-29  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c (maildir_filter_ruleupdate): Use
	PCRE to validate regexp.

2005-08-28  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c (maildir_filter_ruleupdate): Use pcre
	to validate filter strings in maildrop webmail filters.

2005-08-26  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/html.c (parseattr): Remove attributes with imbalanced quotes,
	to prevent cross-side scripting vulnerabilities with some browsers.

2005-08-23  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (showunknown): Show each attachment's MIME content type.

2005-08-20  Mr. Sam  <mrsam@courier-mta.com>

	* waitlib/waitlib.c: probe for sigprocmask(), and use it if available.

2005-08-20  Leandro Santi <lesanti@fiuba7504.com.ar>

	* tcpd/tlspasswordcache.c: Fix OpenSSL-less compilation.

2005-08-16  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (do_msgset): Fix handling of invalid sequence number of 0.

2005-08-13  Mr. Sam  <mrsam@courier-mta.com>

	* rootcerts/certs.sh: Updated list of trusted root certs.

2005-08-11  Mr. Sam  <mrsam@courier-mta.com>

	* search.c (search_oneatatime): Fix NOT operator on content searches.

2005-08-04  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/mailbot.c (check_dsn): Do not autoreply to messages
	with an Auto-Submitted: header, unless it's contents are "no".
	(main): Add Auto-Submitted: auto-replied.

0.51

2005-07-16  Mr. Sam  <mrsam@courier-mta.com>

	* configure.in: Update to automake 1.9, autoconf 2.59, libtool 1.5.6,
	gettext 0.14.1.

	* courier/ldapaliasd.c (loop): sigpause() obsoleted by sigsuspend().

2005-07-15  Mr. Sam  <mrsam@courier-mta.com>

	* imap: Implemented account groups, administrator group.

2005-07-04  Mr. Sam  <mrsam@courier-mta.com>

	* pop3d.dist.in: Add PLAIN to POP3AUTH_ORIG.

2005-07-02  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/spf.c: Soft DNS failures weren't handled properly when
	looking up SPF records.  Potential memory corruption.

2005-07-01  Brian Candler <B.Candler@pobox.com>

	* all: add LOGGEROPTS and SSLLOGGEROPTS configuration settings
	which are passed to courierlogger to set the application name for
	syslog.

2005-06-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: Add --cache-file option to the configure script.

	* courier/doc/links.html: Link to German translation of couriermlm
	templates.

2005-06-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Let's see what
	happens when we try all MXs.

	* rfc1035: Randomize resource records in DNS replies.

2005-06-19  Mr. Sam  <mrsam@courier-mta.com>

	* all: Clean up libtool scripts.

2005-06-11  Mr. Sam  <mrsam@courier-mta.com>

	* COPYING.GPL: New FSF address.

2005-05-18  "Hrvoje Habjanić" <hrvoje.habjanic@zg.t-com.hr>

	* Reorder include files, to compile on SunOS & OSFx.

	* Workaround for bugs on some platforms' select().

	* soxwrap needs a configure check for socklen_t.

0.50

2005-05-09  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/main.C (find_in_authlib): Exit with TEMPFAIL if temporary
	error indication from authlib.

2005-05-08  Mr. Sam  <mrsam@courier-mta.com>

	* courier.sysvinit: Remove init lock file upon stop.

2005-05-06  Mr. Sam  <mrsam@courier-mta.com>

	* sv-make_timezonelist.pl: Added /usr/share/lib/zoneinfo to the
	search list.

2005-05-06  Mr. Sam  <mrsam@courier-mta.com>

	* pcp: update to gettext 0.14

2005-05-02  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/configure.in: Fix typo that disables unicode support when
	partial charsets are specified.

2005-04-23  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/configure.in: Missing AC_SUBST(mailuser) and
	AC_SUBST(mailgroup)

2005-04-16  Zenon Panoussis <oracle@provocation.net>

	* courier/rfcerrheader.txt.in (Comment): Fix grammar.

2005-04-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (cppmain): Don't check bofh settings for messages
	from the dsn module.

2005-04-05  Mr. Sam  <mrsam@courier-mta.com>

	* couriermlm: More tweaks to address handling.  couriermlm uses
	original case of subscribed addresses to distribute list traffic
	from case-insensitive mailing lists.

2005-04-03  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/maildropfilter.sgml: Explicitly document the | character.

2005-04-03  Peter Bieringer <pb@bieringer.de>

	* INSTALL.html: SELinux hint.

2005-04-03  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C: Make error message more descriptive.

	* courier/submit2.C: Ditto.

2005-04-03  Giulio Cervera <giulio@edspa.it>

	* PROXY_HOSTNAME: new setting in imap and pop3 config file overrides
	gethostname() when checking if a proxy connection is required.

2005-04-03  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmsubunsub.C (addrlower): couriermlm defaults to entire
	E-mail address case-insensitive.  New option, CASESENSITIVE=1 falls
	back to earlier behavior of only domain part case-insensitive.

2005-03-27  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/configure.in: Bless gpg 1.2.4, 1.2.6, 1.4.1

0.49

2005-02-26  Mr. Sam  <mrsam@courier-mta.com>

	* imap/msgbodystructure.c (msgbodystructure): Fix MSGBODYSTRUCTURE
	response for a corrupted content-type of "text".

	* courier/doc/courier.sgml: "pass" listed twice under the SPF
	section.

2005-02-20  Mr. Sam  <mrsam@courier-mta.com>

	* sha1: Added SHA256 digest algorithm.

2005-02-19  Mr. Sam  <mrsam@courier-mta.com>

	* courierauthdebug.h: Macro dprintf conflicts with new glibc.

2005-02-16  Mr. Sam  <mrsam@courier-mta.com>

	* Various: Replace "env -" with "env -i" -- portability.

	* configure.in: Fix inclusion of ./configtmp

2005-02-15  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-47webmail.pl: Update webmail configuration
	to use global account options in authlib.

2005-02-15  Martin Orr <courier@martinorr.name>

	* submit.C: mail was always filtered, even if its source was not
	listed in the enablefiltering configuration file.  Change that:
	filter the mail only if its source is listed in enablefiltering.

2005-02-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/install.html: Document webmail account options.

2005-02-12  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C (MessageEnd): Include message size in 523 error.

	* maildir/maildirquota.c (docheckquota): Memory used after being freed.

2005-02-08  Mr. Sam  <mrsam@courier-mta.com>

	* imap/Makefile.am: Fix README.proxy getting clobbered by make clean.

2005-02-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.uucp/uucp.c (uux3): Do not trigger backscatter
	suppression on uucp gateway-related failures.

	* courier/module.fax/courierfax.c (faxconvert_cleanup): Ditto for
	courierfax.

2005-02-03  Norihisa Washitake <nori@washitake.com>

	* various: Replace couple of references to ":" with MDIRSEP, for
	consistency's sake.

2005-02-03  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c (main): Delivered-To: loop detected
	results in an EX_SOFTWARE exit code.

	* courier/module.local/deliver.c (docommand): If a program forked from
	a .courier file exits with EX_SOFTWARE, change it to EX_NOPERM.  Bottom
	line: courierdeliver terminates with EX_SOFTWARE only if a
	Delivered-To: loop was detected.

	* courier/module.local/localmail.c (wait_delivery): Fix a memory
	leak.  If courierdeliver terminates with EX_SOFTWARE, record this is
	as a COMCTLFILE_DELFAILED_NOTRACK.

	* courier/libs/comctlfile.c (ctlfile_append_reply): Convert a
	COMCTLFILE_DELFAILED_NOTRACK as COMCTLFILE_DELFAILED, but do not
	put this address on the backscatter blacklist.

2005-01-30  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/deliver.C (delivery): Overquota condition is now a
	temporary delivery failure, in accordance with the new backscatter
	suppression logic.

	* courier/module.local/deliver.c (delivery_error): Ditto.

	* maildir/deliverquota.c (deliver): Ditto.

2005-01-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comctlfile.c (ctlfile_append_reply): When recording
	the results of a delivery attempt, update $localstatedir/track/nnnn
	if the message is marked for tracking, and other conditions are met.

	* courier/submit2.C (closectl): New control file record,
	COMCTLFILE_MSGTRACK, added when message's source is found in
	BOFHSUPPRESSBACKSCATTER environment variable;

	* courier/libs/comtrack.c: New module - keep track of unsuccessful
	deliveries and reject all mail for addresses that had a recently
	failed delivery attempt.  A successfull delivery attempt clears the
	address lock.  Only messages from BOFHSUPPRESSBACKSCATTER
	sources have their recipient addresses tracked this way.  A delivery
	attempt for qualified source have the receipient address, and the
	delivery attempt's status, appended to $localstatedir/track/nnnn,
	where nnnn is a counter that gets incremented every hour.  A part
	of regular Courier restart logic clears old track files.

	* courier/libs/comctlfile.c (ctlfile_append_reply): When recording
	the results of a delivery attempt, update $localstatedir/track/nnnn
	if the message is marked for tracking, and other conditions are met.

	* courier/submit.C (trackaddress): If suppressing backscatter,
	check if the receipient address has recently had a deferral or a
	failure, if so soft-reject the address.

	* courier/courier.c: New command: "courier clear address" manually
	marks "address" as succesfully delivered, to clear mail acceptance
	for the address.

2005-01-29  Gordon Messmer <yinyang@eburg.com>

	* courier/submit2.C: Open control files in append mode (helpful
	for filters).

2005-01-27  Andres Salomon <dilinger@voxel.net>

	* maildrop/main.C (tempfail): More descriptive error messages when
	permissions check fails.

2005-01-27  Andres Salomon <dilinger@voxel.net>

	* rfc2045/reformime.sgml: Fix typo.

2005-01-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/courier.h.in: Created LOCALSTATEDIR/track

2005-01-21  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comctlfile.h: New record - COMCTLFILE_MSGSOURCE in
	the control file.

	* courier/submit.C: New -src option specifies the contents of
	COMCTLFILE_MSGSOURCE record, defaults to the sending module's name.

	* courier/module.esmtp/courieresmtpd.c (startsubmit): Specify -src=smtp
	to submit for unauthenticated smtp connections, -src=authsmtp for
	authenticated smtp connections.

	* courier/module.dsn/dsn.c (main): Specify -src=X/dsn to submit,
	where 'X' is the contents of COMCTLFILE_MSGSOURCE in the message that
	generated a DSN.

	* courier/courierd.dist.in (ESMTP_BLOCKBACKSCATTER): New config file
	setting.

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Do not send the
	message if its COMCTLFILE_MSGSOURCE matches the comma-separated list
	of sources specified by the ESMTP_BLOCKBACKSCATTER setting.  Instead,
	pretend that the message has been succesfully delivered, to wherever
	it was going.

2005-01-19  Mark Bucciarelli <mark@easymailings.com>

	* courier/doc/couriermlm.sgml: Spelling fixes.

2005-01-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getsender): opt BOFHCHECKHELO=2 makes HELO
	rejections soft.

0.48.2

2005-01-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/lcclog3.c: Fix path to courierlogger.

2005-01-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmsubunsubmsg.C: Fix moderated sub/unsub confirmation
	handling.

0.48.1

2005-01-04  Andreas Erhart <andi@zollhaus.net>

	* imaplogin.c (login_callback): Fix imap proxy code.

0.48.0

2004-12-04  Brian Candler <B.Candler@pobox.com>

	* imap: fix disconnection syslog messages.

2004-11-29  Brian Candler <B.Candler@pobox.com>

	* imap/pop3dserver.c (main): Fix error message when chdir fails.

2004-11-25  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c (showtexthtml): Transcode charsets for text/html.

2004-11-24  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.dist.in: Add IMAP_UMASK, which resets umask in the imapd
	startup script.  Derived from Ted Zlatanov <tzz@lifelogs.com>'s patch.

2004-11-20  Brian Candler <B.Candler@pobox.com>

	* Additional debugging cleanup.

	* sqwebmail: log login failures.

2004-11-09   Brian Candler <B.Candler@pobox.com>

	* sharedindexsplit: Various fixes, imported from courier-authlib.

2004-11-12  Mr. Sam  <mrsam@courier-mta.com>

	* maildir: maildir_newshared_disabled turns off new-style shared
	folders. maildir_acl_disabled disables ACL support.

	Account option "disableshared=1" disables virtual shared folders
	and ACLs.

2004-11-09  Brian Candler <B.Candler@pobox.com>

	* sqwebmail: Replace 'nodsn' control file with 'wbnodsn' account
	option.  Replace 'nochangepass' control file with 'wbnochangepass'
	account option.  Replace 'nochangingfrom' control file with
	'wbnochangingfrom' account option.

2004-11-09   Brian Candler <B.Candler@pobox.com>

	* imap/pop3: minor cleanup.

2004-11-05  Mr. Sam  <mrsam@courier-mta.com>

	* imap/pop3dserver.c (main): Authenticated address is in AUTHENTICATED,
	not AUTHADDR, now.

2004-11-03  Mr. Sam  <mrsam@courier-mta.com>

	* Makefile.am (SUBDIRS): Ok, only build in bdbobj/gdbmobj according
	to what autoconf finds.

2004-10-30  Mr. Sam  <mrsam@courier-mta.com>

	* imaplogin.c (login_imap): Implemented IMAP proxying.

	* pop3login.c (login_pop3): Implemented POP3 proxying.

2004-11-03  Brian Candler <B.Candler@pobox.com>

	* webmail/ispell.c: More debugging messages.

2004-10-25  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c (maildir_filter_ruleupdate): Fix validation
	of regexp ranges.

2004-10-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: Fix ownership of sqwebmaild.

2004-10-24  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c (showaddressheader_printsep): Supply a missing
	</span>	tag.

2004-10-24  Laurent Wacrenier <lwa@teaser.fr>

	* webmail/newmsg_create.c (header_wrap): Fold long headers only on
	space boundaries.

2004-10-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/pop3d.in (libexecdir): Fix stderrlogger parameter.

2004-10-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cddrvinfo.C (init): Additional debugging messages.

	* courier.spec.in: Dropped courier-smtpauth subpackage, because
	authstart and authend wrapper have been removed.
	The ldap, mysql, and postgresql subpackages now only have webadmin
	support, so its not necessary to conditionally build them.

	* courier/module.esmtp/courieresmtpd.c: No more authstart/authend.

2004-10-23  Julian Mehnle <julian@mehnle.net>

	* courier/filters/courierfilter.sgml: Fixes.

2004-10-21  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpd.dist.in: Removed AUTHMODULES setting.

	* courier/module.esmtp/esmtpd-ssl.in: Ditto.

	* courier/module.esmtp/esmtpd.in: Ditto.

	* courier/module.esmtp/Makefile.am: Replaced authstart and authend
	wrappers with direct calls to the Courier authentication libraries.

0.47.0

2004-09-14  Andrey Ulanov <drey@rt.mipt.ru>

	* courier/cmlmfetch.C (checksub): Fix POSTARCHIVE=subscribers.

2004-09-06  Mr. Sam  <mrsam@courier-mta.com>

	* imaptoken.c (bye_msg): IMAP disconnect message includes session
	length and STLS mode, for logging purposes.

	* pop3dserver.c (acctout): POP3 disconnect message includes session
	length, and STLS mode, for logging purposes.

2004-09-02  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: rfc2045/rfc2045reply.c (mkforward): Keep [BLOB]s in the
	subject.
	(mkreply): Ditto.

2004-09-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getrcpts): Rename existing Received-SPF: headers
	as Old-Received-SPF:, instead of reordering them.

2004-09-01  Marc Horowitz <marc@mit.edu>

	* imap/search.c (fill_search_veryquick): Negative SEARCH UID does not
	get short-circuited.

2004-08-29  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/maildir.c (subjectcmp): Remove extra param from
	rfc2047_decode_simple.

2004-08-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-30xspf.pl: New webadmin SPF configuration
	screen.

2004-08-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (get_spf_errmsg): Add "softfail" to
	BOFHSPFHARDERROR.

	* courier/makealiases: makealiases script skips subdirs (CVS...)

2004-08-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/install.html: Pointer to SPF documentation.

	* rfc1035/spf.c (spf_compute): Tweaks to SPF message format.

	* courier/webadmin/admin-30esmtp.html (alink): Update default list
	of DNSbls.

	* courier/submit.C (getrcpts): Implement SPF checking on the From:
	header.

2004-08-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (check_spf_result): Added BOFHSPFNOVERBOSE=1
	flag.

	* rfc1035/spf.c (rfc1035_spf_lookup): Adjust default SPF error message
	verbiage.

	* courier/webadmin/admin-47webmail.pl: Fix pcp restart.

2004-08-15  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/spf.c (rfc1035_spf_lookup): draft-mengwong-spf-01.txt
	implementation.

2004-08-12  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (do_imap_command): [READ-WRITE] and [READ-ONLY] reflect
	ACL rights.

2004-08-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comsubmitclient.c (submit_set_teergrube): Install
	callback function on an error message from submit, called before
	the error message is printed (implementing tarpit wait before
	returning the error message).

2004-08-06  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: Fix usage of mysql_config

2004-08-05  Mr. Sam  <mrsam@courier-mta.com>

	* imap/testsuite (IMAP_SHAREDINDEXFILE): Fix a bash-ism.

0.46.0

2004-07-26  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/Makefile.am: Moved some man pages to more appropriate
	man sections.

2004-07-23  Mr. Sam  <mrsam@courier-mta.com>

	* soxwrap: use the Courier Socks library.

2004-07-22  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/export.c (libmail_gpg_exportkey): Fix off-by 1 in GPG key
	export.

2004-07-21  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authmysqllib.c (auth_mysql_getuserinfo): Fix options field.

2004-07-18  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c (get_textlink): Fix HTTP redirect in the anomalous
	case where SCRIPT_NAME is empty.

	* imap/imapscanclient.c (fnamcmp): Ignore :s when comparing filenames
	during maildir scan (fixes anomalous cases with nonstandard filenames).

2004-07-12  Mr. Sam  <mrsam@courier-mta.com>

	* imap/outbox.c (is_outbox): Make OUTBOX work again.

2004-06-27  Mr. Sam  <mrsam@courier-mta.com>

	* all: Update GNU toolchain.

	* rfc1035/rfc1035qptr.c (ptr): IPv6 reverse DNS lookups switch to
	ip6.arpa.

2004-06-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/Makefile.am (nohtmlin): Add link to
	http://www.courier-mta.jp

2004-06-18  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldaplib.c: Conditionally define LDAP_OPT_SUCCESS if
	not defined by <ldap.h>.

2004-06-18  Laurent Wacrenier <lwa@teaser.fr>

	* maildir/maildirquota.c (docount): Fix quota parsing bug on 64bit
	off_t systems.

2004-06-13  John Morrissey <jwm@horde.net>

	* imap: Add MAILDIRPATH setting to imapd-ssl and pop3d-ssl
	configuration files.

2004-06-13  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c (dump_hdrs): Added FETCH RAWHEADERS command.

2004-06-12  Mr. Sam  <mrsam@courier-mta.com>

	* liblog/logger.c (startchild): Close stderr after initializing
	the monitored process.  Fixed hanging file descriptor to the terminal.

0.45.6

2004-06-11  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (print_header_uc): Escape header name.

2004-06-06  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (do_checkfreemail): Temporary DNS lookup failures
	will not fault freemail.

	* rfc2045/rfc2045.h: Clean up and re-factor out MIME header parsing
	into a new function: rfc2045_parse_mime_header.

2004-05-24  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: Add #include <sys/types.h> in probe for
	-lresolv.

2004-05-21  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/maildir.c: Purging the Trash folder didn't
	update the quota correctly when compiled with --with-trashquota.

2004-05-19  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirquota.c (do_deliver_warning): Make quota warning
	message work correctly with NFS.
	(do_maildir_openquotafile): Make quota calculations 64bit-safe (based
	on patch from Michael Kefeder <ml@weird-birds.org>).

2004-05-18  Mr. Sam  <mrsam@courier-mta.com>

	* acl.c (maildir_shared_index_file): Complain if shared index file
	does not exist.

	* mailboxlist.c (maildir_shared_index_file): Complain if shared
	index file does not exist.

	* courier/submit.C (getrcpts): Rename original Return-Path: header as
	Old-Return-Path. instead of >Return-Path.

2004-05-17  Hatuka*nezumi - IKEDA Soji <nezumi@jca.apc.org>

	* all: Improve MIME encoding of message headers for East Asian
	character sets.

2004-05-17  Mr. Sam  <mrsam@courier-mta.com>

	* imap/capability.c (imapcapability): Announce XMAGICTRASH capability

	* imapd.c (do_imap_command): Fix #shared in NAMESPACE reply

0.45.5

2004-05-10  Mr. Sam  <mrsam@courier-mta.com>

	* esmtpd.dist.in (TCPDOPTS): Bump version of AUTHMODULES, so that
	upgrade correctly initializes it, where it was empty before.  Get
	rid of AUTHMODULES_WEBADMIN.

	* esmtpd-ssl.in (AUTHMODULES): AUTHMODULES environment variable must
	now list the authentication modules even if authenticated SMTP is
	disabled.  Turn off only ESMTPAUTH.

	* esmtpd.in: Ditto.

	* courier/webadmin/admin-30esmtp.pl: Webadmin will not set
	AUTHMODULES anymore, only ESMTPAUTH.

2004-05-09  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authpgsqllib.c: fixed dash-extensions

2004-05-09  Jeff Potter <jpotter-courier@codepuppy.com>

	* authlib/authmysqllib.c: fixed dash-extensions

2004-05-09  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/courier.sgml: Removed description of 'authmodulelist'
	configuration file from the courier(8) man page.

	* makedat/makedat.in: Skip subdirectories named "CVS".  Allows all
	directory-based lists (makesmtpaccess, etc...) to be managed via CVS.

	* courier/sendmail.c (main): Clear AUTHMODULES environment variable,
	preventing it from being set via the command line.  As always,
	mail from local is not recipient-verified, so that the authentication
	verification will be completely bypassed in the local module.

	* courier/module.local/local.c (rw_del_local): Read authentication
	module list from the AUTHMODULES environment variable.

	* courier/module.esmtp/authstart.c: Read authentication module list
	from the AUTHMODULES environment variable.  Mandate that authstart
	must be invoked by the mail user.

	* authlib/configure.in: Back out the patch to disable creation of
	authdaemon.msg - needed by the Courier-IMAP build.

	* pcp/pcpdauth.c: Make pcp use AUTHMODULES environment variable instead
	of the deprecated authmodules file.

2004-05-09  Brian Candler <B.Candler@pobox.com>

	* sqwebmail: Update startup banner msg to reflect new startup command.

2004-05-08  Mr. Sam  <mrsam@courier-mta.com>

	* Makefile.am: Do not install authmodulelist.

	* webmail/html: update copyright date.

2004-05-08  Brian Candler <B.Candler@pobox.com>

	* pop3dserver.c (do_retr): If error occured during RETR drop the
	connection (only sane thing to do).

2004-05-02  Brian Candler <B.Candler@pobox.com>

	* authlib: additional debugging.

	* maildir/maildirquota.c: additional debugging.

2004-05-07  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/rfc1035qa.c (we_have_that_ipv4): Fix pointer comparison.

	* rfc1035/rfc1035dumprrdata.c (rfc1035_dumprrdata): Fix pointer
	comparison.

	* maildir/maildirkw.c (doit_locked): Fix pointer comparison.

	* maildir/maildirfilter.h: Compilation fix.

2004-05-03  Mr. Sam  <mrsam@courier-mta.com>

	* webmaild.in: Fix PCP start script.

2004-05-01  Brian Candler <B.Candler@pobox.com>

	* sqwebmail: convert startup scripts to use new courierlogger wrapper.

	* sqwebmail: replace all syslog calls to stderr, now captured by
	courierlogger.

2004-04-24  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/recipenode.C (Evaluate): Do not trap the exit statement
	within an exception {} block. exit will now really exit.

2004-04-24  Brian Candler <B.Candler@pobox.com>

	* authlib/authdaemond.c (authnext): Do not report unknown
	authentication modules -- unwanted noise.

2004-04-24  Lloyd Zusman <ljz@asfast.com>

	* courier/courier.c (main): --version option to the courier command.

	* courier/module.esmtp/courieresmtpd.c: new config option
	ESMTP_LOG_DIALOG

2004-04-24  Mr. Sam  <mrsam@courier-mta.com>

	* liblog/courierlogger.sgml: courierlogger man page.

2004-04-23  Brian Candler <B.Candler@pobox.com>

	* liblog/courierlogger: New courierlogger.

	* pop3dserver.c (scancur): Report an error if authentication module
	started pop3d in a wrong directory.

	* Makefile.am: Do not overwrite existing PAM configuration files.

2004-04-20  Brian Candler <B.Candler@pobox.com>

	* authlib/authmysqllib.c (auth_mysql_getuserinfo): More SQL fixes.

	* maildir/maildirgetnew.c (do_maildir_getnew): Fix infinite loop if
	rename() syscall fails.

2004-04-19  Brian Candler <B.Candler@pobox.com>

	* authlib/authtest.c: Additional logging messages.

	* Documentation fixes.

2004-04-18  Mr. Sam  <mrsam@courier-mta.com>

	* liblog: new directory for courierlogger, moved out of tcpd.

2004-04-11  Brian Candler <B.Candler@pobox.com>

	* all: additional logging messages.  Set log level via --with-syslog

2004-04-11  Alessandro Vesely <vesely@tana.it>

	* courier/filters/courierfilter.c: Various fixes.

2004-04-11  Lloyd Zusman <ljz@asfast.com>

	* courier/submit.C (getrcpts): Add the internal queue ID to the
	Received: header.

2004-04-11  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/rfc2047.c (a_rfc2047_encode_str): Improve compliance with
	RFC 2047 for MIME-encoded recipient lists.
	(rfc2047_encode_callback): New argument: qp_allow - function that
	indicates acceptable characters in QP-encoded words.
	(rfc2047_encode_str): Ditto.
	(rfc2047_qp_allow_any, rfc2047_qp_allow_comment)
	(rfc2047_qp_allow_word): Possible arguments to qp_allow for various
	situations.

	* webmail/maildir.c (subjectcmp): Decode message subject to UTF-8
	before sorting folder by subject.

	* imap/thread.c (thread_ref_callback): MIME-decode the subject header
	to UTF-8 before running the THREAD REFERENCES algorithm.

2004-04-09  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045cdecode.c (do_decode_base64): Long overdue - use
	a precomputed base64 decoding table.

	* rfc822/encode.c: Moved rfc2045/rfc2045encode.c here, renamed all
	functions to use the libmail_ prefix.

0.45.4

2004-04-05  Willi Mann <newsletters@wm1.at>

	* newmsg.c (dosendmsg): Fix corrupted return address.

2004-03-29  Dmitry Sukhodoev <raven@bingo.ru>

	* newmsg_create.c (lookup_addressbook): Fix double-RFC2047 encoding
	when sending a message.

2004-04-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/Makefile.am: use _SCRIPTS target for sharedindexsplit
	and sharedindexinstall (some install programs are finicky).

0.45.3

2004-03-31  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (do_expunge): Fix expunge from Trash when
	IMAP_MOVE_EXPUNGE_TO_TRASH is set.

2004-03-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/dotforward.c (readforward): Make dotforward understand
	"" on .forward lines with multiple addresses.

2004-03-26  Mr. Sam  <mrsam@courier-mta.com>

	* courier/configure.in: Make the better ulimit probe even better.

2004-03-25  Brian Candler <B.Candler@pobox.com>

	* imap/imapd.dist.in: Clarify AUTHMODULES setting.

	* imap/pop3d.dist.in: Clarify AUTHMODULES setting.

2004-03-25  Ondrej Jombik <nepto@pobox.sk>

	* imap/fetch.c (fetchitem): Fix sigsegv caused by null ptr deref on
	open error.

2004-03-25  Lloyd Zusman <ljz@asfast.com>

	* courier/configure.in: Use a better probe for the right ulimit option.

2004-03-21  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (getacl_cb): Fix negative rights for ACL1.
	(acl2_identifier): Ditto.

2004-03-17  Mr. Sam  <mrsam@courier-mta.com>

	* testsuite (OPTIONS): Fix a bash-ism.

	* smaptestsuite (IMAP_SHAREDINDEXFILE): Ditto.

0.45.2

2004-03-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-30esmtp.html: monkeys.com BL is defunct.
	Replace with spamhaus.org.

2004-03-13  Flavio Stanchina <flavio@stanchina.net>

	* rfc2045/reformime.c (extract_pipe): Program invoked by reformime -X
	must exit with zero exit status.  A non-zero exit status terminates
	reformime.  reformime's exist status will be 20+child process's exit
	status.

2004-03-13  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (acl_read_folder): Add the 'x' right for filesystem-based
	shared folders, even though it's not true; but it's needed for ACL1
	compatibility.

2004-03-11  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: netinet/in.h needs sys/types.h on xBSD.

	* courier/configure.in: Ditto.

2004-03-10  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirkeywords.h: Sun C++ compiler fix.

0.45.1

2004-03-09  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirrename.c (scan_aclhier2_rename): Check dirp is not
	NULL before closing it.
	* maildir/maildirrename.c (scan_maildir_rename): Ditto.

	* maildir/maildirmake2.c (maildir_del): xBSD portability fix.

2004-03-09  Aleksander Adamowski <aleksander.adamowski.courier@altkom.pl>

	* courier/ldapaliasd.c (search_virtual): Remove hardcoded source
	field.

0.45

2004-03-02  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: BSD needs netinet/in.h before resolv.h

	* courier/configure.in: BSD needs netinet/in.h before resolv.h

2004-02-29  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/maildir.c (maildir_markread): Check for SEEN permission.
	(maildir_markreplied): Check for WRITE permission.
	(do_msgmove): If appropriate, check for SEEN, WRITE, and DELETEMSGS
	permission on the destination folder, and turn off the respective
	flags on the message being copied into that folder.
	(foldercountfilename): Move message count cache files from each folder
	into the sqwebmail-curcache directory, to avoid race conditions from
	concurrent access.
	(maildir_checknew): Check for EXPUNGE permission before expunging
	messages.
	(dodirscan): Read message count cache file from the sqwebmail-curcache
	directory.

	* webmail/folder.c (folder_delmsgs): Check for DELETE permission.
	Also check for INSERT permission on destination folder if moving the
	messages.
	(savepath): Cache public folder accounts we've seen, for message
	move dropdown list (so that messages can be moved between public
	accounts).  Up to two most recent public folder accounts are cached.
	(show_transfer_dest_real): Include cached public folder accounts in
	the dropdown list.
	(do_folderlist): Various fixes.

2004-02-22  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/maildir.c (maildir_delete): After deleting a folder, delete
	its ACLs.

	* webmail/folder.c (checkrename): Check ACLs for folder rename.
	(checkcreate): Check ACLs for folder create.
	(folder_list): Check ACLs for folder delete.

	* webmail/acl.c (acl_computeRightsOnFolder): Plug leak.

	* webmail/folder.c (folder_contents): Check for ACL_READ permission
	when opening a folder.
	(show_transfer_dest): Only show folders with ACL_INSERT permissions
	in the drop-down for the destination folder of message move.
	(folder_list): Fix memory stomp.
	(folder_rename_dest_real): Only show hierarchies with ACL_CREATE
	permissions in the drop-down for destination folder of folder rename.

2004-02-19  Mr. Sam  <mrsam@commodore.email-scan.com>

	* sqwebmail.c (start_daemon): Close stdin/stdout/stderr after
	starting authdaemond.

2004-02-18  Mr. Sam  <mrsam@courier-mta.com>

	* courier/ldapaliasd.c (search_maildrop): Replaced hardcoded "source"
	with the proper variable.

	* Various fixes for the X86-64 platform.

2004-02-17  IKEDA Soji <nezumi@jca.apc.org>

	* webmail/auth.c: new config file authcharset specifies character set
	for account names, from the authentication record.

2004-02-16  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: Initial partial virtual shared folder implementation. New
	screen to modify folder ACLs.  Partial ACL implementation: implement
	the "visible (lookup)" and "administer" ACLs.  Other ACLs are ignored
	for now.  Some minor things are known to be broken when used on
	virtually-shared folders.

2004-02-15  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildiraclt.c (maildir_acl_canlistrights): New function
	moved from imap code, to be shared by sqwebmail.

2004-02-13  IKEDA Soji <nezumi@jca.apc.org>

	* ldaplist.c (getfiltern): Convert query to utf8. New query
	operators "ends with" (*=) and "contains" (*=*).

2004-02-11  Mr. Sam  <mrsam@courier-mta.com>

	* smap.c (do_listcmd): Fix SMAP ACL.

	* unicode/big5.c (c2u_doconv): C portability fix.
	gb2312: ditto.

2004-02-09  IKEDA Soji <nezumi@jca.apc.org>

	* Big5, euc-jp, gb2312, ksx1001, shiftjis: let these functions handle
	their own conversion errors.

2004-02-07  IKEDA Soji <nezumi@jca.apc.org>

	* Big5:  Add non-hanzi maps.  Add ETen extension.  Add Big5-HKSCS
	charset.

	* Gb2312: Add non-hanzi maps.

	* Let iso2022-jp functions handle their own conversion errors.

2004-02-07  Jan Zimmerschied <jan@z4fun.de>

	* RPM spec file for SUSE.

2004-02-02  IKEDA Soji <nezumi@jca.apc.org>

	* iso2022jp.h: Maps for CJK Compatibility Ideographs has been added.

	* ksx1001.c: New character sets: ISO-2022-KR, EUC-KR, CP949,
	ISO-2022-JP-1.

2004-02-01  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail.c (rename_sent_folder): Fix internal error boner.

	* unicode/iso88597.c: Updated from unicode.org.

	* unicode/unicode_ultcasetab.c: Updated from unicode.org

2004-02-01  IKEDA Soji <nezumi@jca.apc.org>

	* iso2022jp.pl / iso2022jp.h: JIS X 0208 mapping has been updated
	based on latest regional standard (JIS X 0208:1997) and some vendor
	standards. Errorneous (lacking or false) mappings has been fixed.
	Support for older JIS X 0208 (JIS C 6226:1978) mapping was added.
	JIS X 0212:1990 mapping was added.

	* iso2022jp.c: Converters became (upper-)compatible with ISO-2022-JP
	(RFC1468 / JIS X 0208:1997 Annex 2) and ISO-2022-JP-1 (RFC2237).
	Buffer overflow vulnerability (when Unicode character is out
	of BMP range) has been closed. Convert error handling was implemented.

	* shiftjis.c: Broken SHIFT_JIS converters has been fixed and became
	(upper-)compatible with Shifted Encoding Method (JIS X 0208:1997
	Annex 1). Buffer overflow vulnerability (when Unicode character is out
	of BMP range) has been closed. Convert error handling was implemented.

	* eucjp.c: New converters for EUC-JP.

2004-01-31  Mr. Sam  <mrsam@courier-mta.com>

	* maildir.c (xlate_mdir): Temporary diagnostics if
	maildir_info_imap_find() fails; looking for the real fix.

2004-01-31  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (rcpttolocal): Rewrite
	RCPT TO:<user@[TCPLOCALIP]> as RCPT TO:<user@defaultdomain>

	* courier/doc/courier.sgml: Supplement defaultdomain documentation.

	* courier/module.uucp/configure.in (SYSCONFDIR): Set same as sysconfdir
	for Docbook.

2004-01-31   Jon Nelson <jnelson-courier@jamponi.net>

	* courier/filters/filterctl.in (pidfile): Use value of --with-piddir
	option, instead of assuming the default location.

	* courier/module.esmtp/esmtpd-ssl.dist.in (SSLPIDFILE): Ditto.

	* courier/module.esmtp/esmtpd-msa.dist.in (PIDFILE): Ditto.

2004-01-25  Mr. Sam  <mrsam@courier-mta.com>

	* sqconfig.c (write_sqconfig): Update config file by writing to temp
	file, then renaming.  Makes sure that sqwebmail_curcnt files will be
	safe for concurrent updates in the future.

2004-01-24  Mr. Sam  <mrsam@courier-mta.com>

	* Massive overhaul of the folder naming scheme to match Courier-IMAP's,
	in preparation for support of virtual shared folders.

2004-01-24  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirinfo.c: replace getenv("AUTHENTICATED") with an
	extra parameter.

2004-01-23  Malcolm Rowe <malcolm-courier@farside.org.uk>

	* html/en-us/smileys.txt: Add HTML tags to smileys.

2004-01-23  Alessandro Vesely <vesely@tana.it>

	* tcpd/tcpd.c (parseaddr): One-liner.

2004-01-23  Jan Zimmerschied <jan@z4fun.de>

	* Add MAILDIRPATH to config files, that defines the default Maildir
	location in the startup script.  Fix autoconf paths in the config
	files.

2004-01-23  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authmysqllib.c (auth_mysql_getuserinfo): It's really
	named MYSQL_AUXOPTION_FIELD.

2004-01-18  Mr. Sam  <mrsam@courier-mta.com>

	* Implement account options: disableimap, disablepop3, sharedgroup.

	* Courier-IMAP: Move courierlogger from libexecdir to sbindir

	* authdaemond: replace stderr diagnostics to syslog().  authdaemond's
	stderr doesn't go anywhere.

2004-01-14  Courier User <courier@asfast.net>

	* maildrop: VAR="" does not remove the variable.  New unset command
	does that.

2004-01-14  Troy Benjegerdes <hozer@hozed.org>

	* maildrop/maildir.C: AFS patch - rename if link fails due to EXDEV

2004-01-13  Mr. Sam  <mrsam@courier-mta.com>

	* Rebuild all docbook SGML stuff.

	* Fix SMAP testsuite.

2004-01-13  Michael Bowe <mbowe@pipeline.com.au>

	* authvchkpw update.

2004-01-12  Mr. Sam  <mrsam@courier-mta.com>

	* mailboxlist.c (list_newshared_shortcut): Fix list #shared.%.%, for
	Mozilla.

	* imapd.c (do_imap_command): ACL fixes.  Quota fixes.

2004-01-11  Mr. Sam  <mrsam@courier-mta.com>

	* smap.c: Fix SMAP ACL implementation.

	* imapd.c (aclstore): Fix gcc-ism.

2004-01-10  Michael Bowe <mbowe@pipeline.com.au>

	* authvchkpw update.

2004-01-10  Mr. Sam  <mrsam@courier-mta.com>

	* imap: Implement virtual shared folders + ACL.

2004-01-08  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cdmsgq.C (queuescan3): Remove orphaned queue file name.

2003-12-27  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirmake2.c (maildir_make): Fix memory leak.

	* maildir/maildirkeywords2.c (doReadKeywords2): Fix memory leak
	when keywords are not enabled.

2003-12-25  Mr. Sam  <mrsam@courier-mta.com>

	* unicode/unicode.h: Formal unicode structure for IMAP's modified-UTF7
	coding.

2003-12-23  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/configure.in: Fix --with-ipv6 option parsing.

2003-12-20  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (do_imap_command): Drop kludge for Sun's StarOffice.

2003-12-13  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c: Remove legacy SHARED support from SMAP1.

2003-12-12  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapscanclient.c (do_imapscan_maildir2): autocreate
	courierimapkeywords directory if a folder doesn't have it.

2003-12-07  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (set_namespace_options):  Drop #allfolders hack.
	Conflicts with new ACL code.
	* README.html (href): Remove #allfolders description.

2003-12-03  Mr. Sam  <mrsam@courier-mta.com>

	* imap/fetchinfo.c (alloc_headerlist): Allow header names to be
	quoted (+more).

2003-11-30  Mr. Sam  <mrsam@courier-mta.com>

	* imap/mailboxlist.c (mailbox_scan): Replaced mailbox_list() with a
	callback-based mailbox_scan(), fixing empty reference name case
	along the way.  The mailboxes are listed in the callback function.

2003-11-29  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirdelfolder.c: maildir_mddelete superceded by
	maildir_del().


2003-11-28  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirshared2.c (maildir_shareddir): Move maildir_shareddir
	from maildirshared.c, so that a reference to this function does not
	pull in the entire db dependency tree.

0.44.3

2003-12-19  Mr. Sam  <mrsam@courier-mta.com>

	* unicode: Fix toupper_func/tolower_func/totitle_func for shiftjis,
	big5, utf8, utf7, iso2022jp: function may return a NULL even when
	requested to ignore conversion errors.

2003-12-17  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authmysqllib.c (get_variable): Fix warning.

2003-12-16  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/rfc1035.h (RFC1035_ADDRANY): Fix definition for non-IPv6
	systems.

2003-12-15  Gordon Messmer <yinyang@eburg.com>

	* ReiserFS fix.

2003-12-15  Johannes Erdfelt <johannes@erdfelt.com>

	* courier/module.esmtp/esmtpclient.c (get_sourceaddr): Option to
	bind outgoing ESMTP socket to a specific IP address.

2003-12-15  Mr. Sam  <mrsam@courier-mta.com>

	* configure.in: Fix disable-root-check.

2003-12-14  James A Baker <jabaker@mac.com>

	* folder.c: Optimize HTML on the folder index screen.

2003-12-09  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirrename.c (validrename): Rename foo to foo.bar is not
	kosher.  Compile list of directories to rename first, sort, then
	rename.

2003-11-23  Jeff Potter  <jpotter-courier@codepuppy.com>

	* courier/libs/islocal.c: Added .domain.com checks so that hosteddomain
	entries can support wildcard DNS.
	* courier/doc/makehosteddomains.{8,html}.in: Added info on how to use
	wildcard DNS with hosteddomains.

0.44.2

2003-11-28  Mr. Sam  <mrsam@courier-mta.com>

	* courier/pop3d-ssl.in (sysconfdir): Fix typo.

0.44.1

2003-11-27  Mr. Sam  <mrsam@courier-mta.com>

	* Simple check in startup scripts that make install-configure has been
	run.

2003-11-25  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail.h (VALIDCGIVAR): Forward all SQWEBMAIL_ environ variables
	to sqwebmaild.

2003-11-23  James A Baker <jabaker@mac.com>

	* folder.c (folder_navigate): Show folder navigation bar at top and
	the bottom of the message list.

2003-11-18  Tim Rice <tim@multitalents.net>

	* rfc822/configure.in: Fix MSG_WARN.

2003-11-15  Mr. Sam  <mrsam@courier-mta.com>

	* Update to automake 1.7.8, autoconf 2.57, libtool-1.5, gettext-0.12.1

2003-11-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlm3.C (fromverp): Allow lower or uppercase hexadecimal
	VERP encoding.

2003-11-04  John Belmonte <jvb@prairienet.org>

	* courier/cmlm.C (goodconfirm): Added SIMPLECONFIRM option.

2003-11-01  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail: Split sqwebmail into sqwebmail and sqwebmaild.
	sqwebmaild is now a root daemon process that listens on a UNIX
	domain socket.  sqwebmail is a tiny, unprivileged cgi-bin stub that
	forwards the HTTP request to the daemon process.  Update INSTALL
	and SECURITY.  Remove FastCGI support; not compatible with the new
	framework.

	The stub passes the client's file descriptor to sqwebmaild, on
	platforms that support passing file descriptors, else it proxies
	http traffic in both directions.

2003-10-30  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirlock.c (maildir_lock): Fix double-free() call.

2003-10-30  James A Baker <jabaker@mac.com>

	* folder.c: CSS fixes; Javascript-based select/unselect all button;
	show "xx-yy of zzz" on the folder index screen.

	* folder.c: Show first/last button; jump-to button.

	* images: New PNG images.

0.44.0

2003-10-15  Filipe Brandenburger <filipe@procergs.rs.gov.br>

	* maildrop/message.C (Init): If compiled with CRLF_TERM, account for
	CRs in the message size.

2003-10-10  Dmitry Lebkov <dima@sakhalin.ru>

	* maildrop/mdldapconfig.c (get_ldap_config): Allow comments in
	ldap config file (N/A).

	* maildrop/mdmysqlconfig.c (get_mysql_config):  Allow comments
	in mysql config file.  Remove redundant mailstatus field. (N/A)

2003-10-27  Mr. Sam  <mrsam@courier-mta.com>

	* imap/search.c (search_body_func): Ignore charset conversion errors
	when doing a SEARCH (GIGO principle).

2003-10-25  Jon Nelson <jnelson-courier@jamponi.net>

	* imapd.c (main): Reset umask before opening the debug file.

2003-10-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/links.html: Added link to courier-users.jp

2003-10-21  Mr. Sam  <mrsam@courier-mta.com>

	* courier/Makefile.am: Respect $(EXEEXT)

	* tcpd: Respect $(EXEEXT)

	* authlib: Respect $(EXEEXT)

	* libhmac: Respect $(EXEEXT)

	* rfc2045/testsuite: Fix enable-mimecharset breaking make check.

2003-10-20  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/rfc2047u.c (rfc2047_print_unicode): Unicode-aware version of
	rfc2047_print().

	* webmail/folder.c (showmsgrfc822_addressheader): Use
	rfc2047_print_unicode.

2003-10-13  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (imap_addRemoveKeywords): Remove duplicate message sequence
	numbers from message list (causes infinite loop due in keyword
	support for +FLAGS/-FLAGS).
	* maildir/maildirkeywords2.c (read_updates): Ditto.

2003-10-11  Paul L. Allen <pla@softflare.com>

	* webmail/sv-make_timezonelist.pl: Autogenerate timezones for the
	login dropdown.

2003-10-10  Brian Candler <B.Candler@pobox.com>

	* maildir/loginexec.c (maildir_loginexec): Hook for Maildir/loginexec,
	if exists it's executed, then removed.  Used for migration-type
	situations.

	* images/sqwebmail.css: Set background colors via the style sheet.

	* sqwebmail.c (error3): More informative error messages.

2003-10-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cdfilters.C (dofilter): Try five times to connect to a
	filter, before giving up.

	* imap/imapscanclient.c (do_imapscan_maildir2): Workaround for
	filesystems that keel over if files are deleted in the directory
	that's being read at the same time.
	* maildir/maildirgetnew.c (do_maildir_getnew): Ditto.

	* maildir: Cleanup.  Remove config.guess and config.sub.

	* pop3dserver.c (main): Replaced scannew with maildir_getnew().

2003-10-02  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c: When IMAP_MOVE_EXPUNGE_TO_TRASH is set, be smart and
	do not move to Trash a message that's been expunged after it was
	copied to another folder.

2003-10-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/filters/perlfilter/perlfilter-example.pl: Comments, update
	to Perl 5.8, mark as %config in RPM.

2003-09-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (checkdns): Ignore BOFHCHECKDNS if BLOCK is
	already set.

2003-09-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/filters/dupfilter.sgml: dupfilter and mailing lists don't
	mix.

	* maildrop/mio.C: Cleanup. Drop some dead code.

	* imapd.c (store_mailbox): Optimize APPEND performance.  Based on a
	patch by Anssi Raittila <Anssi.Raittila@tecnomen.fi>.

	* courier/module.local/localmail.c (wait_delivery): Log the error
	message from submit when an internal forward fails.

2003-09-28  courier@asfast.net

	* courier/bofh.c (chkusersubdom): bofh badfrom user@.domain rejects
	all mail with the return address of <user@anything.domain>.

2003-09-25  Mr. Sam  <mrsam@courier-mta.com>

	* bdbobj/bdbobj.c (bdbobj_open): Fix dbf_open call for db 3.x

2003-09-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C (MessageEnd): Do not run localmailfilters against
	DSNs.

	* webmail/newmsg_create.c (header_wrap): Wrap excessively long
	headers to multiple lines.

	* webmail/maildir.c (maildir_readheader_mimepart): When folding
	multiline headers, replace newline+spaces with a single space.

2003-09-22  Gordon Messmer <yinyang@eburg.com>

	* courier.spec.in: Cleanup and reformatting.

2003-09-22  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c:  getenv("MAILDIRQUOTA") as last argument to
	maildir_quota_add_start().

2003-09-22  Brian Candler <B.Candler@pobox.com>

	* imap/imapd.c: getenv("MAILDIRQUOTA") as last argument to
	maildir_quota_add_start().

2003-09-21  Mr. Sam  <mrsam@courier-mta.com>

	* userdb/makeuserdb.in: Make sure makeuserdb emits a trailing
	newline after each processed file.

2003-09-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/links.html (href): RAV bought by Microsoft, no more
	RAV support.

0.43.2

2003-09-07  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/main.C (nouser): Really use EX_NOUSER for undefined
	recipients.

2003-09-02  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit.C (getsender): Implement BOFHCHECKHELO.

	* courier/module.esmtp/courieresmtpd.c (ehlo): If received spaces
	in HELO/EHLO, silently change them to underscores.

	* courier/module.local/preline.c: Add usage() if no arguments.

2003-09-01  Sergio Gelato <Sergio.Gelato@astro.su.se>

	* imap: Set timestamp on new message file after it is moved from tmp
	to new.

2003-08-27  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c (applyflags): Fix SMAP STORE KEYWORDS again.

2003-08-26  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c (smap): Fix SMAP STORE KEYWORDS.

	* Makefile.am (install-check-umask): Check umask before running the
	rest of make install.

	* tcpd/starttls.c (connect_completed): Initialize
	TLS_CONNECTED_PROTOCOL before running the wrapped child process.

	* tcpd/libcouriertls.c (tls_connecting): New function checks if
	SSL/TLS negotiation is still in progress on a non-blocking socket.

	* courier/module.esmtp/courieresmtpd.c (main): If invoked within a
	couriertls-wrapped connection, log TLS_CONNECTED_PROTOCOL in headers.

0.43.1

2003-08-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/index.html (href): Add link to maildirkw.html

2003-08-18  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-35fax.pl: @s in dialing string weren't
	shown, sometimes.

	* imap/imapd.c (addRemoveKeywords): Do nothing unless keywords are
	enabled (fix CPU spin if IMAP_KEYWORDS are manually disabled).

0.43

2003-08-17  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authpgsqllib.c (auth_pgsql_getuserinfo): Fix memory
	corruption with custom select clause is enabled and long userids.

	* authlib/authmysqllib.c (auth_mysql_getuserinfo): Fix memory
	corruption with custom select clause is enabled and long userids.

2003-08-12  James A Baker <jabaker@mac.com>

	* folder.c (showaddressheader_printsep): Fix message preview.

	* html/en-us/index.html: Fix the frameset.

2003-08-09  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/main.C (nouser): Use EX_NOUSER for undefined virtual
	recipients.

	* maildrop/maildir.C (MaildirSave): Use KEYWORDS to initialize
	keywords for a maildir message.

	* imap/smap: attempt to detect whether someone else modified
	keywords while we were doing +KEYWORDS or -KEYWORDS, and, if so,
	rerun these commands.

2003-08-09  Brian Candler <B.Candler@pobox.com>

	* sqwebmail.c (catch_sig): Ignore signals when running under FastCGI.

2003-08-03  Mr. Sam  <mrsam@courier-mta.com>

	* Added the maildirkw command+man page.

2003-08-02  Mr. Sam  <mrsam@courier-mta.com>

	* bdbobj/bdbobj.c (bdbobj_open): Fix for DB 4.1 API.

2003-08-01  Mr. Sam  <mrsam@courier-mta.com>

	* Moved keyword support code into libmaildir.a.   Major cleanup.

2003-07-31  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c: Keyword support cleanup.

	* imapd.c (bye): Clean up after an aborted APPEND.

2003-07-29  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: Add notice to forward all vpopmail
	questions to the vpopmail mailing list.

2003-07-24  James A Baker <jabaker@mac.com>

	* authlib/README.authmysql.html: Cleanup.

	* authlib/README.authpostgres.html: Cleanup.

	* courier/doc/courierd.html: Cleanup.

	* courier/doc/FAQ.html: Cleanup.

	* courier/doc/history.html: Cleanup.

	* courier/doc/index.html: Cleanup.

	* gpglib/README.html: Cleanup.

	* imap/FAQ.html: Cleanup.

	* imap/README.html: Cleanup.

	* maildir/README.maildirfilter.html: Cleanup.

	* maildir/README.sharedfolders.html: Cleanup.

	* maildrop/README.html.in: Cleanup.

	* pcp/README.html: Cleanup.

	* webmail/html/README_LANG.html.in: Cleanup.

	* html/en-us/folder.html: Cleanup.

	* html/en-us/quickadd.html: Cleanup.

	* html/en-us/newmsg.html: Cleanup.

	* html/en-us/eventdelete.html: Cleanup.

	* html/en-us/abooklist.html: Cleanup.

	* html/en-us/eventdaily.html: Cleanup.

	* html/en-us/eventweekly.html: Cleanup.

	* html/en-us/login.html: Cleanup.

	* html/en-us/ldapsearch.html: Cleanup.

	* html/en-us/eventmonthly.html: Cleanup.

	* html/en-us/spellchk.html: Cleanup.

	* html/en-us/gpgcreate.html: Cleanup.

	* html/en-us/keyimport.html: Cleanup.

	* html/en-us/gpgerr.html: Cleanup.

	* html/en-us/navbar3.inc.html: Cleanup.

	* html/en-us/navbar.inc.html: Cleanup.

	* html/en-us/navbar2.inc.html: Cleanup.

	* html/en-us/print.html: Cleanup.

	* html/en-us/calendarlogin.inc.html: Cleanup.

	* html/en-us/index.html: Cleanup.

	* html/en-us/printnocookie.html: Cleanup.

	* html/en-us/empty.html: Cleanup.

	* html/en-us/redirect.html: Cleanup.

	* html/en-us/printredirect.html: Cleanup.

2003-07-24  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c: Create an API layer for the keyword read/update
	functionality in imapscan_readKeywords(), divorcing the implementation
	from the IMAP-specific data structure, in preparation for moving
	the entire logic into the generic maildir library.

	* smap.c (createSearch): Added SMAP SEARCH [range] command.

2003-07-23  James A Baker <jabaker@mac.com>

	* html/en-us/eventshow.html: Cleanup.

	* html/en-us/readmsg.html: Cleanup.

	* html/en-us/eventacl.html: Cleanup.

	* html/en-us/autoresponder.html: Cleanup.

	* html/en-us/invalid.html: Cleanup.

	* html/en-us/expired.html: Cleanup.

2003-07-21  Brian Candler <B.Candler@pobox.com>

	* webmail/sqwebmail.c (do_output_form_loop): Make bannerprog work with
	FastCGI

2003-07-22  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c (createSearch): Added SMAP SEARCH ALL command.

	* testsuite: Replace find with chmod -R, more portable.

2003-07-19  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c: Move #define of KEYWORDDIR to maildirwatch.h

	* imapd: Plug several memory leaks found by valgrind.  One of the
	leaks is in libfam.  Reported the bug upstream.

	* maildirwatch: Use a single FAM connection, where possible, in order
	to minimize libfam leak.  Open another FAM connection only if the
	first one breaks.

	* pop3dserver.c (print_uidl): Redo UIDL computation once again.
	Version 2 UIDL format is upwards compatible from version 0/1
	courierpop3dsizelist formats, preserving legacy UIDLs.  See comments
	for the description of error recovery from out-of-disk space
	(quota-related) issues.

2003-07-18  Brian Candler <B.Candler@pobox.com>

	* imap/smaptestsuite: Ignore leading space from wc -l, differs between
	platforms.

2003-07-17  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c: Rename new keyword update files after installing
	a new :list file.

	* tcpd/tcpd.c (mksockets): Use AF_INET for binds to IPv4 addresses,
	even on IPv6-capable machines.

2003-07-16  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/sqwebmail.c (fix_xml_header): Emit correct charset in <?xml >
	header.

	* imap/smap: Implement custom keywords.  Custom keywords may be
	enabled/disabled in the configuration file.  Additionally, error
	checking has been tightened up: stuff that used to be tolerated,
	such as invalid messages flags, is now reported as an error.

2003-07-14  Jesse Guardiani <jesse@wingnet.net>

	* INSTALL.html: Document SQWEBMAIL_IMAGEURL

2003-07-14  James A Baker <jabaker@mac.com>

	* webmail/html/en-us/newevent.html: Cleanup.

	* webmail/html/en-us/filter.html: Cleanup.

	* webmail/html/en-us/preferences.html: Cleanup.

2003-07-14  Mr. Sam  <mrsam@courier-mta.com>

	* search.c (fill_search_preparse): Make SEARCH parse message flags and
	keywords only once, instead of once for each message.
	(search_oneatatime): Move main loop of search iteration into a
	separate function, which evaluates the search criteria for a given
	message only (leave indentation alone, will reindent later).

2003-07-13  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (doNoop): Drop automatic FETCH FLAGS of new messages.

2003-07-09  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/imaprefs.c (rfc822_threadmsgrefs): New function takes
	an array of References: headers, instead of a single References:
	string (merged from the cone tree).

2003-07-09  Jesse Guardiani <jesse@wingnet.net>

	* webmail/sqwebmail.c (get_imageurl): Use SQWEBMAIL_IMAGEURL to
	override image URL location, determine at compile time.

	* sqwebmail.c (do_output_form_loop): [#IMAGEURL#] tag substitutes
	URL to the image directory.

2003-07-08  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.fax/faxstub.c (VALIDCHAR): Valid characters in
	the dialing string include + and -.
	(MAXLEN): Expanded maximum dialing string length to 80 characters.
	(rwfax): Replace #s with ~s, instead of @s (temporarily).
	Replace -s with ,s.
	Replace +s with @s.
	(rw_del_fax): Plug a memory leak.

	* courier/module.fax/faxrc.dist: Update comments.

	* courier/module.fax/courierfax.sgml: Update documentation.

2003-07-07  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2646html.c (rfc2646tohtml_handler): Put back
	blockquote type="cite", and use three different background colors
	to highlight quoting level, plus some borders to make stuff purty.

2003-07-06  James A Baker <jabaker@mac.com>

	* webadmin: HTML output cleanup.

2003-07-04  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (charset_warning): Fix null ptr deref if sqwebmail is
	misconfigured to use an undefined HTML template character set.

2003-06-30  Brian Candler <B.Candler@pobox.com>

	* cgi/cgi.c (cgi_setup_1): FastCGI fix.

2003-06-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/courier.sgml: Revise documentation of the
	enablefiltering control file.

	* courier/libs/moduledel.c: Implement watchdog timer, used for local
	mail deliveries.

	* courier/module.local/localmail.c (main): Use a separate process
	group id for the delivery process, killed by a watchdog timer.

	* tcpd/tcpd.c: Typo prevents IPv6 sockets from being created on BSD.

2003-06-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/courieresmtpd.c (ehlo): Do not send extended
	reply format to a HELO.

2003-06-24  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authdaemond.c (start): Fix authdaemon idle processing.

	* courier/doc/courier.sgml: Added documentation on webmail
	template files.

2003-06-23  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/logindomainlist.c (get_defaultdomainfields): Default
	SERVER_ADDR and HTTP_HOST, if not set.

	* webmail/folder.c (folder_download): Drop quotes around charset
	name in	the Content-Type: header, apparently mozilla doesn't like that.

	* webmail/sqwebmail.c (error): Ditto.
	(error2): Ditto.
	(output_form): Ditto.

	* courier/doc/FAQ.html: New FAQ entry on ESMTP connection delays.

	* maildrop/main.C (find_in_ldap): Fix crash if ldap is enabled but
	ldapconfig is not installed (does not affect Courier build, only
	maildrop standalone).

2003-06-22  Mr. Sam  <mrsam@courier-mta.com>

	* pop3dserver.c (cmpmsgs): Ignore maildir message flags when sorting
	message lists (eliminated dup POP3 downloads after 2003-06-18).

2003-06-20  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c: Do not use BUFSIZ to size I/O buffers (make check will
	fail if BUFSIZ != 8192).

2003-06-20  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045reply.c (mkforward): Fix MIME decoding of forwarded
	text.

2003-06-18  Mr. Sam  <mrsam@courier-mta.com>

	* http11/contentlanguage.c (http11_content_charset): Fix return code

2003-06-17  Mr. Sam  <mrsam@courier-mta.com>

	* webadmin: handle new defaultDelivery setting for LDAP, MySQL,
	and PgSQL.

	* pop3dserver.c: Generate shorter message UIDs.  UIDs based on the
	filename may be too long for some clients.  Save a counter in
	courierpop3dsizelist that is, essentially, an IMAP UID.

2003-06-17  James A Baker <jabaker@mac.com>

	* courier/cmlmfetch.C (doindex): HTML output cleanup.

	* webmail/logindomainlist.c: HTML output cleanup.

	* webmail/rfc2646html.c: HTML output cleanup.

	* cgi/cgi.c: HTML output cleanup.

	* webmail/token.c: HTML output cleanup.

	* webmail/html.c: HTML output cleanup.

2003-06-12  James A Baker <jabaker@mac.com>

	* webmail/addressbook.C: HTML output cleanup.

	* webmail/pref.C: HTML output cleanup.

	* webmail/sqwebmail.C: HTML output cleanup.

	* webmail/mailfilter.C: HTML output cleanup.

	* webmail/attachments.C: HTML output cleanup.

	* webmail/autoresponse.C: HTML output cleanup.

	* webmail/gpg.C: HTML output cleanup.

	* webmail/sqispell.C: HTML output cleanup.

2003-06-12  James A Baker <jabaker@mac.com>

	* webmail/pcp.c: HTML output cleanup.

	* webmail/ldaplist.c: HTML output cleanup.

	* webmail/newmsg.c: HTML output cleanup.

2003-06-12  James A Baker <jabaker@mac.com>

	* webmail/folder.c: HTML output cleanup.

	* webmail/sqwebmail.css: cleanup.

2003-06-13  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/export.c (libmail_gpg_exportkey): Fix bug that exports all
	keys, not just the selected key.

2003-06-12  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/tlspasswordcache.c (tlspassword_save): Use EIO instead of
	EPROTO (which is not defined everywhere).

	* tcpd/configure.in: More thorough check for OpenSSL 0.9.7.

2003-06-11  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldap.schema: Remove duplicate definition of
	virtualdomainuser.

	* maildir/maildirwatch.c (maildirwatch_alloc): Fix test for error
	return from getcwd().

	* gpglib/gpglib.h: Added errstatus to libmail_gpg_info.

	* gpglib/gpg.c (dogpgsign): Fix a C++ism.

	* webmail: Mark default templates as utf-8 preferred, so browsers
	that support utf-8 will receive all content in utf-8.  Supress
	charset conversion warning for utf-8 browsers.

	* http11/contentlanguage.c (http11_content_charset): Allow a
	comma-separated list in {templatedir}/CHARSET, select the first
	charset found in the Accept-Charset: HTTP header.

2003-06-07  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/gpg.c (dogpgsign): Fix a C++ism.

2003-06-05  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd: merge tlspasswordcache from cone's tree.

2003-06-02  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib cleanup.

	   + Return an error indication on a fatal error, instead of calling
	     exit().

	   + Rename functions to use a consistent naming convention.  The two
	     primary functions are called libmail_gpg_signencode and
	     libmail_gpg_decode, and both take a structure that provides
	     the rest of the parameters and callback functions.

	   + Replace I/O to stdin/stdout with function calls to input and
	     output functions.

	   + When signing, do not fork and run reformime in order to convert
	     8bit text to quoted-printable.  Convert it directly, on the fly.

	   + Finally, wrap the result in a nice API library, and have sqwebmail
	     invoke the library, instead of forking and running mimegpg.

2003-05-31  Mr. Sam  <mrsam@courier-mta.com>

	* imap/smap.c (hashdr): Fix c++-ism.

2003-05-29  Mr. Sam  <mrsam@courier-mta.com>

	* imap/thread.c (thread_ref_callback): Extra argument to
	rfc822_threadmsg() specifies message date as time_t.

2003-05-27  Mr. Sam  <mrsam@courier-mta.com>

	* Added experimental SMAP protocol.

	* rfc2045/rfc2045header.c: eat leading space when folding header lines.

2003-05-26  Mr. Sam  <mrsam@courier-mta.com>

	* courier/ldapaliasdrc.c (readconfigfile): Fix file descriptor leak
	in "courierldapaliasd restart".

2003-05-19  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/README.maildirquota.html: Clarify that lines in maildirsize
	are padded to 14 character lengths.

2003-05-18  Mr. Sam  <mrsam@courier-mta.com>

	* rootcerts/configure.in: Allow custom rootcertdir.

	* courier.spec.in: Enable UTF-8 when building RPMs.

	* webmail/folder.c (folder_contents): Temporarily reset LC_CTYPE while
	we're usign wcwidth().

2003-05-15  "Hatuka*nezumi \(IKEDA Soji\)" <nezumi@jca.apc.org>

	* webmail/folder.c (truncate_at): take into account double-width chars.

2003-05-15  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c (truncate_at): use wcwidth(), if available.


0.42.2

2003-05-14  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirdelfolder.c (delsubdir): Sometimes we don't get
	an EISDIR, even though we should <sigh>...

2003-05-14  Stefan Hornburg <racke@linuxia.de>

	* userdb/makeuserdb.sgml: Fix command names.

2003-05-14  Mr. Sam  <mrsam@courier-mta.com>

	* unicode/utf7.c: UTF-7 mapping.

	* webmail/folder.c (truncate_at): Unicode-aware long text string
	truncation.


2003-05-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C (isbase64text): opt BOFHNOBASE64TEXT rejects
	base64-encoded text/plain and text/html content.

0.42.1

2003-05-12  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmbounce.C (getbounceaddr): Fix bounces.

2003-05-11  James A Baker <jabaker@mac.com>

	* courier/webadmin/admin-47webmail.pl: Do not sort logindomainlist,
	breaks new enhanced features.  Make logindomainlist input area bigger.

2003-05-09  Mr. Sam  <mrsam@courier-mta.com>

	* courier/makealiases.in (aliasdir): Default aliasdir.

2003-05-08  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c: Properly decode MIME-encoded headers.

2003-05-01  Mr. Sam  <mrsam@courier-mta.com>

	* authlib: split DEFAULTDELIVERY from MAILDIR for LDAP, MySQL, Postgres
	(used by courier instead of MAILDIR)

2003-05-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc: Minor documentation updates.

2003-04-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cdmsgq.C (tmpscan): Must use ReverseFind() instead of
	Find(); fixes race if installation directory root path contains a
	period.

	* webmail/maildir.c (do_msgmove): Do not refuse to remove
	multiply-linked	message files, probably some cleanup situation after
	a crash.

2003-04-29  Mr. Sam  <mrsam@courier-mta.com>

	* Replace U+0x00A0 in SGML documentation with spaces.

2003-04-27  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildircache.c (maildir_cache_purge): Temporarily reset
	SIGCHLD to SIG_DFL while waiting for the purge process to finish.

2003-04-26  Mr. Sam  <mrsam@courier-mta.com>

	* pcp/pcpd.c (accept_pcpd): Reset child's SIGCHLD to SIG_DFL

2003-04-25  Mr. Sam  <mrsam@courier-mta.com>

	* gpglib/configure.in: Bless gpg 1.2.1

	* maildir/maildirdelfolder.c (maildir_mddelete): A more "thorough"
	folder delete.

	* webmail/maildir.c (maildir_delete): Use the new maildir_mddelete().

2003-04-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cdmsgq.C (queuescan3): Log message source on submission.

2003-04-23  Rodrigo Severo <rodrigo.lists@fabricadeideias.com>

	* authlib/authmysqlrc: Fix comments

2003-04-21  Mr. Sam  <mrsam@courier-mta.com>

	* Updated toolchain to automake 1.6.3, autoconf 2.57,
	libtool 1.4.3, gettext 0.11.4, new Docbook style sheets.

	* bdbobj/bdbobj2.c (bdbobj_nextkey): Eliminate 0-length malloc.

2003-04-19  Dmitriy Kuznetsov <eth0@dol.ru>

	* maildir/maildirfilter.c (maildir_filter_saverules): webmail:
	Do not explicitly set MAILDIRQUOTA -- recent versions of maildrop
	take care of this automatically.

2003-04-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/ldapaliasd.c (loop): Use SIG_DFL when waiting for child
	procs to terminate.

2003-04-18  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authmysqllib.c (validateMyPassword): Rename
	validate_password to validateMyPassword (MySQL 4 conflict).

2003-04-13  Jesse Guardiani <jesse@wingnet.net>

	* sqwebmail.c (do_output_form_loop): Fix logindomainlist.

2003-04-12  Jesse Guardiani <jesse@wingnet.net>

	* logindomainlist.c: Enhanced drop-down domain listing on the login
	screen.

2003-04-12  Mr. Sam  <mrsam@courier-mta.com>

	* All beta and releases will now be signed by
	http://www.courier-mta.com/KEYS.bin

2003-04-11  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd: configure and makefile cleanup

2003-04-09  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/README.authpostgres.html: Documentation updates.

	* courier/doc/makehosteddomains.sgml: Documentation updates.

2003-04-04  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in (Provides): Fix for rpm 4.2

	* autoconf 2.57 fixes.

2003-04-03  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045.c (content_location): Plug a leak.

	* unicode/unicode.c (unicode_xconvert): Plug a memory leak.

	* liblock/mail.c (ll_mail_free): Plug a memory leak.

2003-03-22  Brian Candler <B.Candler@pobox.com>

	* sqwebmail: FastCGI update.

2003-03-22  Alain NAKACHE <alain@cal.fr>

	* authenticate_auth.c (authenticate): Add AUTHSERVICE functionality
	to IMAP SASL, and POP3 plain+SASL authentication methods.
	* pop3login.c (main): Ditto.

2003-03-21  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirpurgetmp.c (maildir_purge): Fix maildir_purge(".");

2003-03-20  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2047.c (rfc2047_encode_callback): Fix MIME encoding of "_".

2003-03-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in (BuildPreReq): Default to /var/www

	* imap/imapscanclient.c (imapscanfail): Explicit error message
	referring to potential fam daemon problems.
	(imapscanfail): Include login id in error message.

	* unicode/iso2022jp.c (read_jis_char): Fix various bugs that result
	in crashes, as a result of invalid character sequences.

2003-03-19  James A Baker <jabaker@mac.com>

	* configure.in: Search additional directories for mime.types

0.42

2003-03-12  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C: Rephrase wording in message content errors to
	place more onus on the buggy software that generated the invalid
	content.

2003-03-11  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/configure.in: Grok Solaris 8 IPv6 header files.

2003-03-10  "Håvard Lygre" <hklygre@online.no>

	* authlib/authmysqllib.c (auth_mysql_getuserinfo): Fix NULL ptr result
	from mysql.

2003-03-10  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c (do_imapscan_maildir2): Create tmp file for the new
	courierimapuiddb in the folder's tmp dir.

	* maildrop/maildropex.sgml: Fix typo.

2003-03-09  James A Baker <jabaker@mac.com>

	* numlib/strhdevt.c: OS/X Linker bug.

2003-03-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/courierd.C (courierbmain): Create new configuration setting,
	queuefill, to force a queue refill a given number of seconds after
	the queue is filled to the high watermark level.

	* tcpd/libcouriertls.c (tls_transfer): Fix error recovery - an aborted
	connection negotiation may result in an infinite loop with some
	versions of OpenSSL.

2003-03-06  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirpurgetmp.c (maildir_purge): Adjust quota when
	autopurging Trash --with-trashquota.

	* rfc2045/configure.in: rename config.h to rfc2045_config.h

	* unicode/configure.in: rename config.h to unicode_config.h

2003-03-04  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045encode.c (rfc2045_encode_autodetect_fp): Bump line
	limit for non-encoded text to 990 chars.

	* webadmin/webadmin.pl.in: Comment fix.

2003-03-01  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/autoresponse.c (read_headers): Use rfc2045_parse_partial() to
	properly size-up content without trailing newlines.

	* webmail/folder.c: Ditto.

	* cgi/cgi.c (cgi_formdata): Ditto.

	* rfc2045/reformime.c (read_message): Ditto.

	* rfc2045/rfc2646create.c (rfc2646create_free): Emit the trailing
	newline.

	* configure.in: Conditionally probe if SA_NOCLDWAIT could be used.

	* rfc2045/pcpd.c (start): Use SA_NOCLDWAIT, if blessed by configure.

	* courier/ldapaliasd.c (loop): Use SA_NOCLDWAIT, if blessed.


2003-02-26  Mr. Sam  <mrsam@courier-mta.com>

	* pop3dserver.c (savepop3dlist): Recover from out-of-disk-space
	situation.

	* imapd.dist.in (IMAP_TRASHFOLDERNAME): Explain how purging works.

	* authlib/success.c (authsuccess): More clear error message.

2003-02-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/Makefile.am (install-man-extra): someone's choking
	on 'ln -s -f'.

2003-02-22  Toshikazu Ichikawa <ichikawa@toshikazu.org>

	* unicode/iso2022jp.pl: iso2022jp update.

2003-02-19  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (do_expunge): Autocreate INBOX.Trash only if
	IMAP_MOVE_EXPUNGE_TO_TRASH is enabled.

2003-02-17  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (do_imap_command): Transform a DELETE of a shared folder
	to an UNSUBSCRIBE.
	(do_imap_command): STATUS won't autosubscribe to a shared folder.

	* authenticate_auth.c (send_auth_reply): Fix SASL response to empty
	client input.

2003-02-17  Kurt Bigler <kkb@breathhost.net>

	* HTML template cleanup.

2003-02-15  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/folder.c (folder_list):  Recalculate maildir quota after
	a DELETE or RENAME (new function: maildir_quote_recalculate).

2003-02-15  Mr. Sam  <mrsam@courier-mta.com>

	* msgenvelope.c (msgenvelope): Default reply-to and sender
	headers in ENVELOPE reply to the from header (partially reverting
	2002-08-26, which fixed Pine's misbehavior, but broke Mulberry).

2003-02-12  Mr. Sam  <mrsam@courier-mta.com>

	* INSTALL:  Document that --with-trashquota breaks make check.
	imap/configure.in: If any option is used which is known to break
	make check, issue a friendly error message telling the organic
	entity to rerun configure without those options.

	* imaplogin.c (main): Add [CAPABILITY] tag to the initial greeting.

	* imapd.c (do_imap_command): Recalculate maildir quota after
	a DELETE or RENAME (new function: maildir_quote_recalculate).

2003-02-11  Kurt Bigler <kkb@breathhost.net>

	* webmail: HTML template cleanup.

2003-02-09  dave@britiany.com

	* imap/search.c (search_internal): Optimize SORT by not parsing the
	entire message, when we only want the headers.

2003-02-09  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirwatch.c: Fix timeout.

2003-01-30  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/rfc2045encode.c: clean up base64/qp encoding.

	* tcpd/configure.in: Handle kerberized openssl 0.9.7

	* configure.in: Fix search path for binaries.

0.41

2003-01-26  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (download_func): Fix platforms with broken putchar()s.

	* Final maildir creation revision.

	* maildrop/message.h (MessageSize): Fix estimated message size.

	* authlib/authmysqllib.c (append_username): Same fix as authpgsqllib,
	even though mysql does not need it.

2003-01-23  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authpgsqllib.c (append_username): Escape 's too.

	* imapd.c (main): Implement IMAP UIDPLUS (RFC 2359)
	(do_imap_command): Reset renamed folders' UIDVs.

	* imapd.dist.in (IMAP_CAPABILITY): Add UIDPLUS

2003-01-19  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildircreate.c: Removed old maildir creation code.

	* courier/module.local/deliver.c: New maildir creation code.

	* maildir/maildirfilter2.c: New maildir creation code.

	* images/sqwebmail.css: Cleanup.

	* pcp.c: New maildir creation code.

	* ldaplist.c: New maildir creation code.

	* folder.c: New maildir creation code.

	* maildir.c: New maildir creation code.

	* maildir/maildircreateh.c: Optimizations.

2003-01-17  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (maildir_mkfilename): Fix maildir_mkfilename().

	* storeinfo.c (copy_message): Use fixed maildir_mkfilename().

	* imapscanclient.c (imapscan_maildir): Convert to the new maildir
	creation library.
	(do_imapscan_maildir2): Ditto.

	* maildir/maildirshared.c: Convert to the new maildir creation
	library.

	* pop3dserver.c (savepop3dlist): Converted to the new maildir
	creation library.

2003-01-16  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/deliverquota: Initial implementation of new maildir
	creation library.  Converted deliverquota.

2003-01-14  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c (savemessage): Use maildir_movetmpnew.

	* webmail/maildir.c (do_msgmove): Use maildir_movetmpnew.
	(maildir_closemsg): Use maildir_movetmpnew.

	* imap/storeinfo.c (copy_message): Use maildir_movetmpnew.

	* imap/imapd.c (store_mailbox): Use maildir_movetmpnew.

	* maildir/deliverquota.c (deliver): Use maildir_movetmpnew.

	* maildir/maildircreateh.c (maildir_try_create_hostname): Include
	microseconds in message filename.
	(maildir_movetmpnew): Encapsulate move from tmp to new by trying
	link first, and only if it fails with exdev try rename.

2003-01-08  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapd.c (main): imapd --version prints my version.

	* POP3: Create courierpop3dsizelist to cache POP3-sizes of
	individual messages.

2003-01-04  Mr. Sam  <mrsam@courier-mta.com>

	* all: cleanup: rename function groups to a consistent namespace.

2003-01-03  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: Really fix the spec file.

2003-01-03  "Thomas T. Thai" <tom@minnesota.com>

	* Custom query patch for authpgsql

0.40.2

2002-12-23  Mr. Sam  <mrsam@courier-mta.com>

	* imap/configure.in: Use ulimit -v instead of ulimit -d, if available.

	* courier.spec.in (case): Don't officially package /etc/userdb,
	if custom site install replaces it with a file, it gets deleted on
	upgrades.

	* rfc2047.c (rfc2047_encode_callback): Fix hang on
	locales where isspace(U+0x00A0) is true.

2002-12-11   Brian Candler <B.Candler@pobox.com>

	* tcpd/tcpd.c: couriertcpd -denymsg option

2002-12-11  John D. Rowell <jdrowell@exerciseyourbrain.com>

	* md5/md5_hash.c:  Rename md5_has to md5_hash_courier (namespace
	conflict with postgres).

2002-12-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/sendmail.c (main): Expliticitly reset SIGCHLD.

	* courier/submit2.C (MessageEnd): Fix 8bit char test (results in an
	incorrect MAIL FROM with 8BITMIME extension).

	* courier/module.local/local.c (rw_del_local): Explicitly reject
	null local address.  Fixes an uninitialized ptr dereference.

2002-12-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc: updated sgml2html and sgml2man.  Added manpage.css.

2002-11-25  Mark Anthony Lisher <markal@markal.net>

	* imaptoken.c (nexttoken_nouc_okbracket): LOGIN parsing patch.

2002-11-23  John Morrissey <jwm@horde.net>

	* Add -w option to maildrop by moving quota warning code from
	deliverquota to libmaildir.a, and reusing it.

2002-11-21  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/localmail.c (wait_delivery): handle exit
	code 100 from .courier-invoked programs as a hard error.

2002-11-17  Mr. Sam  <mrsam@courier-mta.com>

	* unicode/mkultcase.pl: Fix titlecase mapping.

	* unicode: all unicode functions now receive the ptr to the unicode
	structure as their first argument.  Added a flags field to the unicode
	structure to describe charset properties (multibyte, utf, uses shift
	sequences...)

2002-11-17  Dr. Peter Bieringer <pb@bieringer.de>

	* html/en-us/quickadd.html: <title> fix.

2002-11-17  Mr. Sam  <mrsam@courier-mta.com>

	* courier/makealiases.in (xaliaspfix): Fix.

2002-11-11  Mr. Sam  <mrsam@courier-mta.com>

	* html/en-us/preferences.html: Remove double-dashes in the comment
	to fix some stupid mozilla parser bug.

0.40.1

2002-11-10  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c (savemessage): Make mbox deliveries
	work again.

2002-11-07  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c (imapscan_maildir): Recover if FAM dies.

	* webmail/html/en-us: Typos

2002-11-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/links.html: #courier on irc.freenode.net

	* rfc2045/rfc2045acchk.c (rfc2045_ac_check): Check for a NULL

0.40

2002-10-31  Aki Immonen <aki@golftalma.fi>

	* imapd.c (main): Configurable Trash Folder Name.

2002-10-31  Christian Hammers <ch@westend.com>

	* maildir.c (maildir_save_start): More verbose logging messages

2002-10-30  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-30esmtp.html (alink): ORBZ is now dead.

2002-10-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in (BuildPreReq): Add pgsql-devel and mysql-devel
	build prereqs.

2002-10-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier/pop3d.in: Fix initscripts, again.

	* pop3dcapa.c (pop3dcapa): It's STLS.

	* webmail/sqwebmail.c (main2): Drop root privs before showing
	invalid.html and printnocookie.html

0.40.0

2002-10-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/imapd-ssl.rc.in (bindir): Set bindir.

2002-10-23  Mr. Sam  <mrsam@courier-mta.com>

	* imap/thread.c (printthread): Fix THREAD REFERENCES.

2002-10-18  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (cache_add): Fix compiler warning.

	* userdb/userdb.c (userdb_getu): Fix compiler warning.
	(userdb_gets): Fix compiler warning.

	* rfc1035/rfc1035.c (mkpacketq_full): Fix compiler warning.

2002-10-16  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.*/configure.in: Fix broken configures

2002-10-15  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/debug.c (auth_debug_login_init): Make it work if
	DEBUG_LOGIN_ENV is not set.

2002-10-14  Olivier Girondel <olivier.girondel@cw.com>

	* authlib/authldaplib.c (authldap_read_config): LDAP_FILTER fix.

2002-10-14  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirwatch.h: Fix include file.

	* courier.spec.in: Explicitly define the %configure macro.

2002-10-13  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (imapenhancedidle): Added libfam-based IDLE implementation.
	Updated man page.

2002-10-10  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c: Implemented --with-dirsync

	* courier/module.local/deliver.c: Use new dotlocking code for
	delivery to mboxes.

	* courier/module.local/deliver.c: Fix error reporting of maildir
	deliveries.

2002-10-07  Mr. Sam  <mrsam@courier-mta.com>

	* Major toolchain upgrade - gcc 3.2, automake 1.6, autoconf 2.53,
	libtool 1.4.

2002-10-05  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/rfc1035ifconf.c: Fix infinite loop if same IP address
	is assigned to multiple interfaces.

2002-10-03  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/*.c: various cleanups.

	* maildir/maildirsearch.h: use std namespacing.

2002-10-02  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit: new configure switch --with-dirsync

	* maildrop/maildir.C (MaildirSave): ditto.

	* imap/imapd.c: ditto

2002-09-30  Ragnar Kurm <ragnar@uninet.ee>

	* imap/pop3: Added DEBUG_LOGIN_ENV to imap and pop3 config files that
	produces additional login diagnostics.

2002-09-28  Mr. Sam  <mrsam@courier-mta.com>

	* imapd.c (noop): Return updated message flags if called within IDLE,
	even with workaround enabled.

	* courier-imap.spec.in: add fam-devel to build-prereq.

	* IMAP_USELOCKS: Switch from flocks to dotlocks.  Time out stale
	network dotlocks after 120 seconds.  Use FAM, if available, while
	waiting on a dotlock file to go away.  Update config file comments.

	* maildir/maildirwatch.[ch]: Abstraction layer wrapping SGI's
	File Alteration Monitor, if it's available.

	* imapd.c (do_imap_command): Handle IDLE in authenticated state as,
	essentially, a NOOP.  Enable IDLE in the default CAPABILITIES
	string (but keep the same version string, so sysconftool will not
	touch an existing CAPABILITIES setting on an upgrade).

2002-09-25  Mr. Sam  <mrsam@courier-mta.com>

	* html: Amaya 6.4 is out. iso-8859-1 0xA0 chars replaced with &nbsp;

2002-09-21  Mr. Sam  <mrsam@courier-mta.com>

	* autobloat: check for gmake, check for gcc in top level makefile.

2002-09-20  Mr. Sam  <mrsam@courier-mta.com>

	* reformime, makemime: implemented RFC 2231-parsing of Content-Type:
	and Content-Disposition: headers.  Other related changes in the imap
	and webmail code.

2002-09-18  Mr. Sam  <mrsam@courier-mta.com>

	* courier/pop3d-ssl.in (bindir): Fix bindir initialization.

2002-09-14  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (sendesmtp): Disable MX loopback
	check if the IP address was fished out of esmtproutes.

	* pop3login.c (main): Allow spaces in POP3 login id and password.

2002-09-10 Alessandro Vesely <vesely@tana.it>

	* authlib/authdaemond.c: Fix error logging.

2002-09-10  Mr. Sam  <mrsam@courier-mta.com>

	* liblock/lockmail.c (main): More lockmail fixes.

2002-09-09  Mr. Sam  <mrsam@courier-mta.com>

	* imap/search.c (fill_search_veryquick): Fix search for \Draft

2002-09-07  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authdaemond.c (idlefunc): Renamed idle() to idlefunc() -
	name clash with old libc.

	* courier/bofh.c (chkbadlist): @.domain.tld will match
	foo@anything.domain.tld

2002-09-06  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/links.html: Started a section on virus scanners.


2002-09-05  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authdaemond.c (start): Rename idle() to idlefunc().

	* tcpd/starttls.c (dump_x509): Print not-before and not-after
	timestamps.

	* Replaced dotlock with lockmail.

2002-08-29  "Binand Raj S." <binand@gmx.net>

	* courier/module.esmtp/courieresmtpd.c:  Fix EXDATA detection.

2002-08-28  Mr. Sam  <mrsam@courier-mta.com>

	* pop3: For completeness sake, implement POP3 STLS.

2002-08-26  Mr. Sam  <mrsam@courier-mta.com>

	* imap/msgenvelope.c (msgenvelope): Do not default reply-to and sender
	headers in ENVELOPE reply to the from header, and do not default
	the name to the address if the name is not specified for an address.

2002-08-24  Mr. Sam  <mrsam@courier-mta.com>

	* http11/contentlanguage.c (parse_accept_language): Fix
	Accept-Language: header parsing.

2002-08-23  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: Added an option to request delivery confirmation receipts.

2002-08-21  Mr. Sam  <mrsam@courier-mta.com>

	* esmtp/tls: move tlsclient.c and tlsclient.h into a separate
	library module that gets built even if openssl support is not
	available (cleanest way to fix courieresmtp).

	* maildrop/maildir.C (MaildirOpen): Clean up temp file if delivery
	to maildir goes over quota.

2002-08-19  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authdaemond.c (start): After 5 mins of inactivity call
	the newly-defined module 'idle' function.

	* courier/ldapaliasd.c (child): Close ldap connection after 5 mins
	of inactivity.

2002-08-12  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c: fix error reporting (esp at shutdown)

	* maildir/maildirsearch.h: added a C++ wrapper.

	* imap/utf8.c: cleanup, exposed internal unicode-to-utf8 conversion
	function.

2002-08-11  Mr. Sam  <mrsam@courier-mta.com>

	* imap: cleanup: extracted text search macros into a separate module
	in the maildir directory (for potential code reuse).

2002-08-11  Brian Candler <B.Candler@pobox.com>

	* imap/pop3: initscripts/*.in: fix paths.

2002-08-11  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/maildrop.sgml: Typo.

2002-08-11  Alessandro Vesely <vesely@tana.it>

	* authlib/authmysqllib.c (validate_password): Fix password change
	buffer overflow.

2002-08-08  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2047.c (rfc2047_encode_callback): Fix MIME encoding of words
	with = and ? characters.

0.39.3

2002-08-07  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/libcouriertls.c (tls_destroy): it looks like SSL_CTX_free
	might invoke the ssl/tls cache call.  Free tls_info after
	SSL_CTX_free comes back.  Explicitly call SSL_CTX_flush_sessions to
	work around a bug in OpenSSL which blows away application data prior
	to calling SSL_CTX_flush_sessions in SSL_CTX_free().

2002-08-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: Fix %is_not_mandrake.

0.39.2

2002-08-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier/ldapaliasd.c (sigalarm): Reestablish handlers for SIGHUP
	and SIGALRM, after catching those signals.

	* tcpd/tcpd.c (sighup): Reestablish handler for SIGHUP, after catching
	it.

2002-07-28  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in (BuildPreReq): Typo fix.

2002-07-26  Mr. Sam  <mrsam@courier-mta.com>

	* ldapaddressbook/abooksearch.c (ldapabook_search): Fix ldapsearch
	option.

	* authlib/configure.in: Fix invocation of pg_config.

	* authlib/authsyschangepwd.c (dochangepwd): Call setsid() and
	setlogin() on OpenBSD (make webmail passwd change work).

2002-07-24  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmbounce.C: Ignore case of bounce tokens.

2002-07-15  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/tlscache.c (doadd): Fix tlscache file corruption on platforms
	where sizeof(off_t) != sizeof(size_t).

2002-07-14  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirquota.c (maildir_quota_delundel_end): Typo fix.

	* libcouriertls:  By George, I think I've got it.  Implement
	orderly SSL/TLS session shut down.  The libcouriertls library is now
	fully event-driven; SSL/TLS errors are properly reported; an error
	is reported if the SSL/TLS connection was closed without an orderly
	shut down.

2002-07-13  Mr. Sam  <mrsam@courier-mta.com>

	* courier/cmlmcleanup.C (cmdhourly): Use mtime instead of atime to
	check for moderation reminders.

	* libcouriertls: The saga continues.  Suppress whining on
	SSL_ERROR_ZERO_RETURN

2002-07-12  Mr. Sam  <mrsam@courier-mta.com>

	* couriertls: more cleanup, better error reporting.

	* esmtpclient: fix /SECURITY.

	* couriertls: Fix tlscache make check

2002-07-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtpclient.c (starttls): couriertls cleanup
	got rid of -verifyfailmsg.

	* authlib/Makefile.am: cleanup - move changeuidgid.c to numlib.

	* couriertls: cleanup.

	* maildir/README.maildirquota: clarify maildirsize format.

	* webadmin: orbl.org is dead.

2002-07-10  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/configure.in (LIBCOURIERTLS): Disable building libcouriertls.a,
	in addition to couriertls, if openssl-devel is not installed.

2002-07-09  Mr. Sam  <mrsam@courier-mta.com>

	* Renamed logger to courierlogger

2002-07-07  Yu Kobayasi <mail@yukoba.jp>

	* shift-JIS encoding.  Search in iso-2022-jp and shift-JIS.

2002-07-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in (case): Merge courier-sendmail-wrapper into
	main courier RPM if alternatives scripts are present.

2002-07-06  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: Bless GnuPG 1.0.7; add a dropdown to set the keysig trust
	level.

2002-06-30  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/rfc1035.c:  Use a random number generator to initialize the
	ID field on DNS queries

	* imap/fetch.c (dofetchmsgbody): Fix BODY[n] for message/rfc822 MIME
	sections.

2002-06-29  Mr. Sam  <mrsam@courier-mta.com>

	* pcp: Refreshed to gettext 0.11.1-2

2002-06-27  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc: make web icon show up in Mozilla 1.0

2002-06-25  Alexander Skwar <lists.ASkwar@DigitalProjects.com>

	* courier.spec.in: spec file fixes for Mandrake.

2002-06-24  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035: added rfc1035_ifconf(), an interface to SIOCGIFCONF

	* courier/module.esmtp/courieresmtp.c: use SIOCGIFCONF to improve
	MX loop detection.

2002-06-23  Mr. Sam  <mrsam@courier-mta.com>

	* couriertls: code cleanup of the SSL/TLS wrapper.  Code cleaned up
	and modularized as libcouriertls.a, with a mini-API library.
	Implemented SSL/TLS session caching.

	* imapd.dist, pop3d.dist: new configuration settings for the
	SSL/TLS session cache file.

0.39.1

2002-06-27  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldaplib.c: Fix null ptr deref in new LDAP_MAILROOT
	code.

0.39

2002-06-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-30esmtp.pl (parsebl): Typo fix.

2002-06-19  Mr. Sam  <mrsam@courier-mta.com>

	* courier/filters/courierfilter.c (start): Close old stdout before
	starting filter child processes.

	* webmail/pcp.c (do_login): Squash bad error message if initial
	groupware calendar login fails for some reason.

	* courier.spec/README: ... and the initial groupware calendar
	login was failing on platform that use PAM because PAM needs to
	be configured to authenticate the "calendar" service.  Updated the
	RPM spec file to set this up, and update pcp/README to indicate that.

	* courier.spec - updated to install actual files in /etc/pam.d,
	instead of soft links, this is cleaner.  Also, install updated
	pop3/imap files that use the system-auth PAM module, where available.

2002-06-17  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirfilter.c: Fix FROM being incorrectly set for mailbot
	autoreplies.

	* maildir/maildirfilter.c: Do not use the -t flag when running
	SENDMAIL to forward a message.

2002-06-13  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirquota.h: Renamed maildirsize struct member to
	maildirsizefile - some compiler is having a cow about a struct member
	having the same name as the struct.

	* imap/outbox.c (check_outbox): Bug fix.

2002-06-12  Mr. Sam  <mrsam@courier-mta.com>

	* maildir/maildirquota.c (do_maildir_openquotafile): Fix quotas
	on FreeBSD (fcntl("/dev/null", F_SETFL) doesn't work on FreeBSD)

	* authlib/cryptpassword.c: Added missing include of stdlib.h

2002-06-11  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldaprc: Added LDAP_MAILROOT

2002-06-09  Mr. Sam  <mrsam@courier-mta.com>

	* numlib/strofft.c: off_t may be negative.

	* +++ maildirquota API update +++

	   + allows documented way to change the set quota on a maildir

	   + major internal cleanup, established a sane API library

	External changes:

	   + quota no longer set by deliverquota or MAILDIRQUOTA, new -q
	     option to maildirmake.  Both deliverquota, maildrop, and
	     Courier now read the maildirsize no matter what, and observe
	     the quota

	   + maildirmake and deliverquota now installed by the Courier-IMAP,
	     maildrop, and sqwebmail standalone builds.

	   + updated README.maildirquota, and man pages to reflect all these
	     changes.

	* courier/courierctl.start.in: Use a subshell to start courierd
	(some bug in old sh's).

2002-06-06  Mr. Sam  <mrsam@courier-mta.com>

	* imap/thread.c (printos): Sort threads by starting thread date.

2002-06-05  Mr. Sam  <mrsam@courier-mta.com>

	* imap/pop3dserver.c (main): Check the sticky bit, just like IMAP.

2002-06-05  James F.Hranicky <jfh@cise.ufl.edu>

	* imap/imapd.c (main): Log to stderr if failed to chdir to the maildir.

2002-06-05  Peter C. Norton <spacey-courier@lenin.nu>

	* courier/module.local/deliver.c (savemessage): Log maildir pathname
	if failed to create a message.

2002-06-02  Mr. Sam  <mrsam@courier-mta.com>

	* imap/outbox.c: Added #include <signal.h>

2002-05-29  Mr. Sam  <mrsam@courier-mta.com>

	* imap/outbox.c: Added the OUTBOX feature.

0.38.2

2002-05-26  Ron van den Dungen <ron@dse.nl>

	* authlib/authmysqllib.c (do_connect): Fix server connect via
	filesystem socket.

2002-05-25  Mr. Sam  <mrsam@courier-mta.com>

	* Generate and validate a hash for redirect requests, to prevent
	unauthorized use of the redirector.

2002-05-24  Mr. Sam  <mrsam@courier-mta.com>

	* webadmin/login.html: Use POST for the login form, instead of a
	GET.

2002-05-22  Gordon Messmer <yinyang@eburg.com>

	* courier.spec.in (Provides): Add provides: to sendmail-wrapper
	subpackage.

2002-05-22  Mr. Sam  <mrsam@courier-mta.com>

	* imap/fetch.c (dofetchmsgbody): Fix BODY[x.MIME] replies for
	message/rfc822 sections.

2002-05-20  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822_parsedt.c (rfc822_parsedt): Ignore obviously invalid years
	(someone else can worry about Y10K).

2002-05-19  Mr. Sam  <mrsam@courier-mta.com>

	* sqwebmail.c (open_langform): Fix crash if a form template cannot be
	opened.

2002-05-17  Mr. Sam  <mrsam@courier-mta.com>

	* newmsg.c (dosendmsg): Fix quota update when new message is NOT
	saved in the Sent folder.

2002-05-17  Mr. Sam  <mrsam@courier-mta.com>

	* tcpd/tcpd.c (doallowaccess): Code cleanup.

	* courier/submit.C (getrcpts): Fix failure to inject a bounce message
	when the original message had corrupted MIME content.

2002-05-15  Gordon Messmer <gmessmer@real.com>

	* courier.spec.in: Clean up alternatives support for valhalla

2002-05-14  Mr. Sam  <sam@email-scan.com>

	* html/en-us/readmsg.html: Mozilla bug workaround

2002-05-09  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/Makefile.am (libauth-modules): Get rid of some cruft in
	the Makefile.

2002-05-08  Norihisa Washitake <nori@washitake.com>

	* iso-2022-jp charset update

2002-05-07  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/links.html: Added a link to the log analyzer, mb2md
	script.

	* maildrop/mailbot.c (main): Added a -f option to mailbot.

	* courier/submit2.C (copymessage): Add an X-Original-Content-Type:
	header marking an encapsulated message.

2002-05-07  Keith T. Garner <kgarner@kgarner.com>

	* authlib: Additional LDAP authentication filter.

2002-05-07  John Morrissey <jwm@horde.net>

	* authlib: Solaris LDAP fix.

0.38.1

2002-04-30  Mr. Sam  <mrsam@courier-mta.com>

	* unicode/big5.c (c2u): Fixed a crash caused by invalid big5 chars.

2002-04-24  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/filter.C (xfilter): Set O_NDELAY on file descriptors for
	xfilter() since select() only works correctly on non-blocking fds.

2002-04-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/aliasexp.C (normalize): Fix makealiases lockup due to a bad
	alias file.

2002-04-17  Norihisa Washitake <nori@washitake.com>

	* iso-2022-jp unicode map.

2002-04-08  "tonix (Antonio Nati)" <tonix@interazioni.it>

	* webmail: maildir.c, html/en/folder.html: use strftime string from
	folder.html to format message dates.

	* webmail: folder.c, html/en/readmsg.html: selectively replace rfc822
	mail headers from readmsg.html

2002-04-08  Mr. Sam  <mrsam@courier-mta.com>

	* maildrop/formatmbox.C (GetFromLine): Do not write a newline before
	every From_ line...

	* maildrop/deliver.C (delivery): ... only for 2nd and subsequent msgs.

2002-04-07  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/rfc822_mkdate.c (rfc822_mkdate_buf): Explicit (int) cast gets
	the file compiled under Cygwin.

2002-04-06  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: fix alternatives package.

	* imap/imapd.c (do_imap_command): If SELECT fails, close the old folder
	anyway.

2002-04-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-30esmtp.html: Added a canned setting for
	monkeys.com open proxy blacklist.

2002-04-02  Mr. Sam  <mrsam@courier-mta.com>

	* webadmin/webadmin.pl.in (display_form): Fixes for Mozilla 0.9.9

2002-04-01  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035/rfc1035dump.c: print control characters in hostnames.

	* authlib/authmysqllib.c (auth_mysql_setpass): Fix password change in
	the custom MySQL driver.

2002-03-29  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/makealiases.sgml (info): Got rid of some misplaced
	cruft, left over from Docbook conversion.

	* courier/module.esmtp/courieresmtpd.c (domailfrom): Tarpit 5xx
	errors to MAIL FROM:
	(dorcptto): Tarpit ONLY 5xx errors to RCPT TO:

2002-03-26  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldaplib: Added an option to implement two-stage
	LDAP lookups, for authentication purposes.

0.38

2002-03-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier.spec.in: Add some spaghetti for the RH Skipjack beta
	release.  For skipjack, the courier-sendmail-wrapper subpackage
	will installs the alternatives links to Courier.

2002-03-22  Mr. Sam  <mrsam@courier-mta.com>

	* newmsg_create.c (sentmsg_reformat): Use SQWEBMAIL_TEMPLATEDIR,
	if defined, instead of HTMLLIBDIR.

2002-03-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc/FAQ.html: Added Tru64 gmake check failure.

2002-03-21  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: Fix broken vpopmail_home test.

2002-03-18  Mr. Sam  <mrsam@courier-mta.com>

	* rfc2045/reformime: Fix handling of unencoded nulls in text/plain
	content.

2002-03-17  Mr. Sam  <mrsam@courier-mta.com>

	* ldaplist.c (parsesearch): Attempt to decode base64-encoded LDAP
	attributes.  Allow configuration of LDAP server SASL parameters.

2002-03-15  Mr. Sam  <mrsam@courier-mta.com>

	* html.c: Tighten up HTML parsing.

2002-03-15  Jason Gilbert <jason@doozer.com>

	* courier/module.esmtp/courieresmtpd.c: ESMTPAUTH_TLS actually works
	now.

2002-03-15  Mr. Sam  <mrsam@courier-mta.com>

	* courier/courierd.dist.in (TLS_VERIFYPEER): Change the default
	for TLS_VERIFYPEER to NONE.  3/13 starttls change would otherwise
	begin requiring peer certificate validation.

2002-03-14  Brian Candler <B.Candler@pobox.com>

	* maildir/maildirmkdir.c (maildir_mkdir): Create tmp subdir last,
	when creating a maildir.

2002-03-14  Toshikazu Ichikawa <ichikawa@toshikazu.org>

	* sqwebmail.c (main2): Optionally disable monthly Sent folder rename.

2002-03-13  James Collier <james.collier@fifthweb.net>

	* tcpd/starttls.c (ssl_verify_callback): Fix client peer certificate
	check.

2002-03-09  Mr. Sam  <mrsam@courier-mta.com>

	* courier/webadmin/admin-34fax.pl: Added incoming fax notification
	configuration screen.

	* rfc2045/reformime.c (main): Added -h, -o, and -O options.

	* rfc822/rfc2047.c (rfc2047_encode_callback): Fix MIME-encoding of
	spaces.

2002-03-09  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.fax/courierfax.c:  Check sendfax's exit code,
	and retry only if exit code < 10 (in accordance to published
	sendfax documentation).

2002-03-08  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.fax: whipped up a better new_fax for mgetty to
	automatically convert incoming faxes to PNGs and mail them out.
	New config file: faxnotifyrc


2002-03-07  Mr. Sam  <mrsam@courier-mta.com>

	* rootcerts/certs.sh: Refreshed trusted X.509 root certs from
	Mozilla's CVS tree.

	* courier/doc: Documentation updates.

	* courier.spec.in: Moved outbound fax webadmin screen into the
	courier-fax RPM.

2002-03-06  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.fax/faxrc.dist: Replace the default canned set
	of rewriting rules with something better.  Prefix a dummy rewriting
	rule that disables fax transmission by default (it must be manually
	removed to enable fax transmissions).

	* Added a webadmin screen to set up outgoing fax transmissions.

	* courier/module.fax/courierfax.c: Include number of pages in the
	fax cover page in the delivery report.

	* waitlib/configure.in: Fix check for sighold() function.

	* courier/module.fax/faxrc.dist: Default setting accepts faxes
	from the esmtp module (but FAXRELAYCLIENT still needs to be set,
	see the following deltas for an explanation).

	* courier/module.esmtp/courieresmtpd.c (main): Set FAXRELAYCLIENT
	after successful ESMTP authentication.

	* courier/doc/makesmtpaccess.sgml: Documented the FAXRELAYCLIENT
	variable.

	* courier/doc/install.html: Documented FAXRELAYCLIENT in the
	outgoing fax configuration section.

2002-03-05  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/esmtp.c (rfc822check): Do not reject
	ESMTP recipient addresses of the form @fax[-opts] (leave it on the
	fax module to reject esmtp fax requests), allow it if
	FAXRELAYCLIENT is set.

	* courier/sendmail-esmtpd-wrapper.c (esmtpd): Set FAXRELAYCLIENT
	for the 'sendmail -bs' invocation automatically.

2002-03-04  Mr. Sam  <mrsam@courier-mta.com>

	* rfc822/rfc822.c (rfc822_prname_orlist): Dequote quoted-strings.

	* Courier: Added module.fax

	* courier/libs: added faxqueuetime config setting.  Modified
	showconfig, dsn, to use it.

2002-03-01  "Peter C. Norton" <spacey-courier@lenin.nu>

	* Added authlib/README.authpostgres.html

2002-03-01  Mr. Sam  <mrsam@courier-mta.com>

	* courier, maildrop: fix configure and makefile scripts for
	autoconf 2.52 and automake 1.5

2002-02-27  Mr. Sam  <mrsam@courier-mta.com>

	* mimegpg: when encrypting, include Mime-Version: 1.0 header in
	the headers of the encrypted portion of the message.

	* folder.c (folder_initnextprev): Remove spurious hidden field
	left outside a form.

	* courier/libs/lcrewrite.c: Tighten checks on valid envelope
	addresses to prohibit character <, >, (, ), ;, whitespace, and
	control characters.

	* authlib/configure.in: Replace test ~vpopmail (home directory) with
	a Perl script (~username not supported by Solaris's sh).

0.37.3

2002-02-25  Mr. Sam  <mrsam@courier-mta.com>

	* ldaplist.c (parsesearch): Expect LDIF-formatted output from
	ldapsearch, now.

	* imap/imapd.c: fix GETQUOTAROOT response

	* imap/testsuite: dump imapd output to a file instead of /dev/null,
	BSD's fcntl(O_NONBLOCK) chokes on /dev/null.

2002-02-24  Mr. Sam  <mrsam@courier-mta.com>

	* imap/imapscanclient.c: fix UIDNEXT in the STATUS response to take
	into account new mail.

2002-02-23  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.local/deliver.c:  Hack around the FreeBSD issue with
	mixing of stdio and unistd seek calls.

2002-02-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/addcr.c (main): Fix breakage introduced by
	O_NONBLOCK 2002-02-19 - for some reason addcr executed by sendmail -bs
	has its stdin go into nonblock mode as a result of O_NONBLOCK from
	courieresmtpd.

2002-02-20  Mr. Sam  <mrsam@courier-mta.com>

	* submit, couriermlm: fstream constructor append ios::trunc to
	ios::in and ios::out (fix for gcc 3.1).

	* couriermlm: replace calls to ifstream.get(const char *, int) with
	manual code (fix for gcc 3.1).  Someone was smoking crack when they
	decided that get() reading a blank line should end up setting failbit.

2002-02-19  Mr. Sam  <mrsam@courier-mta.com>

	* mimegpg, courieresmtp, courieresmtpd: must set O_NONBLOCK on file
	descriptors even if select() is used to check for read/write
	availability.

2002-02-17  Mr. Sam  <mrsam@courier-mta.com>

	* imap/searchinfo.c: allow numerical SEARCH strings without quoting.

2002-02-15  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/configure.in: Link against $CRYPTLIBS when probing for
	open_smtp_relay()

	* rfc2045/reformime.sgml: Documented the -m and -D options.

	* Perl 5.6.1 fixes.

2002-02-13  Mr. Sam  <mrsam@courier-mta.com>

	* webmail: import SENDER from the environment, in maildirfilter,
	and use that for the return address on forwarded mail.

2002-02-12  Mr. Sam  <mrsam@courier-mta.com>

	* Fixes for gcc 3.1

	* courier/configure: Get rid of obsolete maildrop setgid warning.

2002-02-12  "Stefan Hornburg (Racke)" <racke@linuxia.de>

	* webmail: Disable Trash folder autopurge by setting # of days to 0.

2002-02-06  Mr. Sam  <mrsam@courier-mta.com>

	* pcp: Initial set of changes for the forthcoming remote calendaring
	proxy:  build pcp/uids.h from the Makefile; added pcpuid() and
	pcpgid() functions; moved auth_myhostname() into a separate module;
	split pcp_open_proxy() function into two functions: pcp_find_proxy()
	(with an extra parameter that specifies which pcp servers to skip,
	we want to make sure a remote proxy connection doesn't multihop) and
	pcp_set_proxy().

2002-02-02  Mr. Sam  <mrsam@courier-mta.com>

	* rfc1035: Fix rfc1035search functions if the original rfc1035
	library call did not use a FQDN.

2002-01-31  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C: BOFHBADMIME=accept implies MIME=none.

2002-01-28  Mr. Sam  <mrsam@courier-mta.com>

	* imapscanclient.c (do_imapscan_maildir2): Fix uninitialized nextuid
	variable when folder without courierimapuiddb is opened read-only.

2002-01-27  Mr. Sam  <mrsam@courier-mta.com>

	* courier/module.esmtp/configure.in: Fix typo.

	* userdb/configure.in: Fix typo.

	* random128/configure.in: Fix typo.

2002-01-25  Mr. Sam  <mrsam@courier-mta.com>

	* courier/doc: documented the BOFHBADMIME option.  Revised the
	makesmtpaccess, courier, and submit documentation.

	* courier/bofh.c (bofh_init): Added the 'opt' bofh configuration
	file keyword (mainly for BOFHBADMIME).  Added the corresponding
	webadmin screen.

	* courier/imapd-ssl.rc.in, courier/imapd.rc.in: cleanup.

	* courier/module.esmtp/esmtpd.in: cleanup.

	* courier/module.esmtp/esmtpd-ssl.in: cleanup.

	* rfc2045/rfc2045.c (doline): Fix incorrect calculation of the
	end of a multipart MIME section that's inside another multipart
	MIME section.

2002-01-24  Mr. Sam  <mrsam@courier-mta.com>

	* webadmin: Added webadmin screen to set up BOFHBADMIME,
	EMSTP over SSL.  Added missing options to esmtpd-ssl.dist.in.

2002-01-22  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C: Environment variable BOFHBADMIME to specify
	handling of invalid MIME mail: "reject" - bounce it, "accept" -
	accept it untouched.  Default stays the same - encapsulate it.

2002-01-21  Gordon Messmer <yinyang@eburg.com>

	* courier.spec.in: Optimize shell profile scripts.

	* Add support script for ESMTP over TLS on port 465.

0.37.2

2002-01-21  Mr. Sam  <mrsam@courier-mta.com>

	* courier/libs/comctlfile.c (ctlfile_openfn): Eliminate <CR> in
	queue control files, which can result in corrupted memory, and
	server restart.  Problem noted by Nat Sakimura <sakimura@marimba.org>
0.37.1

2002-01-17  Mr. Sam  <mrsam@courier-mta.com>

	* courier/submit2.C: Message encapsulation incorrectly set transfer
	encoding on encapsulate replacement, in certain instances.

2002-01-17  Bob Pepin <bob@gms.lu>

	* imap/thread.c (printthread): Fix THREAD REFERENCES.

2002-01-14  Mr. Sam  <mrsam@courier-mta.com>

	* docbook/sgml2html: Fix Docbook/OpenJade silliness that converts
	<note> to an IMG tag to a fixed image file.

2002-01-13  Mr. Sam  <mrsam@courier-mta.com>

	* folder.c (folder_nextprev): Add "Download Message" option.

	* attachments.c (attachments_head): Display a meaningful error message
	if makemime fails.

	* pcp.c (sqpcp_displayevent): Add class=calendarevent to event time
	table.

2002-01-12  Mr. Sam  <mrsam@courier-mta.com>

	* authlib/authldaplib.c (auth_ldap_do): Escape punctuation in
	userid string.

2002-01-11  Mr. Sam  <mrsam@courier-mta.com>

	* courier/sendmail.c: Intelligently set the exit code from sendmail
	based on the SMTP errcode from submit (EX_NOUSER if 5xx, EX_TEMPFAIL
	otherwise).  Mental note: double check anything that runs sendmail,
	to make sure it is happy with the new exit codes.

	* ESMTP: Changed the VERP ESMTP keyword to XVERP=Courier.
	Courier will only send a VERPed message if the remote server lists
	XVERP=Courier.  Postfix in Aug 2001 introduced a different XVERP
	implementation that conflicts with Courier's, even though Courier
	used the VERP keyword since 1999.  Impact: 0.37.1, and higher,
	will not use VERP when talking to 0.37, or earlier, and instead will
	fallback to the non-VERP compatibility mode.  0.37.1 will only use
	VERP with other 0.37.1+ relays.

2002-01-10  Mr. Sam  <mrsam@courier-mta.com>

	* webmail/html/en/eventshow.html: Added some missing tags for
	displaying attachments.

2002-01-08  Tomas Fasth <tomas@euronetics.se>

	* imap/imapd.c (imapidle): Call noop() before entering IDLE.

2002-01-08  Robert L Mathews <rob@tigertech.com>

	* webmail/ispell.c (ispell_run): Handle '?' replies from ispell.

2002-01-08  Oliver Hitz <oliver@net-track.ch>

	* authlib/Makefile.am (libauth-modules):  Fix Makefile build
	with no authentication modules selected.

2002-01-07  Pawel Wilk <siefca@kernel.pl>

	* authlib/authmysqllib.c: Major update to the authmysql driver
	that adds the option to create hand-crafted SQL queries.

2002-01-06  Mark Anthony Lisher <markal@iname.com>

	* courier/cdmsgq3.C (flushmsg): Fix 'courier flush qid'.
