4.00 - 2004.11.16
The changes in 4.0 have been focused on quality assurance. Nearly every bit of code has been reviewed and very little has been left untouched. The primary areas of change are regarding the methods the internal subroutines used to communicate. Now, nearly every method does integrity tests on itself, the input it receives, the results it tried to affect, and returns a result code indicating success or failure. Instead of blindly trying and hoping, actions are tested, and often re-tested to verify their results.
In addition to all the massive internal changes, the test scripts to verify the modules and methods have grown significantly. Version 3.47 had 29 tests, version 4.0 has 84 tests. These tests help assure that future code authors don't inadvertantly make changes that break functionality.
All the modules are now object oriented. This really only matters to other perl progammers who want to use the modules. Each perl module is a package and the interface for that package is an object method. This has allowed me to get rid of all the exported functions. This has the advantage of making it far, far easier for other authors to read the code and find the bits they want to tinker with.
Simscan support has been added and is the preferred scanner, replacing qmail-scanner. I'm sure this will lead to much excitement, joy, and pain. I have more than doubled the amount of documentation related to mail filtering. Most of it is on the mail filtering page of the web site.
Finally, a battery of about 150 tests has been set up. Run toaster_setup.pl -s test and it will run these tests against your mail toaster. It's designed to be very extendible so as common problems creep up, we can add a test for them and make problem resolution easier. My favorite of the tests is testing the mail scanners (simscan & qmail-scanner). It delivers 4 messages (clean, attachment, spam, an virii) to the email admin using each enabled scanner (qmail-scanner, simscan, qscanq, etc) to test the mail scanners configuration.
- admin.cgi
- updates due to dependency changes
- removed SetInstruct, SetHeading, SetLogo
- Apache.pm
- updated subs for new object methods
- Added Apache1 building for Darwin (Mac OS X)
- Added BSD copyright notice
- add apache2_enable to /etc/rc.conf on FreeBSD
(Apache port now requires it)
- add apache2ssl_enable to /etc/rc.conf on FreeBSD
- CGI.pm
- no subs exported, Exporter removed
- contrib/Mail-Ezmlm.patch
- patch to untaint data for use with ezmlm.cgi
- Darwin.pm
- no subs exported, Exporter removed
- DNS.pm
- no subs exported, Exporter removed
- Ezmlm.pm
- no subs exported, Exporter removed
- updated subs for OO methods
- added documentation for each method
- process shell logic rearranged so list function works
on the command line.
- FreeBSD.pm
- added jail_delete
- jail_start was StartJail
- jail_create was CreateJail
- ports_update was UpdatePortsTree
- jail_create - added option to only sync portions of
ports tree relevant to Mail::Toaster
- put timers on prompts so that automated installs
will continue uninterrupted.
- package_install - try a couple more ftp servers
before failing.
- index.cgi
- updates due to dependency changes
- removed SetInstruct, SetHeading, SetLogo
- Logs.pm
- no subs exported, Exporter removed
- mailadmin
- replaced sudo_setup sub with $utility->sudo
- updated all external call with new methods
- maillogs
- updates due to Logs.pm changes
- Makefile.PL - fixed an install bug that caused install
failures on systems where /usr/local/etc didn't exist
- implicitely define the permissions on index.cgi
- implicitely define the permissions on *.conf files
- Mysql.pm
- no subs exported, Exporter removed
- total rework of install logic, much easier to control
what's installed from the .conf file.
- Passwd.pm
- added beginning alpha character check to UserSanity
- added error_code and error_desc to UserSanity result
- BackupMasterPasswd: fully qualify the system util calls
- VerifyMasterPasswd: rewrite logic, added results hash
- users_add was InstallUser
- user_add - use UserSanity tests, return error codes
and descriptions instead of dying, added testing to
verify success before returning.
- added user_archive
- Provision.pm
- new addition
- added subs: new, import, mail, mail_usage,
web, web_check_setup, web_usage, web_get_options,
user, user_archive, quota_set, user_usage, user_options,
dns, dns_usage,
usage, usage_action, check_what_am_i, what_am_i
- Qmail.pm
- no subs exported, Exporter removed
- new subs: new, simscan,
- netqmail_virgin was InstallNetQmailVirgin
- rebuild_ssl_temp_keys was Rebuild_SSL_temp_keys
- qmailctl script new rebuilds the following cdbs:
/var/qmail/users/assign ** NEW
/var/qmail/control/morercpthosts ** NEW
/var/qmail/control/simcontrol ** NEW
~vpopmail/etc/tcp.smtp
/etc/tcp.smtp
- set_supervise_dir was SetSuperviseDir
- install_qmail_groups_users was InstallQmailGroupsUsers
- netqmail was InstallNetQmail
- install_qmail was InstallQmail
- smtp_memory_explanation was ReturnSmtpMemoryExplanation
- get_qmailscanner_virus_sender_ips was GetQmailScannerVirusSenderIPs
- get_list_of_rwls was GetListOfRWLs
- test_each_rbl was TestEachRBL
- build_send_run wsa BuildSendRun
- build_pop3_run was BuildPOP3Run
- test_smtpd_config_values ws TestSmtpdConfigValues
- set_service_dir was SetServiceDir
- build_smtp_run was BuildSmtpRun
- build_submit_run was BuildSubmitRun
- install_qmail_service_run was InstallQmailServiceRun
- smtpd_restart was RestartQmailSmtpd
- send_stop was StopQmailSend
- find_qmail_send_control_dir was FindQmailSendControlDir
- send_start was StartQmailSend
- check_control was CheckQmailControl
- queue_check was CheckQmailQueue
- queue_process was ProcessQmailQueue
- check_rcpthosts was CheckRcpthosts
- config was ConfigQmail
- configure_qmail_control was ConfigureQmailControl
- install_supervise_run was InstallQmailSuperviseRunFiles
- install_supervise_log_run was InstallQmailSuperviseLogRunFiles
- get_domains_from_assign was GetDomainsFromAssign
- control_write was WriteQmailControl
- qqtool.pl
- updates required for new object methods
- Setup.pm
- Updated MaildropFilterFile to support SpamAssassin 3.0
- added spamassassin reporting to mailfilter
- no subs exported, Exporter removed
- new subs: new, simscan,
- misc code updates for increased readability
- added apache2_enable to /etc/rc.conf
- added lots more comment and sample config lines to
fresh installed ~vpopmail/etc/tcp.smtp file
- config_courier - no longer has to muck with rc.d files
- check installed vpopmail version and ask before installing
the same version again
- maildrop_filter was InstallMaildropFilterFile
- vqadmin was InstallVqadmin
- mysqld was InstallMysqld
- mattbundle was InstallMATTBundle
- rrdutil was InstallRRDutil
- ports was InstallPorts
- apache was InstallApache
- vpopmail was InstallVpopmail
- vpopmail_mysql_privs was SetupVpopMysqlPrivs
- squirrelmail was InstallSquirrelmail
- maillogs was InstallMailLogs
- socklog was InstallSocklog
- socklog_qmail_control was InstallSocklogQmailControl
- filtering was InstallFilter
- maildrop_files was InstallMaildropFiles
- config_spamassassin was ConfigSpamAssassin
- config_qmailscanner was ConfigQmailScanner
- qmail_scanner was InstallQmailScanner
- qs_old_array_method was QmailScannerOldScannerArrayMethod
- qs_stats was InstallQmailScannerStats
- clamav was InstallClamAV
- build_clam_run was BuildClamRun
- dependencies was InstallToasterDependencies
- courier was InstallCourier
- sqwebmail was InstallSqwebmail
- qmailadmin was InstallQmailadmin
- ucspi was InstallUCSPI
- ezmlm was InstallEzmlm
- config_courier was ConfigCourier
- config_vpopmail_etc was ConfigVpopmailEtc
- supervise was InstallSupervise
- create_service_dir was CreateServiceDir
- configure_services was ConfigureServices
- create_supervise_dirs was CreateSuperviseDirs
- sysadmin
- new addition
- sysadmin.conf
- new addition
- toaster_setup.pl
- creates objects $setup, $qmail, $utility, $freebsd
and $apache.
- Code updates as necessary for object methods
- added simscan build option
- added jaildelete option
- all section does not install MATT::Bundle
- toaster-watcher.conf
- added filtering_report_spam_spamassassin option
- added rbl_combined_njabl.org blacklist
- install_dcc defaults to "on" now
- toaster_os_release now defaults to 5-stable
- new settings: toaster_version, install_simscan
supervise_rebuilt_notice, install_apache_suexec
filtering_method, rwl_qmail.bondedsender.org
simscan_*, apache_suexec_*
- install_clamav_user defaults to clamav
- smtpd_qmail_queue default=/var/qmail/bin/simscan
- rwl_enable defaults to on
- pop3_max_memory_per_connection = 3 (was 2)
- qmail_scanner_scanners=clamdscan,fast_spamassassin
- install_mysql defaults to 2 now (was 4)
- smtpd_qmail_queue defaults to qmail
- Toaster.pm
- added docs for new and email_send subs
- added email_send sub
- updated docs
- toaster-watcher.conf man page
- added filtering_method notes
- added filtering_debug & notes
- added filtering_report* & notes
- added mysql version build notes
- toaster-watcher.pl
- create $utility and $qmail objects
- updates as necessary for object methods
- only run quarantine processing if it's enabled
and install_qmailscanner is enabled
- TODO - added file
- Utility.pm
- no subs exported, Exporter removed
- new subs: new, graceful_exit
- updated docs for all subs, documented return values
- misc code updates for increased readability
- updated all self referential calls for use with new
OO invocation methods
- drives_get_mounted now returns dev and procfs mounts
- check_pidfile was CheckPidFile
- file_check_writable was CheckFileWritable
- install_from_sources_php was InstallFromSourcesPHP
- file_check_readable was CheckFileReadable
- install_from_source was InstallFromSources
- input is a hashref instead of argument list
- values are passed to install_from_sources as hashref
instead of a list of arguments
- install_perl_module was InstallPerlModule
- is_process_running was IsProcessRunning
- mailtoaster was InstallMailToaster
- get_dir_files was GetDirFiles
- file_write was WriteFile
- file_read was ReadFile
- clean_tmp_dir was CleanTmpDir
- file_delete was DeleteFile
- smarter overall, does checks first
- added sudo rm for non-root deletes
- file_archive was ArchiveFile
- file_append was FileAppend
- get_the_date was GetTheDate
- logfile_append was LogFileAppend
- parse_config was ParseConfigFile
- archive_expand was ExpandArchive
- drives_get_mounted was GetMountedDrives
- yes_or_no was YesOrNo
- added timer option (timeout if no response)
- syscmd was SysCmd
- get_file was FetchFile
- answer was GetAnswer
- added timeout feature if no response
- logfile_append was LogFileAppend
- chdir_source_dir was CdSrcDir
- source_warning was SourceWarning
- sudo was SudoSetup
- will now offer to install sudo for you
- changed sudo warning message to be more clear
- check_homedir_ownership was CheckAllHomeDirOwnership
- fixed so that stat function works
- t/Apache.t
- added 1 more test
- t/CGI.t
- added 1 more test
- t/Darwin.t
- added 1 more test
- t/DNS.t
- added 5 more tests
- t/Ezmlm.t
- added 5 more tests
- t/Logs.t
- added 4 more tests
- t/Perl.t
- added 3 more tests
- t/Provision.t
- created with 3 tests
- t/Qmail.t
- added 5 more test
- t/Setup.t
- added 1 more test
- t/Utility.t
- added 14 more tests
3.46 - 2004.09.21
- toaster-watcher.pl
- added more debugging output when run with -v
- added log file writing feature for Justin
- toaster-watcher.conf
- added install_php
- added toaster_watcher_log
- toaster_setup.pl
- Skip CheckPerl for sources and ports update
- Apache.pm
- added support for php5 to InstallApache2
- Qmail.pm
- Warn (was die) if quarantine dir doesn't exist
- Mysql.pm
- imported flush_logs, get_hashes, shutdown_mysqld,
ListDatabases, and VerifyQuery from mrm
- Updated phpMyAdmin check for new port install dir
- Setup.pm
- honor qmailadmin_spam_command option
- finished support for qmailadmin_spam_option
- don't install qmail in ToasterDep if it exists
- Toaster.pm
- added a space to the salearn invocation
- Utility.pm
- fully qualified two calls to LoadModule
3.45 - 2004.08.09
- Apache.pm
- fixed libww = libwww typo
- admin.tmpl
- added link to Ezmlm CGI
- Ezmlm.pm
- added attribution to Sam Mayes
- FreeBSD.pm
- fixed a minor problem with UpdatePorts sub
- index.tmpl
- fixed javascript for imp login
- Setup.pm
- Install OpenSSL port as part of -s pre
- don't install automake & autoconf (due to port
maintenance, we now let them get installed as
dependencies)
- Utility.pm
- CheckPidFile: since we have a pid file, we might
as well (duh) write the process id into it.
- gracefully deal with it if we can't write to the
directory chose to store the pid file (use /tmp)
- file_check_writable: check the file first, and only
check the enclosing directory permissions if the
file doesn't exist
- be quiet unless $debug is set
3.44 - 2004.08.02
- Apache.pm
- Honor package_install_method for Apache2
- added "WITH_OPENSSL_PORT to apache2 build
- BUILD.pod
- corrected config/contrib typo in build notes
- FreeBSD.pm
- added asking for jail_start params if not provided
- RRDutil.pm
- added a bunch of pod documentation
- support/*.html - updated path to red.gif
- added support/images/red.gif
- toaster_setup.pl
- added jailadd target
- added jailstart target
- toaster-watcher.pl
- now requires Mail::Toaster::Utility 1.38 +
- -v prints out version #
- Setup.pm
- install p5-vpopmail perl module
3.43 - 2004.08.01
- Ezmlm.pm
- initial authoring
- Added contrib/ezmlm.cgi & contrib/ezmlm.tmpl
- requires Email::Valid, vpopmail, & Mail::Ezmlm
- Logs.pm
- Increased reporting for stats email
- Added option for human readable timestamps in smtplog
- Qmail.pm
- UpdateVirusBlocks: rebuild tcp.smtp.cdb file after
adding new IPs to the block list.
- more error reporting if failure conditions detected
- RRDutil.pm
- migrated massive portions of rrdutil.pl into RRDutil.pm
and RRDUtil/HTML|Graph|SNMP.pm for easier maintenance
- many code cleanups and tweaks due to changes
- Setup.pm
- InstallMaildropFilter: exception\n{ needed to be
exception { (on the same line) for some silly reason
- Check filtering_spamassassin_method and don't add
SpamA to qmail-scanner unless it's set to site. Warn
when it's dropped, and why.
- InstallVpopmail: ip_alias_domains only got set when
building from ports. Now it gets set for a source
install as well.
- InstallVqadmin: added new target to toaster_setup.pl
- InstallPort ucspi-tcp (install via ports)
- InstallPort openssl
- Toaster.pm
- forgot to check svc_dir_submit for qmail_supervise
- toaster-watcher.conf
- added install_openssl_port = 1
- toaster-watcher.pl
- creates pidfile (/var/run/toaster-watcher.pid) while
running. Cleans it up upon success exit.
- Utility.pm
- added CheckPidFile subroutine
- Watcher.pm
- CheckPidFile sub added
3.42 - 2004.06.02
- Makefile.PL
- install a toaster specific pkgtools.conf when
"make newconf" is run. This should help save some
folks heartache when using portupgrade.
- watcher.conf
- vpopmail_domain_quotas defaults to off (0)
- snmpd version is now 5 again (port is fixed)
- Watcher.pm
- Many fixes and additional logging and debugging
options for the CleanMailboxMessages sub. It
actually works now.
- CheckToaster now tests to make sure:
- the ~alias files are not empty
- there aren't log/down files in logging dirs
(makes upgrading from dinosaur toasters easier)
- Utility.pm
- Exported FileAppend sub
- moved $os detection to main sub (less redundancy)
- CheckfileReadable, added sub
- CheckfileWritable, added sub
- InstallFromSourcesPHP, added sub
- Prototyped the few subs that weren't already
- Added $debug to get_dir_files,FetchFile,
- InstallPort - added hack for sqwebmail port so
it runs install-configure. Will fix sqwebmail
problems until the port gets fixed.
- ExpandArchive: checks to make sure the file
contents match the file extension and returns
exit codes as appropriate.
- Setup.pm
- AppendFile needed to be FileAppend
- typos: enable-dol should have been enable-eol
- updated InstallClamAV to work with new db files
- ConfigSquirrelmail now supports adding in a dsn
- InstallVqadmin: added Darwin and other OS support
- InstallApache: added Darwin support
- InstallSquirrlmail: added Darwin support
- install pear-DB port for squirrelmail mysql
- Added SetupSquirrelmailMysqlPrivs sub
- InstallFilter: added Darwin support
- InstallMaildropFiles: added Darwin support
- also set RBLSMTPD on local IP blocks
- InstallToasterDep: added more Darwin support
- InstallCourier: added Darwin support
- InstallQmailadmin: added Darwin support
- InstallUCSPI: added Darwin support
- InstallEzmlm: added Darwin support
- InstallVpopmail: don't keep trying to build after
an ExpandArchive failure.
- updated default version to 5.4.4
- Qmail.pm
- moved OS detection to main (less redundancy)
- InstallNetQmail: added Darwin support
- Perl.pm
- CheckPerl will now call InstallPerl if your
perl isn't new enough.
- InstallPerl: added Darwin support and updates
installed perl modules on FreeBSD
- Mysql.pm
- InstallMysql: added Darwin support (via dports)
- moved OS detection into main()
- auto-create .my.cnf if it doesn't exist when we
call ParseDotFile
- Darwin.pm
- better detect location of port program
- Logs.pm
- Fixed bug in RollPOP3Logs where $conf wasn't
being passed to ProcessPOP3Logs
3.41 - 2004.05.14
- CGI.pm, index.cgi, index.tmpl, toaster.conf
- Added Horde/IMP support to index.cgi
- Qmail.pm
- previously we only created the temp
SSL certs if the file was more than a day old.
Now we also generate them if they don't exist.
- Redirection OpenSSL output to /dev/null when
generating temp ssl certs
- Removed dependencies on MATT::Bundle
- Setup.pm
- do $os check globally in the sub
- chown and chmod the generated mailfilter file
- honor system_config_dir in more places
- removed hard coded paths to cgi and web data
dirs (enhanced platform portability)
- better detection of installed Apache
- honor toaster_src_dir in more places
- honor toaster_dl_site from toaster-watcher.conf
- removed hard coded user and gid for vpopmail
- chown defaultdomain to vpopmail user and group
- more OS detection for enhanced MacOS X support
- setup razor-agent for /etc/razor instead of the
default /root/.razor
- Removed dependencies on MATT::Bundle
- Removed ApacheConfPatch (relocated to Apache.pm)
- Utility.pm
- added InstallFromSources sub
- added InstallPerlModule sub
- Removed dependencies on MATT::Bundle
- FreeBSD.pm
- honor toaster_dl_site from toaster-watcher.conf
- imported ruby install section from Setup.pm
- Apache.pm - imported from MATT::Bundle
- Use Mail::Toaster::Perl instead of MATT version
- Darwin.pm - imported from MATT::Bundle
- Mysql.pm - imported from MATT::Bundle
- Passwd.pm - imported from MATT::Bundle
- t/Darwin.t - imported from MATT::Bundle
- t/Apache.t - imported from MATT::Bundle
- t/Mysql.t - imported from MATT::Bundle
- t/Passwd.t - imported from MATT::Bundle
- admin.cgi - added vqadmin
3.40 - 2004.04.23
- INSTALL & UPGRADE
- removed cron entry for update_tmprsadh
- toaster-watcher.pl
- added support to build the temp SSL pems
- toaster.conf
- default log dir was /var/log/qmail
- Setup.pm
- Made InstallRRDutil sub Darwin friendly
- Made UpdatePorts sub Darwin friendly
- toaster-watcher.conf pod
- added mail filtering notes regarding firewall
and initial config steps
3.39 - 2004.04.20
- David doc updates:
- toaster-watcher.conf: remove vpopmail doc note
- toaster.conf and toaster-watcher.conf updates
- David added the preserve_cgifiles option
- UPGRADE.pod: added -s courier
- FAQ.pod
- added migrate Mail::Toaster entry
- added upgrade hard drive entry
- toaster_setup.pl
- all UpdateSrcTree directly
- added -s toaster (install Mail::Toaster)
- added -s maildrop
- toaster-watcher.conf
- updated rbl definitions
- added filtering_spama_discard_score
- added filtering_maildrop_filter_file
- qmail_supervise_pop3 = removed d from pop3d
- added install_clamav_user = qscand
- added qmail_tarpit_count = 50
- added qmail_tarpit_delay = 5
- toaster-watcher.pl
- only rebuild submit/run if it's enabled in .conf
- toaster.conf
- added web_qmailadmin_help_url
- FreeBSD.pm:
- Prototyped subroutines
- Updated UpdateSrcTree and ports_update
no longer require passed variables and expect
a single hashref to be passed.
- More verbose explanation of portsdb -Uu
- Qmail.pm
- Added notes to */run and */log/run files denoting
that they are automatically generated.
- Only restart qmail-smtpd if the run file changed
- Detect and prefer a port installed openssl, else
use the default FreeBSD supplied version.
- UpdateVirusBlocks: strip .cdb off relay cdb path
- StopQmailSend: check for supervise not running
- Check to make sure file exists before copying
- fully qualified call to files_diff
- Utility.pm
- export files_diff sub
- CGI.pm, index.tmpl
- added help ? to qmailadmin
- Setup.pm
- run razor-admin commands after installing razor
to set up razor for use
- chnaged InstallPackage(ruby) to ruby18_static
- removed InstallSources subroutine
- added InstallMaildropFilterFile sub
- better detect installation of ruby 1.8
- use $vpopdir for vpopmail.mysql file location
(was hard coded /usr/local/vpopmail path)
- Makefile.PL
- install toaster-watcher.conf to html/etc/
3.38 - 3.19.2004
- Setup.pm
- Install RRDutil: fixed a typo that caused an
existing snmpd.conf file to get overwritten.
- Fixed InstallPort detection of ruby 1.8
- InstallQmailadmin: help files weren't being
installed in the right place. Also, download
the souces in the src dir so that it only has
to be downloaded once.
- added help version (in case updates come out)
- make the source install put stuff in the same
location(s) as the ports install (consistency)
- Replaced hard coded sf.net urls with .conf var
- Added a splattering of extra debugging output
- prototyped a few of the subs
- Now you aren't forced to exit if you skip an
install section.
- Do a better job detecting database connect failure
(affects upgrades)
- toaster-watcher.conf:
- smtpd_max_memory_per_connection = 35 (was 25)
- smtpd_max_memory = 356 (was 256)
- removed filtering_qmailscanner_(debug, clamav,
spamas, logging) - redundant (qmail_scanner_*)
- removed install_qmailscanner_version (redundant)
- added qmail_scanner_scanners and removed the
individual scanner options - makes it easier for
end users to control qmail-scanner build
- added install_sf_mirror for sourceforge mirror
- updated Courier-IMAP to 3.0.2
- toaster-watcher.pl
- added -d (debug) option
- get run file location from set_supervise_dir
(more portability, compatability with LWQ)
- toaster_setup.pl
- added -s vpopmysql option
- admin.cgi & admin.tmpl: creation
- FreeBSD.pm
- When using jail_create, make sure IP exists
- Qmail.pm
- BuildSmtpRun: if smtpd_qmail_queue isn't set up,
fall back to standard qmail-queue if available
and warn loudly.
- David updated the smtp memory warning message
it now returns a more useful error
- Added set_supervise_dir sub
- Prototyped subroutines
- INSTALL.pod
- added ports -vs- packages note
- updated Apache PHP notes
- added the skip -s filter note
- UPGRADE.pod
- removed extra ' from perl pkgtools note
- added chmod 600 mailfilter command
- BUILD.pod
- created build notes for myself - others will
likely find it useful
3.37 - 03.13.2004
- Makefile.PL: make htdocs detection smarter
- QmailScanner: update to 1.21, resolve issue
with ClamAV usage and other bug fixes.
- cleaned up scanner selection logic
- smarter postmaster detection
- updates for qmail-scanner 1.21
- added install_qmailscanner_stats option
- added qmail_scanner_notify
- added qmail_scanner_localdomains
- added qmail_scanner_block_pass_zips
- Setup.pm: QSS - rewrite some of the php that
doesn't work with register_globals off
- updates to support new qmailscanner options
- Sqweb: honor toaster_http_docs setting
- Added port install option
- set CGIBINSUBDIR for port install
- Added ConfigSquirrelmail sub
- QmailAdmin: honor toaster_cgi-bin and docroot
- install dir defaults in w.conf default to 0
- detect alternate install dirs better
- InstallRRDutil: honor port setting for snmpd
- ability to install snmp v4 or 5
- SourceWarning errors are now non-fatal (makes
the 'toaster_setup.pl -s all' much yummier.
- Added checks for pre-installed ucd-snmp 4
- watcher.conf: make it easy for toaster_setup
to update the system with your preferences
- added cvsup_supfile_ports
- added cvsup_supfile_sources
- added install_net_snmpd (4|5)
- vpopmail_enable_netblocks = 0
- package_method now defaults to ports
- qmail_scanner_postmaster defaults to 0
(uses toaster_admin_email)
- install_vpopmail defaults to v5.4.2
- Logs.pm
- cleaned up usage message
- added yesterday option to maillogs
- toaster.conf
- added qmailanalog_bin setting
- use tnpi logo by default
- docs/pods/LIFE.pod: beginning of Life With
Mail Toaster document
- FreeBSD.pm
- added $debug to InstallPort & InstallPackage
(decrease verbosity unless desired)
3.36 - 03.09.2004
- cvsup-ports: added net-mgmt tree
- updated lots of docs on the web site
- Consolidated docs to a new docs URL:
http://www.tnpi.biz/internet/mail/toaster/docs/
- Updated Makefile.PL to generate more docs pages
and more html pages for the web site.
- add sample w.conf & toaster.conf to web site
- added docs/README-qqtool, docs/README-maillogs
- watcher.pl: added more pod documentation
- watcher.conf: smtpd_max_connections = 10
- added install_apache2_modperl option
- install_dcc is off by default (it often has
build problems)
- install_pyzor is off by default (it takes a
long time to install)
- Qmail.pm: add ReturnSmtpMemoryExplanation sub
returns a more detailed max_memory error
- Added the ability to set concurrencyremote to
a value other than 255 at build time.
- Moved install_qmail and install_netqmail into
Qmail.pm from Setup.pm
- InstallSockLog: honor qmail_dir setting
- If qmail is running, stop it before installing
- Added find_qmail_send_control_dir sub
- honor qmail_service_send from w.conf
- Added additional debugging to InsQmSupervRun
- honor the *_log_maxsize_bytes from w.conf
- moved InstallQmailGroupsUsers into Qmail.pm
- Setup.pm - make cert needed gmake
- InstallClamAV was missing the call to
LoadModule(MATT::Passwd)
- InstToasDep: don't install MySQL if selected
(previously assumed a MySQL 4 install)
- Added "make cgi" target to RRDutil install
- Added clamuko to QmailScanner config options
- QmailScanner: cleaned up scanner selection logic
- smarter postmaster detection
- updates for qmail-scanner 1.21
- InstallApache: fixed the call that was supposed
to start up apache after installing.
- InstallMaildropFiles: honor qmail_log_base
- Start up Courier daemons after installing
- Start up services after running -s supervise
- if ports/net-mgmt doesn't exist, use port/net
- change the $tar calls to ExpandArchive. The method
used is less FreeBSD specific and will work with
systems where tar doesn't support decompression
- removed SourceWarning, duplicated in Utility.pm
- InstallUCSPI: change db.c and replace unistd.h
with sys/unistd.h. Compat issue w/MySQL 4
- Install a symlink in perl/mach subdir to fix the
stupid broken port depenencies in Net::DNS
- Do the MySQL configuration queries if MySQL server
can be connected to. Otherwise print the query
info to the console.
- QSS: fixed up the getGraph?.php files per FAQ
- qqtool.pl - renamed StopQmail & StartQmail to
StartQmailSend and StopQmailSend
- FreeBSD.pm: doc and debugging updates
- Utility.pm: added ExpandArchive sub
- toaster_setup.pl: added -s test and -s all.
- the -s all feature will make a few people very
excited, when they discover it's existence. :)
- pass the debug flag down to many subroutines
- print out a list of options if no -s is passed
3.35 - 03.07.2004
- w.conf: added install_netqmail = 1.05
- added qmail_user_* and qmail_group
- index.cgi, CGI.pm: Added support for v-webmail
- Added David's mighty fine documentation
- lib/toaster-watcher.conf.pod added (perl docs for
toaster-watcher.conf file.
- lib/toaster.conf.pod added (perl docs for
toaster.conf file.
- Mail::Toaster::Conf.pod added.
- Toaster.pm: CleanMailboxMessages now honors
qmail_log_base setting
- Utility.pm: Added GetMountedDrives sub
- FreeBSD.pm: Added jail_start sub
- Added reverse DNS to jail_start. Detects hostname
and starts jail. Mounts proc and devfs if not.
- Added hostname detection to jail_create
- Logs.pm: Isoqlog didn't honor 0 setting. Fixed.
- don't try to chown $logbase if we don't have perm
- SetSyslog: added lots of debugging output
- Qmail.pm:
- ?????_log_method logic was flawed. Fixed.
- Added support for stats & disabled to log_method
- create qmailctl as symlink to qmail script for
LWQ compatability.
- added logic to support smtpd_max_memory option
- enforces smtpd_max_memory setting now.
- don't insert hostname for smtp-auth unless
we're using the .31 version of the patch
- print out what we're doing along the way when
configuring qmail
- enable mfcheck if set in w.conf
- insert postmaster@dom.com into ~alias files
- Setup.pm:
- Added InstallQmailGroupsUsers sub
- Added InstallNetQmail sub
- reordered -s filter section so import stuff gets
installed first.
- package_install_method = ports wasn't working
- snmp stuff moved from net to net-mgmt in ports
- Added support to qmailscanner for uvscan
- Don't install clamav.sh run script
- Add clamav_freshclam_enable="YES" to rc.conf
- InstallMaillogs: check for isoqlog bin before
trying to install it
- toaster_setup.pl: added netqmail target
- INSTALL.pod: added update_tmprsadh call
3.34 - 02.29.2004
- Setup.pm: Fix the error where if /usr/local/src
creation test failed.
- Setup.pm: Added support for --disable-many-domains
in vpopmail build
- Qmail.pm: don't die on vpopmail dir check if user
has disabled vpopmail install in w.conf
- w.conf: added vpopmail_disable_many_domains
- Updated install instructions moving MATT::Bundle
installation down a few levels.
- toaster-watcher.pl - updated pod docs for cleaner
parsing
- Copied MATT::FreeBSD & MATT::Perl into this
package. Removed many MATT::Bundle dependencies
- merged qqtool (1.2) into Mail::Toaster package
- Copied MATT::Utility into this package as
Mail::Toaster::Utility. Removed many MATT::Utility
dependencies
- removed MATT::DNS dependency
- Lots of cosmetic changes to web site
- Added doc/pod/QUOTES.pod
- CGI.pm: removed POST from isoqlog call. Didn't work
with Apache 1.x
- Qmail.pm: install_qmail_service_run, instead of moving
the old */run file, we copy it, and then move the
new one over it atomically. Will prevent end users
from ever seeing a non-harmful error message.
- Setup.pm: Added additional build support for
Darwin (MacOS X)
- Qmail.pm: check for QMS lines with regexp
instead of == comparison operator
- t.conf: added reference to web forum docs
- w.conf: added reference to web forum docs
- maillogs: documentation updates for accuracy
- Setup.pm: Generate subscribeIMAP instead of
fetching it off the tnpi web site.
- Setup.pm: InstallVPopmail - changed InstallPort
subdir from "port" to "mail".
- Added BSD license to source files
- Added LICENSE file
- Update CGI.pm & index.* per David Chaplin-Loebell
request: easier to customize, consistent number of
TD's in results returned from CGI.pm.
3.33 - 02.14.2004
- Setup.pm - InstallMailLogs - create the
/var/log/mail/submit directory
- CGI.pm - moved lots of logic from index.cgi
into CGI.pm for easier maintenance.
- Added many new config options to toaster.conf
to make customizing Toaster::CGI very easy.
- Added toaster_hostname to watcher.conf
- qmail_service_smtps needed to be
qmail_service_submit in watcher.conf
- index.cgi & index.tmpl - added logo info to
toaster.conf file for easier site customization.
- Setup.pm - reworked several subs to allow version
information to be stored in w.conf for courier,
sqwebmail, vpopmail, qmailadmin, qmail
- t_setup.pl - updated to match new watcher.conf
settings
- Setup.pm - Added InstallQmailScannerStats sub
- Updated vpopmail to 5.4.0 (-stable)
- Updated qmailadmin to 1.2.0 (-stable)
- Added toaster_debug to watcher.conf file. Now
watcher script will spit out lots of messages
when it runs. That will prove helpful to some
people as many errors can be get reported.
- Added additional debug calls to watcher.pl
- Added ability to clean up mail messages based
on settings in toaster-watcher.conf. Cleans up
old messages based on admin configurable number
of days. Optionally feed spam and ham messages
through sa-learn.
Added CleanMailboxMessasges call to watcher.pl
Added CleanMailboxMessasges to Toaster.pm
Added maildir_clean_* options to watcher.conf
- Added qs_quarantine_verbose option to w.conf
- Eliminated duplicate virus IP blocks
3.32 - 02.04.2004
- Setup.pm & toaster-watcher.conf - added more
options so fewer questions are asked during
install. Added f-prot virus scanner support.
- CGI.pm - Added Qmail Scanner Statistics option
see https://mail.cadillac.net/
- FAQ.pod - Added 5 new FAQ entries.
- Setup.pm & Qmail.pm - Added smtp-submit. Adds a
smtp listener on port 587 per the SMTP-submission
RFC. (Added for client)
- Setup.pm - scripts now adds snmpd_enable="YES" to
/etc/rc.conf instead of giving you a notice. Also
(re)starts the snmpd daemon.
- Setup.pm - Fixed the regexp that fixes the Ezmlm
Makefile to use MySQL 4.
- Logs.pm - make sure logs_base (var/log/mail) is
owned by qmaill:qnofiles.
- Setup.pm - added package_install_method to w.conf
Now InstallPackage calls can be replaced with
InstallPort based on user prefs.
- Logs.pm - added defaults for all $conf->{} settings
Now, if a user doesn't update their .conf file and
has missing settings, the toaster will behave
reasonably.
- Setup.pm - qmailscanner wasn't fetching the sources
into the right directory.
- Added support directory to the distribution (Mail::
Toaster::CGI support html files)
- Setup.pm - adjusted regexp for ezmlm
- Setup.pm - Added Mail::Audit to InstallFilter SA
- Setup.pm - Added DCC, razor, pyzor, and bogofilter
to InstallFilter section
- added code to support smtps server build
3.31 - 01.19.2004
- Qmail.pm - Don't insert rblsmtpd options in smtp/run
unless rbls are being used.
- Setup.pm - Only install rc.d/pop3.sh if courier
is selected as the pop3 server.
- Added more documentation to address relay questions
posed on the mailing list
3.30 - 12.17.2003
- Setup.pm - Honor install_apache from watcher
.conf file.
- Setup.pm - Added install_qmailscanner_version
- Qmail.pm - Honor rblsmtpd options from watcher
.conf file.
- Logs.pm - Many changes, see seperate file
Changes-MailLogs for details.
- Setup.pm - InstallFilters now starts spamd after
install SpamAssassin.
- Start clamd after install ClamAV
- Setup.pm - InstallVpopmail now honors the
vpopmail_roaming_users setting in .conf
- Setup.pm - InstallSocklog - you can now pass
along the user the logs should be owned by.
- Setup.pm - InstallSocklog: chmod 755 the run file
- Setup.pm - InstallSocklog - added some print
lines so you could tell what it was doing. Added
the $ip argument in case your logging server isn't
on the same IP as mine. ;)
- Setup.pm - FetchFile calls weren't being tested
to determine if they had succeeded. Updated every
call to FetchFile and added code to verify that
the files were downloaded.
- Added more pod documentation and published pod
docs on Mail::Toaster web pages.
3.29 - 12.02.2003
- Mail::Toaster::Logs & maillogs - see seperate
Changes-MailLogs
- Many little aestetic (ie, what output the user
sees when running) changes.
- Moved the MATT::Apache dependency from setup.pl
which caused ApacheCreateSSLCerts to fail. Moved
that call into Mail::Toaster::Setup::InstallApache
- InstallPhpMyAdmin moved into Setup.pm from setup.
updated to remove MATT::Apache dependency.
- Removed the MATT::Mysql dependency from setup.pl
to Setup::InstallMysql. Now you don't get prompted
to install DBI and DBD::mysql when doing clean
installs. This will make it less daunting for
newbies. (No more chicken-egg dependencies)
- InstallClamAV - was trying to chown the ClamAV
databases before they were created.
3.28 - 11.26.2003
- Setup.pm - InstallVpopmail - Added "port" install
option.
- Setup.pm - Added InstallVqadmin
- Setup.pm - InstallQmailadmin - added port install
option (install from FreeBSD port)
- Setup.pm - InstallCourier - added options to port
build to toasterize it.
- Updated toaster patch to 2.7 (2.6 + chk-usr)
- added t/maillogs.t, t/toaster_setup.t, and index.t
- added doc/pods/Changes-MailLogs.pod
- maillogs - misc updates
- Logs.pm - misc updates due to movement of subs from
maillogs to Logs.pm
- added cvsup_server_country (pass to cvsup_fastest)
- chmod 640 for qmail/control/sql and SSL certs
- Setup.pm - Added option for portupgrade install and
added to toaster-watcher.conf-dist
- Setup.pm - InstallPorts - use default toaster URL if
none supplied
- Setup.pm - InstallToasterDeps - install Net::DNS
DBI, and DBD::mysql, mysql-client(3.23)
- Setup.pm - Added InstallSources
- Setup.pm - install_qmail - configure $qmaildir, $vpopdir
and $mysql (lib include dir) based on .conf settings.
- toaster-setup.pl - do not pass $toaster to InstallPorts
- toaster-setup.pl - added sources target (update FreeBSD)
3.27 - 11.25.2003
- modify the ezmlm-idx file to use Mysql 4 lib if
chosen (default) in toaster-watcher.conf
- Create qmail/control/locals if exist non-existant
- Setup.pm - InstallMaildropFiles now has a default
toaster URL if one isn't passed.
- toaster_setup.pl - reverted back to qmailadmin
1.0.27 (from 1.0.30) due to build problems.
3.26 - 11.24.2003
- toaster_setup.pl - added -s phpmyadmin
- Qmail.pm - added pod documentation for each sub
- Setup.pm - added pod documentation for subs
- updated qmailadmin to 1.0.29
- updated vpopmail to 5.3.30
3.25 - 11.22.2003
- Fixed call in InstallPort for cvsup_fastest
- InstallRRDutil will delete sources from previous
builds before installing
- InstallMATTBundle will delete sources from previous
builds before installing
- Significant updates to toaster-watcher.pl. It now
also generates smtp and pop3 run files for qmail.
See it's Changes-Watcher for details.
- InstallRRDutil now tests for snmpd_conf in rc.conf
starts snmpd if it's there, warns otherwise
- Added apacheconf target to toasterize httpd.conf
- Added rrdutil target to Setup.pm (RRDutil)
- Added apachessl target to Setup.pm
- Added mattbundle target to Setup.pm (MATT::Bundle)
- Added maillogs as Mail::Toaster::Logs (still needs
a fair amount of work)
- Got the rest of the variables out of toaster_setup
and into the config file where they belong.
- BuildSMTPRun will now create it's supervise dir if
it doesn't already exist.
3.23 - 11.21.2003
- Merged several programs into the Mail::Toaster
package. Including is toaster-watcher,
toaster_setup, and index.cgi. I expect to bring
qqtool, maillogs and a few other apps into this
module as well.
- Added Mail/Toaster/Qmail.pm (from MATT::Bundle).
- Added Mail/Toaster/DNS.pm (from MATT::Bundle).
- Major, major reworking of the -s supervise and
-s maillogs install portions. They now honor oodles
of your preferences from toaster-watcher.conf. The
.conf file also has a bucketful of new options as
well. You'll want to merge in the new changes.
- removed a lot of the die calls and made them
warnings instead.
- Removed a lot of assumptions that the code made. Now
that I have config settings, in know how things
should be and can act accordingly.
- Whether or not service/pop3 exists will now depend
on the pop3_daemon preference
- Moved toaster_setup subs to Mail::Toaster::Setup.pm
- Lots and lots of code changes due to seperation
- Fixed a bug in ConfigVmysql where db auth settings
weren't being set in the vmysql.h file
- Now writes out the vpopmail.mysql file for db auth
in vpopmail 5.3.2? and higher
- Now writes out supervise/pop3d/run based on settings
in toaster-watcher.conf (instead of defaults)
- Now writes out supervise/smtp/run based on settings
in toaster-watcher.conf (instead of defaults)
- InstallSqwebmail - expect and deal properly with bz2
- InstallCourier - expect and deal properly with bz2
- deleted InstallMysql (it's in MATT::Utility::Mysql)
- Updated qmail to use new version 2.6 patch (based on
Bill Shupp's toaster patch
3.22 - 11.07.2003
- Added SSL pem creation to the ConfigCourier sub
- Updated the toaster installation page.
3.21 - 11.06.2003
- Fixed the InstallVpopmail routine so that mysql
values get used when pulled from watcher.conf
- InstallFilter creates /var/log/mail/maildrop.log
and sets ownership on it to vpopmail
- Moved ports_update to MATT::FreeBSD
- Added fastest_cvsup feature to ports_update
- Added more settings toaster-watcher.conf to override
default values supplied in toaster-setup.pl
3.20 - 10.31.2003
- Now reads the toaster-watcher.conf file and pulls
config values from there. Don't be surprised when
it doesn't ask you a slew of questions any longer. :)
- Added CVS id tag to toaster_setup.pl
- Added perl module files and released as Perl module.
- Updated to support qmail-scanner 1.20
- Added MATT::Qmail dependencie (moving more code into
MATT::Bundle for increased platform portability.
3.1.1
- updated dl_site to use tnpi.biz
- added is_newer sub
- updates to maillogs subs for increased reliability
- mysql_install is now MUCH smarter. Should make
things smoother for newbies
- remove osirusoft from list of RBLs
- removed FetchFile (get from MATT::Utility)
- removed CdSrcDir (get from MATT::Utility)
3.0.2 07.13.2003
- Added additional POD documentation
- Moved InstallApache* into MATT::Apache
- Added creating of /var/log/apache to InstallApache2
- Additional notes for QMAILQUEUE usage for qmail-scanner
- Moved InstallMysqlTool to MATT::Mysql
- Moved InstallGroup and InstallUser to MATT::Passwd
- Moved InstallPackage, ports_check_age, and
InstallPort to MATT::FreeBSD
- Moved YesOrNo, FindTheBin, SysCmd, ReadFile,
WriteFile to MATT::Utility
3.0.1 07.10.2003
- Fixed a permissions error with $prot/log/run files
- Added MATT::Utility dependency, removed subs answer,
ReadFile, WriteFile, SysCmd, FindTheBin, YesOrNo
3.0.0 06.16.2003
- Added --enable-rebuild-tcpserver-file=n to InstallVpopmail
- Updated vpopmail to version 5.3.20 (devel)
- Updated qmailadmin to 1.0.21
- Enable spam options in qmailadmin per filtering recipe
- Added filtering page for assistance in setting up filtering
2.7.8 05.22.2003
- Updated maillogs sub to run create_supervise_dirs
- Commented out adding service/*/log/down files
(Beginning to trend back towards using multilog)
05.21.2003
- Removed mysqltool from setup page
2.7.6 05.12.2003
- Update ucspi-tcp MySQL patch with query change submitted
by Flavio Curti (curti@cyberlink.ch). Allows you to put
entries for subnets in the MySQL relay table with a NULL
timestamp and remove the necessity of putting your relay
netblocks in a tcp.smtp.cdb file.
2.7.5 05.02.2003
- Added InstallQmailScanner subroutine
2.7.2 04.23.03
- Fixed InstallQmailAdmin so that help files get
installed properly on new installs
- Updated so courier files get chmod to 755
- InstallVpopmail now asks about qmail-extensions
- InstallVpopmail - added =y to --enable-valias
- InstallFilter - added clamav port install
2.7.1 04.15.03
- Fixed install_qmail so sources get removed before rebuild.
- Qmail-smtpd is now chowned to vpopmail if you
are using chk-usr functions.
2.7 - 04.09.2003
- Misc updates for FreeBSD 4.8
- Added Apache2 install section
- Apache2 also installs mod_php4 and mod_perl2
- Install cvsup-without-gui instead of cvsup
- Install perl5 from ports (5.6.1)
2.6.7 03.28.03
- ports_check_age - fixed URL for cvsup-ports file retrieval
- Ask if password learning should be enabled
- Ask what type of vpopmail logging is desired.
- Ask user if domains are owned by users other than
vpopmail. If so, run the qmail-smtpd daemon as root.
- Updated mod_ssl to 2.8.14
- Added domain quota question to Vpopmail interview
- copy vlimits.h file to ~vpopmail/include/
- fixed typo (s/answer/ans) in InstallVpopmail
2.6.6 03.26.03
- Updated vpopmail version to 5.3.19
- Updated qmailadmin to 1.0.15
2.6.5 03.19.03
- Updated qmail-smtpd run file with ideas from LWQ
- Changed URL for mysqltool.index.txt file
2.6.4 03.13.03
- $supervise/send/log/run how gets a working config file
- Apache build goes a little farther, after getting input
- Check for src earlier in qmail install
2.6.3 03.11.03
- Updated to use qmail-toaster patch 2.4
(added qmail-smtpd-chkusr patch)
2.6.2 03.08.03
- Added interview for $service files so they don't need to
be hand edited after install
- Added interview for netblocks (tcp.smtp) list that you
need to relay for.
- Build $qmaildir/service files (smtp/run, pop3/run)
based on user input instead of my defaults.
- Bugfix in RemoveOldApacheSources
- Lots of reporting added to install_supervise and it's
new list of subs
- Don't bother re-installing qmailadmin help files if they
are already present.
2.6.1 03.06.03
- Updated qmailadmin to 1.0.12
- Moved ChangeLog to web page
2.6 - 03.06.2003
Updated qmailadmin to 1.0.12
Complete code review and updates to toaster_setup.pl (2.6).
Lots of overall code updates to nearly every sub (audit)
More build time interview questions.
Code is now more portable (for a future on other platforms)
Ironically, there was enough duplication that despite adding
a bunch of fresh code, the resulting script is now smaller
Wrapped shell commands in a SysCmd sub with error checking
FetchFile calls are clean enough now to use any fetching
tool (instead of just fetch). (portability)
InstallPackage & InstallPort report better
Install(User|Group) use get_*_nam functions
ConfigQmail asks for SQL password instead of writing
default value to $qmail/control/sql
InstallEzmlm doesn't overwrite preinstalled config files
Install stuff into $httpdir/data/mail if it exists
Moved lots of redundant code from subs into SourceWarning
Moved Personal Preferences to the top of the script
2.5 - 02.07.2003
Updated qmailadmin to 1.0.9
Updated vpopmail to 5.3.16
Updated toaster_setup.pl script to 1.7
Dynamically configure qmailadmin based on answers to
a series of questions. Now you're not necessarily
stuck with my choices. :)
Added install_vpopmail subroutine with lots of
questions for user customizability
Added read_file and write_file subs
Made sure apache doesn't compile using old sources
Added squirrelmail install
Added cvsup (auto install, configure, and run).
Added yes_or_no subroutine
Added find_the_bin subroutine to make script more
self configuring and more portable.
Updated a bunch of system calls (rm, mv, and ln)
to use perl functions for increased portability.
Added socklog install function
Added filtering section
Made install section cleaner and prettier
Added Apache install section
Added defines: $toaster, $httpdir, $confdir
Added Mysqltool install section
Added qmailadmin install section
Added sqwebmail install section
Added courier imap build section
Added check for stale ports tree
Disable the $local/rc.d/qmail.sh file that is installed
Fixed permission of $qmailcontrol/bin/servercert.pem
Moved all $fetch calls into sub fetch_files
Made the supervise directory creation much more robust
Added more error checking and feedback to install_qmail
Added install of ucspi-tcp to script
Added better checks for user and group entries
Updated qmailadmin with MySQL replication and quota fixes
updated sqwebmail instructions, version to 3.3.7
Updated qmail patch (2.3) to use newer smtp-auth 0.31
Removed badmailfrom and badrcptto patches from qmail
Updated toaster_setup.pl script to v1.4
Made the qmail binary install honor the $qmaildir
Updated to smtp_run-1.1 (qmail-smtpd uid is now vpopmail)
Owner of /var/qmail/control/sql needs to be vpopmail
2.2 - Updated qmail, vpopmail, qmailadmin.
cgi-bin dir changed to more normal location of cgi-bin.
qmailadmin 1.0.6 - with quota support which I hacked in
Vpopmail 5.3.5 - smth-auth works. :-) .
patch - added qmailqueue & qpop3d maildir++ quota patches
qmailqueue - Added qmailqueue support to my toaster patch
toaster_setup.pl - moved a bunch more of the config
and install steps into the script
2.1 - Updated autoresponder, Vpopmail, qmailadmin, and courier-imap.
Autoresponder is now installed from ports instead of as a package. As of 2/21/02 if you update your ports tree and install, you'll get version 2.02.
Vpopmail is updated from 5.0 to 5.2. You can simply install 5.2 right over top of 5.0 with no consequence.
Qmailadmin is updated from 1.0 to 1.02. Just install right over the old one.
Courier-IMAP is updated from 1.3.12 to 1.4.2. Adds quota support. Note the additional configuration steps in the courier install section of the toaster recipe.
2.0 - Latest versions of all programs, everything works, fun changes.
Added TLS support to qmail-smtpd
Updated smtp control file accordingly.
Vpopmail updated to version 5.0
Courier-IMAP updated to 1.3.12
Sqwebmail updated to 3.2
Updated ucspi-tcp patch to include rss patch to rblsmtpd
Updated my qmail-toaster patch to use SMTP-AUTH 0.30 from http://members.elysium.pl/brush/qmail-smtpd-auth/
Changed Apache build to statically include mod_ssl, mod_php, & mod_perl. Mod perl fails when loaded dynamically and after toiling for many hours, I gave up and compiled it statically. I learned many others before me had gone down that road and failed as well.
1.7
MySQL authentication, SMTP tarpitting, & SMTP-AUTH support.
1.6
SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. Invoke tcpserver with the -S flag to utilize the new feature.