2016-01-17 Version 9.2

This release fixes some bugs reported since last release and adds several
additional milters and useful features.

  * All column in detailed views are now sortable.
  * Add support to systemd journalctl with the JOURNALCTL_CMD configuration
    directive or the -j command line option.
  * Allow parsing of log files coming from multiple host.
  * Add support to postfix clamsmtpd virus and spampd detection.
  * Add report of subject in detailed view when available in log file.
  * Add date before hour in the detailed report.
  * Add explanation about how to rebuild reports in documentation.
    
There's also new command line parameters or configuration directive:

  * Add -j | --journalctl command line option to specify the journalctl command
  * Add -F | --force command line option to be used instead of -f | --full to
    parse full log file without taking care of the history file LAST_PARSED.
    This is useful if you always have log files with fresh entries and log
    files coming from multiple host. Before that you had to remove the
    history file before parsing a new log.

Here is the full list of change and credits:

  - Update de_DE translation file. Thanks to Wolfgang for the patch.
  - Fix wrong ExecStop command. Thanks to fmalfatto for the patch.
  - Add sorttable.js javascript to be able to sort on each column in detailed
    views. Thanks to Siervo Andrey Amado Benavides for the patch.
  - Fix systemd start script
  - Allow yyyy-mm-dd hh:mm:ss in history timestamp for journalctl together
    with iso format: yyyy-mm-ddThh:mm:ss.
  - Prevent redefining --since journalctl option if it is already given in
    JOURNALCTL_CMD or --journalctl.
  - Add documentation about JOURNALCTL configuration directive and the -j or
    --journalctl command line option.
  - Fix command line option in uppercase and not.
  - Fix wrong status and spam rule for spam rejected by eXpurGate milter.
    Thanks to Tiyma Ahmed for the report.
  - Fix Postfix/Amavis discarded spam and virus that appears with status sent.
    Thanks to Miquel Angel Daniel Veny for the report.
  - Fix long spamassassin messages that are not detected as spam by sendmail
    analyzer. Thanks to Stefan Berger for the patch.
  - Add information about the FORCE configuration option and -F command line.
  - Add -F | --force command line option to be used if you always have log
    files with fresh entries and log files coming from multiple host. Thanks
    to Sladjan Andjelic for the feature request.
  - Update Debian package and documentation in packaging/README. Thanks to
    Nicolas Quiniou-Briand for the report.
  - Update copyrights.
  - Fix start script, it was not killing off the process, added -s kill. Thanks
    to Gary McLean for the patch.
  - Add support to sendmail milter with subject rewriting.
  - Fix an other issue in message delivery direction. Thanks to Gary McLean for
    the report.
  - Add date before hour in the detailed report.
  - Add date with hour to the CSV details file output. Thanks to Tsioritafita
    Rajahanisainana for the report.
  - Remove --duplicate option, it is too much confusing. Fix case where SA
    doubled recipient entries with the same message-id but not the same MTA id.
  - Fix postfix double delivery by using "queued as" and "orig_queue_id".
  - Fix case where sender relay was not checked against LOCAL_DOMAIN to find
    mail incoming direction. Thanks to Kulikov Dmitrii for the report.
  - Fix case to avoid double when postfix send the message locally to a plugin.
  - Change MTA_NAME default value to add spampd: sm-mta|sendmail|postfix|spampd
  - Add support to postfix clamsmtpd virus and spampd detection. Thanks to
    Zdenek Zamecnik for the feature request.
  - Add subject field to CSV download.
  - Add report of subject in detailed view when available in log file. Thanks
    to Tsioritafita Rahajanisainana for the feature request.

2015-04-18 Version 9.1

This release fixes one year of reported issues, adds several additional milters
and useful features.

  * Add CSV export of top senders and recipients as well as search results.
  * Add STARTLS status report in the Status report.
  * More translation file: Russian and Italian.
  * Add DSN report for postfix log.
  * Add support to Exim log file.
  * Add support to milter-limit reported in Top Rejection & Events report
    with status starting with "has exceeded ...".
  * Improve incremental mode by seeking directly to last parser position
    in the logfile after last run. It will also auto detect file rotation
    and fall back to the start of the file when the file has changed.
  * Add postfix warning into SysErr reports.
  * Add support to spampd spam detection.
  * Add information about settings for sendmailanalyzer into systemd service.
  * Add ruleset=check_relay with reject=550 5.7.1 to the spam reports.

There's also new command line parameters or configuration directive:

  * --duplicate command line option to use to fix a bad Postfix behavior
    which use different MTA id per recipient for a single message. Note that
    when enabled, you will not see messages with multiple recipient.
  * Add new configuration directives EXCLUDE_FROM, EXCLUDE_RELAY and EXCLUDE_TO
    to not report emails from/to the specified list of senders/recipients or
    from senders relay.
  * Add WEEKLY_FREE_SPACE configuration directive to force sa_cache to archive
    or remove data file each weeks instead of default per month.

Here is the full list of change and credits:

  - Detailed views are now also downloadable as CSV file. Thanks to Tsioritafita
    Rahajanisainana for the feature request.
  - Fix computation of starttls graph. Thanks to MAYER Hans for the report.
  - Allow download of Top senders and recipients in CSV format from a link [csv]
    after the column header. Thanks to Tsioritafita Andre Rolly Rahajanisainana
    for the feature request.
  - Add russian translation. Thanks to sef1976 for the patch.
  - Add --duplicate command line entry to fix a bad Postfix behavior which use
    different MTA id per recipient for a single message. Note that when enabled
    you will not see messages with multiple recipient. Thanks to Olivier Zolli
    for the report.
  - Add STARTLS status report. Thanks to Hans Mayer for the feature request.
  - Fix documentation about MAIL_GW and MAIL_HUB where ip addresses must be
    used instead of DNS name. Thanks to Roger for the report.
  - Fix comment to MAIL_GW and MAIL_HUB where ip addresses must be used instead
    of DNS name. Thanks to Roger for the report.
  - Remove rejected mail from top senders statistics. Thanks to Michal Paulus
    for the report.
  - Add DSN report for postfix log. Thanks to Wolfgang for the feature request.
  - Fix DNSBL entries are missing if the from=<>. Thanks to Olivier Zolli for
    the patch.
  - Update configuration file in debian directory.
  - Add Italian translation file. Thanks to Luca Sasdelli for the patch.
  - Fix unrecognized virus infection log report produced by amavis-new. Thanks
    to Olaf Menzel for the report.
  - Fix case where incoming message was not counted in messaging flow.
  - Fix spamd sendmail parser, some messages was lost. Thanks for Sir Y Dog
    for the report.
  - Remove README.RPM from slackBuild, the file no longer exists. Thanks to
    Syr Y Dog for the report.
  - First work on adding support to Exim log file.
  - Add new configuration directives EXCLUDE_FROM, EXCLUDE_TO and EXCLUDE_RELAY
    to not report emails from the specified list of senders or senders relay.
    Thanks to Dave Wreski for the feature request.
  - Fix rejection Top status with Domain of sender address....
  - Fix Top DSN wrong report count. Unknown senders are marked as unknown.
    Thanks to Paul Cantle for the report.
  - Fix Top DSN details reports. Thanks to Paul Cantle for the report.
  - Fix enhdnsbl rejection, they should be reported as DNSBL spam now. Thanks
    to Piotr Bodnar for the report.
  - Limit Top rejection status to any text before : character.
  - Fix some status cleanup.
  - Add support to milter-limit. Will be shown in Top Rejection & Events report
    with status starting with "has exceeded ...". Thanks to Juan Carlos Sanchez
    for the feature request.
  - Fix missing sender relay when no DNS name was appended in front. Thanks to
    Juan Carlos Sanchez for the report.
  - Exclude authid single message from System messages report.
  - Add aggregating of STARTTLS error.
  - Fix a possible case where Amavis Hits score was not stores.
  - Make systemd happy with sendmailanalyzer.pid file. Thanks to Piotr Bodnar
    for the report.
  - Test log file size before seeking in incremental mode.
  - Accelerate incremental mode by seeking directly to last position of the
    parser in the logfile after last run. It will also auto detect file rotation
    and fall back to the start of the file when the file has changed.
  - Some documentation fixes. Thanks to Igor Vuk for the patch.
  - Add WEEKLY_FREE_SPACE configuration directive to force sa_cache to archive
    or remove data file each weeks instead of default per month. This will help
    saving space on huge MTA.
  - Fix summarization of some status messages.
  - Add error message when the archive command can not be achieved.
  - Add postfix warning into SysErr reports. Thanks to Mathieu Chateau for the
    feature request.
  - Add support to spampd spam detection. Thanks to Thibaut Varene for the
    feature request.
  - Recalculate current time at each line to compare log entry with current date
    to search the year used in the log file.
  - Add information about settings for sendmailanalyzer into systemd service.
    Thanks to fmalfatto for the report.
  - Add ruleset=check_relay with reject=550 5.7.1 to the spam reports. Thanks
    to Ricardson Williams for the report.

2014-03-15 Version 9.0

This is a major release with lot of major enhancements and a full year of bugs
fixes. There is a complete remove of dependency to libgd and GD::Graph* Perl
modules, graphs are now drawn using the flotr2 javascript library. It adds
support to ipv6 addresses, a new week view in the calendar menu. It also restores
reports on postgrey and adds support to policyd-weight, sqlgrey and maiad plugins.
A new directive EXCLUDE_TO to be able to exclude some destination addresses from
reports and new Brazilian Portuguese translation file pt_BR.

	- Fix click on flotr2 graph and update javascript file.
	- Fix issue when parsing logs with [ID 801593 mail.notice] field.
	  Thanks to Hans Mayer for the report.
	- Fix display of month instead of minutes of the hour in graphs.
	  Thanks to Alain Deleglise for the report.
	- Add support to sqlgrey output. Report will be added under the
	  Postgrey menu. POSTGREY_NAME set by default to postgrey|sqlgrey.
	  Thanks to Dave Wreski for the feature request.
	- Restore and fix postgrey statistics that was broken since 8.1.
	- Add new directive EXCLUDE_TO to be able to exclude from reports
	  some destination addresses. Thanks to Bo Larsson and Dave Wreski
	  for the feature request.
	- Replace value of AMAVIS_NAME configuration directive with: amavis|maiad
	- Fix parsing of maiad spam/virus report. Thanks to breakaway for the
	  report.
	- Fix rpmlint bogus date warning. Thanks to Igor Vuk for the patch.
	- Remove a rogue tab character from .spec, add pt_BR translation.
	  Thanks to Igor Vuk for the patch.
	- Change the README and --help output to match the default DELAY value.
	  Thanks to Igor Vuk for the patch.
	- Change DELAY description to match the default value of 5 seconds.
	  Thanks to Igor Vuk for the patch.
	- Add support to postfix/policyd-weight antispam. Thanks to Michael
	  Seevogel for the feature request.
	- Change all instances of 'coma' to 'comma'. Thanks to Igor Vuk for
	  the patch.
	- Fix report of SASL SMTP AUTH. Thanks to Michael Seevogel for the
	  report.
	- Fix some errors in cron lines. Thanks to Dominique Fournier for the
	  patch.
	- Add debian repository to allow building deb package with
	  "dpkg-buildpackage -rfakeroot" and remove the old repository
	  packaging/debian/. Thanks to Dominique Fournier for the patches.
	- Remove reference to GD::* perl modules, they are no more used.
	- Add SPAMD_NAME details to documentation.
	- Add SPAMD_NAME directive to default configuration file.
	- Add --spamd explanation to usage.
	- Add Brazilian Portuguese translation. Thanks to Paulino Michelazzo
	  for the translation patch.
	- Fix the double entries generated by some postfix plugins. Thanks
	  to Alain Deleglise for the report.
	- Fix spam details in amavis parser.
	- Fix some syserr message and remove report of virus from the
	  Messaging Status report page.
	- Add spam details detected by spamd into Spamd-Milter report.
	- Remove Spam from the Messaging Status report.
	- Fix percentage of Other in Messaging status report.
	- Fix several minors bugs and add support to clamav-milter with
	  postfix. Thanks to Dominique Fournier for the feature request.
	- Fix unparsed spamd virus detected line when the autolearn field is
	  not just after the mid field. Thanks to Marcio Veloso  for the report.
	- Add support to ipv6 addresses. Thanks to Dominique Fournier for the
	  feature request.
	- Change french internal direction translation from Grp to Int.
	- Remove set direction about uucp like localhost.
	- Update spec file with new and removed files.
	- Add +doc/sa_cache.pod and removed -doc/sendmailanalyzer.3
	- Add sa_cache cron job documentation on doc/sa_cache.pod and remove
	  man page from git repo as they are automatically generated at install.
	- Add missing doc/sa_cache.pod file. Thanks to Javier Ariznabarreta
	  for the report.
	- Fix double count of postfix messages sent when email "path" would be
	  this: Internet -> spamd -> postfix -> amavisd -> uucp mailbox ->
	  uucp pickup -> Exchange. Thanks to Javier Ariznabarreta for the report.
	- Fix pie graph with other status report.
	- Add uucp relay as internal delivery
	- Change WeekDay translation that should start with Sunday.
	- Cosmetic change to graphs.
	- Fix cleanup of RBL rejection message.
	- Fix major bug with number of senders and recipient.
	- Add some cosmetic change to calendar menu.
	- Add week view on calendar menu.
	- Remove GD perl modules from requirements as well as tje TTFONT
	  configuration directive.
	- Remove obsolete file cgi-bin/grafit.cgi from source tree.
	- Replace the use of GD::Graph Perl library by the flotr2 javascript
	  graphic library.
	- Remove the use of space HTML escaping in language files (%20), they
	  were used with the obsolete GD::Graph Perl library.
	- Update documentation about URL_JSCRIPT.
	- Add URL_JSCRIPT to specify default url to the flotr2 javascript
	  library. Add auto install of flotr2.js.
	- Add flotr2 javascript library to build graphs.
	- Fix broken HTML code on auth mechanism report.
	- Fix recipient relay with Postfix. Thanks to Walter Huf for the patch.
	- Do not delete an entire message record just because one of the
	  recipients goes to a skipped relay. Thanks to Walter Huf for the patch.
	- Remove some posfix debug or info messages from rejection reports.
	- Clear extra information from DNSBL spam detail report.
	- Force vertical alignment on top of columns on Top Statistics.
	- Remove some postfix/postscreen information from reject report. Thanks
	  to daks-ua for the report.
	- Fix case where recipients were not stored with amavis spam and virus
	  detection.
	- SA will now show top recipients in topvirus view even if they was not
	  sent.
	- remove temporary debug information.
	- Fix case where amavis spam details was not collected. Thanks to grufo
	  for the report.
	- Fix documentation about Postfix that is no fully supported. Thanks to
	  Comprax for the report.
	- Fix case where virus with Amavis and clamd are reported twice. Thanks
	  to Paul Cantle for the report.
	- Renamed PID_FILE directive into PID_DIR to be less confusing and fix
	  default path, backward compatibility with old configuration file is
	  preserved. Thanks to Thomas Merlin for the report.
	- Reorder command line options in usage() display.
	- Fix case where log line can appear in the future to sendmailanalyzer
	  with automatically subtracts one year if sendmailanalyzer detect that
	  the date is in the future from the time it is run or the date from
	  the LAST_PARSED file. Thanks to Damian Lukowski for the report.
	- Add the -y | --year command line option that can be use to force the
	  year of the log as syslog doesn't log the year in the date on most
	  distribution.
	- sa_report.cgi has also been modified to add default current year in
	  the select box if not present as it always goes to the current day
	  by default.
	- Improve speed of incremental_check() function.
	- Add man page for sa_cache. Thanks to Lars Vogdt for the patch.

UPGRADE: You need to reinstall all file and rebuild your configuration file from
the new default configuration file. Data files may not need to be remove, backward
compatibility should be preserved.


2013-01-05 Version 8.7

	- Fix major bug with new year change when LAST_PARSED has a last line
	  parsed from December. Thanks to Richard Victor Correia for the report.
	- Fix the .sample configuration file install in doc/ folder when
	  building an RPM. Thanks to Igor  Vuk for the patch.

UPGRADE: Only the sendmailanalyzer Perl script and the .spec file have changed.
If you found the bug about new year change, you have to:

	1) stop sendmailanalyzer if it runs as daemon
	2) replace the content of the LAST_PARSED file generated into the output
	   directory with the following:
		Jan  1 00:00:00 -
	   note the double space between Jan and the number 1.
	3) replay all the log file generated from the new year with command:
		/usr/local/sendmailanalyzer/sendmailanalyzer -f -b -i -l logfile
	4) if you use the daemon mode, restart sendmailanalyzer.

2012-12-27 Version 8.6

	- Fix details search of top sender and status in top rejected stats.
	  Thanks to Arthur Gouros for the report.
	- Add SKIP_RCPT_RELAY configuration directive to bypass local delivery
	  messages that double the count of messages. Default is dovecot.
	  Thanks to Richard Victor Correia for the report.
	- Change install to copy sendmailanalyzer.conf.sample into the doc/
	  directory and copy sendmailanalyzer.conf into etc/ if none already
	  exist. Thanks to Igor Vuk for the report.
	- Fix search of rejected message on domain. Thanks to Arthur Gouros
	  for the report.
	- Fix virus name storage with spamd-milter quarantine detection.
	  Thanks to Bill V for the report.
	- Change menu "Rejection & Errors" into "Rejection and Events".
	- Fix missing system message when it was registered at same time than
	  a previous one.
	- Reorder command line option, short before long.
	- Fix top authid with anonymous TLS SMTP auth.
	- Add support to syslog high resolution timestamp. Thanks to Richard
	  Victor Correia for the report.
	- Replace .orig extension into .sample.
	- Add anonymous TLS connection established into auth report instead,
	  of errors/events report. Thanks to Arthur Gouros for the suggestion.
	- Fix top domain name search in top rejected view. Thanks to Arthur
	  Gouros for the report.
	- Change in .spec file to reflect the config file renaming. Thanks to
	  ivuk fro the patch.
	- Add missing spamd historical report in sa_cache. Thanks to Bill V
	  for the report.

UPGRADE: you may reinstall all files and edit your configuration file to add the
the SKIP_RCPT_RELAY directive and set its value to dovecot if you are using it
for local delivery.


2012-12-16 Version 8.5

	- Fix spam report with spamd and add spamd to the SPAM_TOOLS configuration
	  directive. Thanks to Bill V for the report.
	- Update documentation about start script and signal handling.
	- Add new starter file for distribution using systemd at init and a README
	  file to explain how to install those scripts. Thanks to Durwin for the
	  report.
	- Fix typo in regex pattern of spamd lines detection. Thanks to Bill V for
	  the report.
	- Fix removing of pid file which in some case was not removed.
	- Fix signal handler on SIGTERM.
	- sendmailanalyzer.conf will now be installed as sendmailanalyzer.conf.orig.
	- Fix issue in spam message detection. Thanks to Stefan Berger for the report.
	- Fix case where recipient was not collected on postfix servers because the
	- Sent status in in lower case. Thanks to Kalpesh Patel for the report.

UPGRADE: you may reinstall all files and edit your configuration file to add the
spamd keyword to the SPAM_TOOLS directive if you have the spamd installed.

2012-07-13 Version 8.4

	- Add signal handler to SIGHUP to allow a full restart of sendmailanalyzer
	  to force reread configuration file and reopen the pipe to the log file.
	  Suggested by Vicky Brown.
	- Allow character @ in secure_param() to allow syslog-ng remote host
	  syntax - Reported by Leon van Ofwegen.
	- Add more information on CGI param error returned by secure_param().
	- Add logrotate example to restart sendmailanalyzer in main documentation.
	  Reported by Vicki Brown.
	- Fix a bug in Top Authid where number was always 1. Reported by Dan Szkola

UPGRADE: you'd better reinstall all files after saving your configuration. Unless
you just want to copy sendmailanalyzer and sa_report.cgi that are the only files
that have changed as well as the documentation.


2012-06-01 Version 8.3

	- Fix a major bug in sa_cache that could lead in totally false
	  statistics. Please upgrade ASAP. Thanks to Dan Szkola for the
	  report.
	- SendmailAnalyzer now fully support Cyrillics character with the
	  help of two new configuration directives HTML_CHARSET and TTFONT.
	  The first must be set to 'utf-8' and the second to a true type font
	  file. Thanks to Nikolay G. Petrov for the report.

UPGRADE: you'd better reinstall all files as all perl script have changed after
saving your configuration file. If you have the sa_cache bug and your stats are
wrong, chance if you have FREE_SPACE to archive as by following the "Archiving"
chapter in the admin guide (http://sendmailanalyzer.darold.net/admin.html) you
will be able to rerun sa_cache.

2012-03-11 Version 8.2

	- Fix a case where Amavis spam detail are not collected du to syslog
	  message truncating.  Thanks to Przemyslaw Sikora for the report.
	- Add report of Sendmail milter smf-spf, they will be reported with
	  rejected/error message. Thanks to Przemyslaw Sikora for feature
	  request.
	- Remove a man page wrong named with double extension mark. Thanks to
	  John Lockard for the report.

2012-01-08 Version 8.1

	- Add german translation file. Thanks to Sven Wehner for the contribution.
	- Fix count for the authid login id which always shows 1 for all users.
	  Thanks to Mark Price for the report.
	- Fix unterminated column html tag in reject statistics.
	- Fix top Spam statistics on spamassassin autolearn information.
	- Add support to postgrey statistics. Thanks to John Lockard for the
	  feature request.
	- Add POSTGREY_NAME configuration directive to change the default
	  syslog ident name of Postgrey. See configuration file for more
	  information.
	- Add POSTGREY_VIEW configuration directive to enable/disable the
	  postgrey link into the menu. Disable by default for backward
	  compatibility.

2011-08-07 Version 8.0

	This is a major release even if it is fully compatible with old data
	files, the caching scheme has been reviewed to better handle millions
	of emails a day with very low memory footprint. The issue was reported
	by Martin Culak with around 1,5 million of messages per days, great
	thanks to him, it help a lot for this release.

	- Remove day_cache program, the daily caching is now integrated into the
	  sa_cache script with the option -a or --actual-day-only. With huge
	  data you still need to run sa_cache each five minutes within crontab.
	- The caching files are now build per hour to avoid "Out of memory" on
	  very busy servers. So now you have cache files generated per hour, per
	  day, per month and year.
	- CGI script sa_report have been reviewed to handle those new cache file
	  and to always display the reports in the second.
	- A lot of work have been made to add more support to PostFix logs and
	  postscreen milter.
	- Fix missing link to detailed informations when there was just one
	  data file in the directory.
	- Limit numbers of top sender/recipient in pie graph to maximum 10. 
	- Add pid file support to sa_cache to prevent parallel execution. After
	  a system crash you may need to remove those pid files if you want
	  sendmailanalyzer and sa_cache to be run again.
	- Documentation reviewed.

UPGRADE: if you don't want to reinstall all and restart with empty data, you can
overwrite all Perl and CGI scripts. Backward compatibility of data files are
fully preserved but you may experience an error message on hours views on old
cached data. The error message is:

	"No cache file yet for this hour, please wait for next run of 'sa_cache --actual-day-only'."

Remember to remove the day_cache perl script ans replace your call to day_cache
in to your cron job by the new command forms:

	sa_cache --actual-day-only

If you want to be able to see the hours view without error messages or no record
found you can keep the previous version of the sa_report.cgi script to still
view those report.

2011-07-31 Version 7.2

	- Add support of ruleset check_relay logged without sendmail id. Thanks
	  to Jeff Kaminski for the report.
	- Add 'FaKe' prefix to automatic generated id, so that you don't waste
	  your time to search for a sendmail id into the log corresponding to
	  the sendmailanalyzer unique id.
	- Add a note in INSTALL file about sendmail LogLevel configuration
	  directive. The default value 9 don't need to be change to have
	  SendmailAnalyzer report, by increasing this value all debug messages
	  will be detected as error or rejection, so don't change this value.
	  Thanks to Jeff Kaminski for the comment.
	- Add message status percentage pie graph on Global Statistics Status
	  screen. Only status upper or equal than 1% are shown.
	- Add sender relay percentage pie graph on Top Statistics Senders
	  screen. Only sender relays upper or equal than 1% are shown.
	- Add recipient relay percentage pie graph on Top Statistics Recipients
	  screen. Only recipient relays upper or equal than 1% are shown.

UPGRADE: overwriting all Perl scripts will do the work if you don't want to
reinstall all. Backward compatibility of data files are fully preserved.

2011-07-08 Version 7.1

	- Fix delivery direction bug when destination relay was localhost.
	- Fix an error on domain report when the email address doen't have
	  one but just the username. Thanks to John Duthie for the report.
	- Add a new configuation directive DEFAULT_DOMAIN to add to an email
	  address if there's just the username (see fix above). By default
	  SendmailAnalyzer will add the '@localhost' domain but you may want
	  to change this domain, so use this directive.

UPGRADE: You can reinstall all or just override all Perl scripts, the backward
compatibility with old data files is fully preserved.

2011-06-09 Version 7.0

	- Add first support to Postfix mail log statistical reports. Thanks to
	  Mario Hobel the sample log file and for people who asked the feature.
	- Fix pattern error during catching relevant logs on full read mode.
	- Fix mail id to Amavis virus message id mapping.
	- Fix duplicate count of spam recipient on search view.
	- Fix stderr message of tar command call in sa_cache.
	- Add DSN_VIEW configuration directive to enable/disable Notification
	  views. Default show it: 1

UPGRADE: You can reinstall all or just override all Perl scripts, the backward
compatibility with old data files is fully preserved.

2010-05-19 Version 6.4

	- Add support to dnsbl-milter. Thanks to bversteeg for feature request.
	- Fix a bug in link to spam details search view.
	- Change link to SquidAnalyzer web site.

UPGRADE: just override the perl script sendmailanalyzer and sa_report.cgi CGI
perl script taking care of the configuration file path into those scripts
(search: sendmailanalyzer.conf). Also add dnsblmilter to the list of SPAM_TOOL
configuration directive if you want this report.

2010-05-06 Version 6.3

	- Rewrite some parts of the sendmailanalyzer command usage, with more
	  details.
	- Fix cross scripting hole in lang CGI parameter. Thanks to peoples at
	  ha.ckers.org and root-me.org :-)
	- Fix top caching statistics failure with value with a single quote.

UPGRADE: just override all perl script and CGI taking care of the configuration
file path into those scripts (search: sendmailanalyzer.conf). 
	

2010-01-21 Version 6.2

	- Add MERGING_HOST configuration directive to allow aggregation of
	  multiple mailhost that syslogs to a remote server throught rsyslog
	  to have only one SendmailAnalyzer report. Thanks to Slamp for the
	  feature request.
	- Add new configuration directive CLAMD_NAME to set syslog name of
	  Clamd. Default is 'clamd'. When using Mailscanner with clamd if you
	  want virus report you must configure clamd to log with syslog and
	  use LOG_MAIL. This fix virus report for Mailscanner+clamd.
	- Add SHOW_DIRECTION configuration directive to enable/disable
	  direction statistics. On some mailhost this could show wrong
	  information if the direction of messages could't be determined.
	  So you can remove this view by setting it to 0.
	- Fix "No record for this period" on Top SMTP Auth statistics if no
	  data where found.
	- Update documentation.

UPGRADE: Only sendmailanalyzer and sa_report.cgi has changed, just edit these
files to set the path to the configuration file (search: sendmailanalyzer.conf)
and override old ones. Edit sendmailanalyzer.conf and new directives like in
Makefile.PL. Or of course the traditional install will do the job. This release
is fully backward compatible.



2010-01-20 Version 6.1

	- Fix RPM spec file that was overriding http sendmailanalyzer.conf
	  by the main sendmailanalyzer.conf.
	- Fix email addresses enclosed between <> not displayed on Top System
	  messages interface.
	- Fix Messaging Status report of 'User unknown'. Removed ESMTP code.
	- Add fallback to /etc/sendmailanalyzer.conf if default config file
	  doesn't exist to simplifying upgrade with packaging or custom install.

UPGRADE: simply override all perl scripts (sendmailanalyer,sa_cache,day_cache,
cgi-bin/sa_report.cgi). In these scripts you may have to modify the global
variable $CONFIG_FILE as it point to default path to sendmailanalyzer.conf
and fall back to /etc/sendmailanalyzer.conf if the first is not found. So if
your config file is not in these paths, you must change it.


2010-01-05 Version 6.0

	- New SendmailAnalyzer site => http://sareport.darold.net/
	- Add install script and packaging support.
	- Remove all .pl extensions and rename sa_report.pl into sa_report.cgi
	for new install script and better packaging support.
	Rename SendmailAnalyzer pPerl script to sendmailanalyzer.
	- Fix day_cache usage message.
	- Now sa_cache and day_cache can be run without any argument to proceed
	all rsyslog host and mainly for easy install and packaging support.
	- Fix misshandling of User unknow DSN.
	- Fix memory leak on AUTH stat initial code.
	- Fix misshandling in spam detail view
	- Fix storage of Authentication-Warning using -f warning message.
	- Fix langage selection on host view that's always reseted to default.
	- Add SMTP Auth flow view by auth type (server or client) and by mech
	(plain, login, etc.). This stat is not available in per domain view and
	can be disable in config file (see SMTP_AUTH).
	- Add SMTP Auth top view to display top auth mechanism, top connection
	relay and top authid. This stat is not available in per domain view
	- Add storage to pid file to keep track of the running daemon and
	allow easier start/stop script. This also fix a bug where SA do not
	stop on kill signal because is waiting for read on tail pipe. The pid
	now keep track of the 2 pids and then both are killed.
	- Remove top DNS sender and relay from stats, not really usefull and
	most of the time it returns false records.
	- Add Original recipient in DSN detail view.
	- Fix Top Sender Domain and Top Sender Address detail views when domain
	or address is empty (<>).
	- Add SPAM_VIEW and VIRUS_VIEW configuration directives to enable or
	disable the respective menus. By default they are enable.
	- Add SPAM_TOOLS configuration directive to choose antispam detail menu
	link to display. Default is all.
	- Autostart on main window when there's only one host and no per domain
	report.

UPGRADE: just replace old scripts by new ones as well as lang files. Edit your
cron to remove .pl extensions and replace -h syslogname with -s syslogname to
sa_cache and day_cache call or remove this option. Replace all lang/ files.
You may also rewrite your configuration file even if backward compatibility
is preserved to have all new configuration directives in it.

2009-11-23 Version 5.5

	- Fix many bugs and improve performances in detail views especially
	on per domain user access and top rejection statististics.
	- Change multiple recipient/relay/status in detail view comma separated
	list to select boxes. This preserve screen size and allow direct link
	between recipient/relay/status with a selectbox synchro on onChange
	events.
	- Fix "forged localhost". When forged sender relay is found it now
	takes the real ip address of the relay.
	- Fix access denied when click the bat logo on DOMAIN_USER views.
	Thanks to Colin Stearman for the report.
	- Change order of distribution flow to be the same in table and in
	graphs and fix lang file en_US. Thanks to Colin Stearman for the report.
	- Fix miss handling of greylisting milter reject messages. Thanks to
	Colin Stearman for the report.
	- Remove recipient relay from reject detailed view as it is always
	empty.
	- Remove link to details on top domain rejection when domain is <>
	as it always produce empty result.
	- Replace RH/Fedora start script with the one provided by Colin Stearman
	- Detail links are now shown every time provided that the .dat files
	already exists (instead of only in the current month). 
	- Fix "Different senders/recipients" break when there's no sender nor
	recipient. Note: Different senders/recipients are build uppon email
	really Sent. If no messages are Sent, they are null, even if you have
	many rejected message with sender.
	- day_cache.pl fix a case where DSN graph was empty.
	- Remove sender address as last try to find email direction. Too must
	error with spam. Now direction is only search based on domain or Ip
	address of the relay.
	- Remove last total line on Messaging Status. This was confusing as some
	messages appears on different status like deferred message that appears
	in Deferred and finally Sent.

    UPGRADE: Just overwrite all perl scripts and cgi, backward compatibility
	is preserved. Overwrite language file en_US. Configuration file is
	unchanged.

	Special thanks to Colin Stearman for his great help.


2009-09-14 Version 5.4

	- Fix clamav-milter report when clamav-milter.conf RejectMsg is set
	to MTA specific and AddHeader is Replace or Add. Previous versions
	show these MTA specific log as system errors. Thank to Bretislav Kubesa
	for the report.
	- Fix outbound and local outbound of virus, that was always set to 0.
	- Fix graph of outbound bytes that was identical to inbound bytes.
	- Add support for multiple MTA name. Some configuration can have
	different syslog name (ex: sm-mta|sendmail|sm-msp-queue).
	- Remove DSN messages from inbound count.
	- Fix wrong handling of ctladdr, that cause wrong outgoing count.
	- Change Internet label to External for better readness.
	- Store 'return to sender', 'sender notify' or 'postmaster notify' as
	DSN.
	- Limit ESMTP rewriting of reject status to "complex" messages
	to preserve MTA messages.

2009-08-28 Version 5.3

	- Add acknowlegdement to Sendmail.org for the kind permission to use
	the Bat logo.
	- Remove 'Queued' from Rejection Statistics top status.
	- Fix bad parsing on relay that shown some valid lines as error.
	Lines like: from=, size=nnn, class=0,..., relay= xxx.xxx.xxx.xxx	
	may not appears anymore in top System messages report.
	- Add missing javascript link on Years label to display year view.
	- Fix month report of different sender/recipient.
	- Add/fix report of different sender/recipient in year view.
	- Summarise report of "rejecting commands due to pre-greeting traffic"
	- Summarise report of "probable open proxy"
	- Summarise report of "Too many hops"

2009-08-10 Version 5.2

	- Add standard command line argument to sa_cache.pl and day_cache.pl
	to allow modification of the configuration file. See usage (--help) of
	these two scripts. Backward compatibility with old format is preserved.
	- Remove SPAMD_MILTER from configuration file, no more used. Spamd log
	are now detected from sendmail log line. This was too much confusing
	SendmailAnalyzer. Spam detection is now a lot more efficient. Thanks to
	Steven W. Orr for the report.
	- Fix HTML output for better rendering in IE.
	- Fix bug on top spammer recipient address statistics.
	- Top spam statistics are now order by rules (Spamassassin,Mimedefang,
	jcheckmail, RBL check, ...) instead of spam details.
	- There's now a top view for all supported Antispam showing scores, hit
	cache, autolearn and detailled spam matching rule. A new configuration
	directive called SPAM_DETAIL was added. To disable, set it to 0. This
	will also save some disk space.
	- Fix anonymization of spam recipient.
	- Fix some SYSERR not reported.
	- Add RH/Fedora start/stop script and move them to start_scripts/
	directory. Thanks to Steven W. Orr for this script.
	- Fix detail view, it was displayed all instead of just the selected
	domain related records.
	- Fix recipient to virus detail report.

	UPGRADE:
	This release is fully backward compatible. You must overwrite all
	scripts and language files by those in new release.
	Also rc.sendmailanalyzer has been improved. As Spam view has changed
	if you don't want to mix report from old and new release, please start
	a fresh install. See also end of SendmailAnalyzer.conf for change.


2009-08-01 Version 5.1

	- Fix launch of Javascript error console on javascript onclick call
	on old browser.
	- Fix parsing of empty sender (from=,). Empty sender is now set to
	user: empty.
	- Fix two bugs in global virus and DSN statistics where graphis display
	wrong data in month view only. Please run the following command for
	recovery:

	    find /var/www/htdocs/sareport/mailhost/2009/ -name "cache.pm*" \
	    -maxdepth 2 -mindepth 2 | xargs -i rm -f {}

	Change path to year report following you installation. This will remove
	all month cache file for the given year. Then rerun sa_cache.pl
	Thanks to Steven W. Orr for the report.

	UPGRADE:
	overwrite SendmailAnalyzer.pl, sa_cache.pl and cgi-bin/sa_report.pl
	and run the above command for recovery.
 
2009-07-23 Version 5.0

	This release is a complete rewrite of the CGI interface and a major
	rewrite of all Perl script (SendmailAnalyzer.pl, sa_cache.pl and
	day_cache.pl). It also save more memory when reports are displayed.
	This version is fully backward compatible with v4.x, so you can simply
	overwrite old perl scripts and cgi.

	Here are all addons/changes in this release.
	
	WARNING: The user view of personal mailbox stats has been removed for
	now. It used too much resources. If you use it please let me know I
	will try to work on it again.

	- SendmailAnalyzer is now GPL v3
	- You can dynamically change the language with a CGI parameter: lang.
	  Default language is read in the configuration file, but setting for
	  example &lang=sp_SP in the CGI URL the interface will instantly go to
	  Spanish language.
	- Better parsing of System messages (STARTTLS).
	- Improve detection and classification of message logged.
	- DSN : Delivery Status Notification are now traced and shown.
	- Fix report of spam from spamd.
	- Fix bug in set_direction() resulting in false delivery distribution.
	- Replace barorng.gif by salogo.png and URL_BAR by URL_LOGO in config.
	  option. Take care of this if you're upgrading.
	- Removed sample configuration file for gw, hub. Too much confusing.
	- Moved required perl modules into a dedicated directory.
	- Add demo site (see link on Freshmeat).
	- Update documentation.
	- Improve Sytem message report.
	- Remove debug messages from syserr report.
	- Report missing top error messages on month/year view.
	- DOMAIN_REPORT configuration directive can now be written on multiple
	  lines for better reading.
	- Fix domain reports per host under rsyslog. See DOMAIN_HOST_REPORT
	  configuration directive.
	- LOCAL_DOMAIN configuration directive can now be written on multiple
	  lines for better reading.
	- Fix local domain per host under rsyslog. See LOCAL_HOST_DOMAIN
	  configuration directive. This is use to try to defined the delivery
	  direction on some sendmail configuration.
	- Add REPLACE_HOST configuration directive to allow anonymization
	  of hostnames in sender/recipient relay information.

	If you need parsing support for other milter let me know i will do it.


2009-07-10 Version 4.1

	- Fix virus detection with new versions of MailScanner.
	- Add ANONYMIZE configuration directive to not show sender
	  or recipient addresses.
	- Add Perl modules in the distro for quick install.

2008-09-03 Version 4.0

    Jump to major version is done to erase some regression code introduced into
    the CVS tree.

	- Change CSS design.
	- Add full documentation.
	- Add QUIET configuration directive to make sa_cache.pl less verbose.
	- Add number of different email addresses for sender and recipients.
	- Rewrite some sa_cache.pl parts to reduce memory usage and improve
	  speed.
	- sa_cache.pl now build per domain cache following the domains sets
	  in DOMAIN_REPORT configuration directive. So it MUST be run only
	  one time by cron. See INSTALL file to see how to run it.
	- Add year/month command line argument to sa_cache.pl to build
	  cache for a single month. This can be usefull to free performance
	  more quickly on a huge mail server if you run sa_cache on multiple
	  month.
	- Fix and rewrite the code part that compute origine/destination
	  statistics in sa_report.pl and sa_cache.pl. It is now in a function
	  called set_destination().
	- Fix SendmailAnalyzer.pl to not register false syserr related to
	  Milter log. If syserr message doesn't contain a space character
	  (single word only) it's for sure a parser mistake, so it is skipped.

2008-03-26 Version 3.1
	- Add support for compressed log file (need zcat)
	- Add support for MimeDefang Spam and Virus reports
	- Change translation 'Internet incoming' to 'Incoming' to avoid
	  confusion on a non mail gateway system.
	- Add LOCAL_DOMAIN configuration directive to allow relevant
	  statistics on mail direction for a system hosting mailboxes
	  with all incoming messages coming from a single relay on LAN.
	  Mail direction is then detected from the sender domain address
	  and the relay host domain part.
	- Fix bug in spam direction reporting (bytes was displayed
	  instead of number of messages).
	- Add report of system messages to top statistics view
	- Fix call to barorng.gif separator, add configuration
	  directive URL_BAR to modify the path.
	- Add per domain report allowing person logging in to only
	  see the domains he/she should be seeing. See DOMAIN_USER
	  configuration directive.
	- Add Spanish translation - Thanks to Marco Escobar Piones.
	- Add parsing / collect of Sendmail DNSLB report (check_relay)
	- Add parsing of Amavis Spam / Virus detection
	- Add parsing of milter jchkmail report
	- Add SMTP/ESMTP error code in mail delivery/MTA status to reduce
	  storage space and improve status report reliability.
	- Improve MTA system message detection.
	- Add parsing of milter spamassassin report (spamd output)
	- Modify sa_report.pl to better support custom authentication
	  for user/mailbox view. There's now a check_mailbox_auth()
	  method that you can modifyi to match your needs. 

2007 06 27 - Version 3.0

	This release is a complete rewrite of the old 2.x version
	of SendmailAnalyzer. It improve speed, space and report, as
	well as realtime reporting.

