2002-07-27  Michael Tokarev  <mjt@tls.msk.ru>

	* Makefile: Version 0.9, finally

	* ex2/template:
	Some cleanups for ex2 template, thanks to
	Dmitriy Bokiy ratebor(at)icp(dot)ac(dot)ru.

	* Added example directory listings to README.{DrWeb,AVP}
	  to show how this "home directory" may look like.

	* avcheck.c:
	One more error message from sophie, suggested by Max Kalika.
	BTW, sophie support is still untested.

2002-07-27  Michael Tokarev  <mjt@tls.msk.ru>

	* Makefile: Bumped version to 0.9pre2

	* avcheck.c:
	Added minimal syslogging to log possible bad conditions that
	will be ignored

	* avcheck.c:
	One more avp return code to ignore: 1 (virus scan was incomplete)

	* avcheck.c:
	Added an (ugly) ability to ignore some sophie error *messages*
	(e.g. file was encrypted) -- too bad sophie always returns -1
	in case of any error, and the only way to distinguish real errors
	and normal conditions it to look at error *message*...

2002-06-17  Michael Tokarev  <mjt@tls.msk.ru>

	* Makefile: Bumped version number
	Added ex2/it file

	* ex2/template:
	Added an example shows how to have per-recipient-domain administrator
	address

	* README.Postfix.de.tex:
	Initial revision: avcheck+Postfix tex documentation in German

	* README.Sendmail:
	Added a bold note that sendmail+avcheck is unsupported.

	* avcheck.c:
	Use iwrite() in yet another place (sophie/trophie)

	* avcheck.c:
	Changed some write()s into iwrite()s that handles partial writes
	(is it *really* needed?)
	Allow #define PARANOID=0 at command line

	* avcheck.c:
	Added some more avp return codes in order to make diagnostics easier

	* ex2/template:
	Added workaround for klez virus (do not send sender notifications)

	* ex2/it: First revision: Italian translation

2002-04-24  Michael Tokarev  <mjt@tls.msk.ru>

	* avcheck.c:
	A great typo: htonl instead of ntohl in DrWeb code.  Spotted by
	Cloyce D. Spradling <cloyce(at)headgear(dot)org>.  BIG thanks!

	* avcheck.c:
	Do not treat first -h as request for help (clash with -h header).
	Return EX_USAGE if exited after printing help info

2002-04-25  Michael Tokarev  <mjt@corpit.ru>

	* do not treat -h as request for help - it is a clash with -h hdr
	  (avcheck now handles -h as help ONLY if -h is the only option
	   given, and prints help screen if executed w/o arguments).
	* return EX_USAGE after printing help text
	* A typo in DrWeb return code handling: htonl instead of ntohl.
	  On i386, this isn't an issue since both functions are just the
	  same, but other arches may be in problem.  BIG thanks to
	  Cloyce D. Spradling <cloyce(at)headgear(dot)org> for spotting
	  this error.

2002-02-09  Michael Tokarev  <mjt@corpit.ru>

	* version 0.8

	* Recognize more DrWeb return codes: ignore DERR_SKIPPED (for
	  untestable files), and bounce (call infected handler) for
	  DERR_TOO_BIG,DERR_TOO_COMPRESSED and DERR_TIMEOUT.

	* Fix a typo in README.Sendmail, LOCAL_RULE_0.

2002-01-10  Michael Tokarev  <mjt@corpit.ru>

	* version 0.7, finally.

	* Yet another typos in READMEs, thanks again to Piotr Klaban.
	* Removed references to avp's defUnix.prf sections from README.AVP*
	* Used $PATH instead of hardcoded /path/names in rc scripts.

2002-01-08  Michael Tokarev  <mjt@corpit.ru>

	* Several typos in README.DrWeb, thanks to Piotr Klaban for this.

2002-01-03  Michael Tokarev  <mjt@corpit.ru>

	* Moved creation of AF_UNIX av socket to a right place (very minor
	bug, only tcp communication with av engine slightly affected)
	* Allowed compile-time selection of supported av engines.  Complie with
	e.g. -DDRWEB=0, -DAVP=1 to have support for avp only.

2001-12-09  Michael Tokarev  <mjt@corpit.ru>

	* version 0.7-pre2

	* Corrected a long-standing bug with SENDMAIL== export (note the double
	=).  Spotted by Igor Goldenberg <igold@mail.ru>.  I have no clue about
	how that worked before -- was "SENDMAIL==/usr/sbin/sendmail ..." -- but
	only when command-line injection path was used (not smtp).

	* Allow usage of evaluation DrWeb version (skip DRERR_EVAL_VERSION
	result code, as suggested by Igor Goldenberg <igold@mail.ru>)
	and reorganized DrWeb return code handling a bit.

	* Added -h hdr option.  With this option, avcheck will prepend
	    X-AV-Checked: <time> hdr
	header line to every email message successefully passed the virus
	check (only without -n and -c options).  Suggested by Len Conrad
	<LConrad@Go2France.com>.  Feedback welcome.

2001-11-29  Michael Tokarev  <mjt@corpit.ru>
	* Heavily modified infected.ex2 scripts/template in order to allow
	easy choice whenether to send complete recipient alert or headers
	only.  Suggested by Len Conrad <LConrad@Go2France.com>

2001-11-09  Michael Tokarev  <mjt@corpit.ru>
	* Version 0.6

	* Preliminary support for Sophie/Trophie (about 10 lines of code).
	It is #ifdef'ed for now -- both Sophos and TrendMicro libraries
	seems to ignore MIME-formatted files while them have (a guess
	looking into libraries) support for MIME decoding internally.

	* #ifdef'ed address quoting in avcheck (Postfix has this ability
	now).  This change is incompatible with previous releases.  In
	order to restore old behaviour, compile with -DQUOTEADDR option.
	Better yet, add a `q' fiag in postfix's pipe(8) agent, like
	... pipe flags=q user=....
	(READMEs modified accordingly)

	* Added minor relaxing for DrWeb.  DrWeb will return READ_ERROR
	condition for broken or incomplete .doc files.  For now, avcheck
	ignores this error (to be cleaned up later when DrWeb will return
	proper (CRC_ERROR?) error code).  This should not hurt anything,
	since in case of real read error the same error will show when
	avcheck will read saved message back, and it will report this
	condition correctly.

2001-11-07  Michael Tokarev  <mjt@corpit.ru>
	* ex2/template:
	Corrected a typo (attachtment=>attachment).
	Spotted by Michael Kubecka <mkubecka@swansystems.com>

2001-10-26  Michael Tokarev  <mjt@corpit.ru>
	* avcheck.c:
	Restored mistakely deleted -w option handling.
	Spotted by Ralf Hildebrandt <Ralf.Hildebrandt@charite.de> and
	Adi Prasaja <adi@acme.com>
	* Added CVS IDs
	* Added back -w option (was mistakely deleted)
	* New Slovak translation (ex2/sk), thanks to
	  Peter KLFMANiK Mann <Peter.Mann@tuke.sk>
	* German translation of README.Postfix - Ralf Hildebrandt

2001-10-07  Michael Tokarev  <mjt@corpit.ru>
	* Added new return code to list of "mail infected" codes from avp,
	  and notes in README.AVP about Warning setting.  Bad situation
	  when avp found a file that *looks* like infected but in fact
	  it isn't -- avcheck complains about unexpected return code
	  (noted by Robert Dalton, AccessWest)
	* Always read number of viruses found from DrWeb (stop it from
	  complaining about broken pipe)
	* Link with -lnsl only if there is -lsocket (solaris) -- i.e. do
	  not use -lnsl on linux or bsd.  Note that I'm not shure about
	  bsd here.

2001-09-29  Michael Tokarev  <mjt@corpit.ru>
	* Added example startup scripts sutable for controlling kavdaemon
	  and drwebd.  Those startup scripts should be able to run on almost
	  any unix platform.
	* Major documentation change and corrections -- thank you,
	  Ralf Hilderbrandt, for this!
	* Added README.DrWeb (how to use avcheck with DrWeb antivirus) --
	  pretty the same as README.AVP
	* Added preliminary version of README.Sendmail about how to use
	  avcheck with this MTA.  I can't verify information presented in
	  this file, since I have no Sendmail around.
	* Allow specifying additional arguments for sendmail program (-S
	  option): either by repeating -S several times (cumulative mode)
	  or by specifying multiword value for -S (see avcheck.1 for details)
	  Note that avcheck now does not add -i option for sendmail, one
	  need to specify it in command line explicitly if needed.
	* Do not send sender virus alerts to some special addresses or
 	  when message headers contains some special values (messages from
	  mailing lists, for example).  Suggested and initially implemented
	  by Juri Haberland <haberland@altus.de>

2001-09-17  Michael Tokarev  <mjt@corpit.ru>
	* Added Czech translation for ex2 (Jakub Urban <buba@smidl.cz>)
	* Added little tweaks around DrWeb return code bits
	* avcheck should now work on Solaris SPARC in 32bit mode:
	* Added INADDR_NONE definition if not defined -- Solaris seems lack it
	  (noted by Piotr Klaban <makler@man.torun.pl>)
	* Changed "%m" to "%s", strerror(errno) in uchroot (more portable)
	* execl() => execlp() in uchroot (to search $PATH and match chroot)
	* Added -lsocket -lnsl if there are /usr/lib/lib{socket,nsl}.so
	  to Makefile (for Solaris, others), and used LDFLAGS
	* Reworked a bit `infected.ex2' example and a Makefile

2001-08-23  Michael Tokarev  <mjt@corpit.ru>
	* Changed logic around DrWeb result flags, to allow
	  e.g. archives with bad crc to come on, and to not
	  bark in case viruses was found together with other flags
	  (e.g. virus(es) and no memory etc)

2001-08-20  Michael Tokarev  <mjt@corpit.ru>
	* Release 0.3
	* NOTE INCOMPATIBLE COMMAND-LINE OPTIONS CHANGES below
	* *ALWAYS* exit with either OK or EX_TEMPFAIL -- EX_TEMPFAIL
	  even in case of invalid usage/commandline.  This will help
	  to stop losing mails after options change like in this
	  version...
	* Generalized -s option: now it is a combination of former
	  -t (type) and -s options, in form avtype:avsocket.  Syntax
	  of avsocket part was not changed, and this part can be omitted.
	  The "idea" is to treat antivirus vendor as a "protocol name",
	  so socket now specifies high-level protocol and low-level
	  connection endpoint.
	* Added -t timeout option to specify timeout for antivirus
	  operations -- sometimes avp goes to some funny mode and wan't
	  to return an answer, and postfix bounces a message...
	* Added some signal handlers so that avcheck will be
	  able to cleanup and to return EX_TEMPFAIL as usual.
	  (the same is for infected examples).
	* Corrected infected.ex2 -- attempt was made to inform
	  recipients instead of sender (problem spotted by 
	  voder@ats.pl)
	* there are many infected.ex2 scripts now -- for different languages.
	  Thanks to all who provided translations.
	  Those infected scripts now generated from common template in
	  infected.ex2/ directory.
	* Some minor documentation/readme updates (still incomplete)

2001-08-13  Michael Tokarev  <mjt@corpit.ru>

	* Release 0.2
	* Actually switch to 127.0.0.1:25 by default (forgot it)
	* Rewrote mail "sending" part to cleanup things from
	  previous "advanded" usage in avpcheck
	* Added "mail submission client" mode, so that avcheck itself
	  can be used to submit virus-alert mail from `infected' script
	  (-c option)
	* Strip environment before running `infected' script,
	  and pass $SENDMAIL to it (program with arguments that
	  can be used to submit mail into mailsystem without
	  being checked for viruses)
	* Added "waitfile" (-w option) -- do not attempt to contact
	  with antivirus daemon but return EX_TEMPFAIL if waitfile exists
	  (see manpage for usage details)
	* some little cleanups of old unused code
	* minor manpage tweaks
	* added support for German virus-alert messages into infected.ex2
	  by Fridtjof Busse <fridtjof@fbunet.de> (and this script is huge
	  now, need to think how to add other languages...)

2001-08-06  Michael Tokarev  <mjt@corpit.ru>

	* Merged all sources back to avcheck.c
	* Implement support for both AVP and DrWeb in one program,
	  new option -t type to specify antivirus daemon type.
	* avcheck now has a manpage (not yet complete): avcheck.1


-- old changelog as of avPcheck --

* Mon Aug  6 2001 Michael Tokarev <mjt@corpit.ru>
 Added some packaging (hooray!)
 First "version": 0.1 ;)
 Removed long options, as we now have a few options
  (to simplify portability problems)
 Split single avcheck.c file onto many parts.

* Fri Aug  3 2001 Michael Tokarev <mjt@corpit.ru> ***Experimental***
 Removed *all* infected mail handling: bounces,
  sending alerts, etc, etc, and all options
  around this.  All infected mail handling
  should now performed by external program/script
  (by default, `infected' in the avcheck's directory).
 New option, -i infected-program, to specify another
  program to call for infected mail.

* Fri Aug  3 2001 Michael Tokarev <mjt@corpit.ru>
 Added original recipients to virus-alert generated message.
  this one should be taken with care, as it will show
  even BCC'd recipients, and there is an option to send
  virus notification to original recipients too, so every
  original recipient will see all other recipients, even
  them where BCC'd.  Having recipients in administrator's
  email is good, in bounce it is also good, but questionable
  in mail for original recipients.
 Changed temporary filename to include only pid, not current time
 Added support for DrWeb (www.sald.com) antivirus -- not really
  tested yet, but seems to work
 Renamed to avcheck, as it isn't avp specific now ;)
 Changed compilation: you now should specify antivirus engine
  to use, via -DAVP or -DDRWEB compiler command line option.

* Wed Jul 25 2001 Michael Tokarev <mjt@corpit.ru>
 Limited avp daemon response size to 8Kb (for now)
 Added another option, -V,--vsendmail, to specify
 a command (or smtp host:port) to send virus alerts
 only (may differ from -S in some rare cases).

* Wed Jul 11 2001 Ralf Hildebrandt <ralf.hildebrandt@innominate.com>
 added syslog()ing.
 New option
    -l,--syslog - to send warnings about infected message to syslog()
 Fixed some typos in messages.

* Thu Jun 28 2001 Michael Tokarev <mjt@corpit.ru>
 Oh, ma, it takes me 12 years to realize that fputs() returns
 integer like fputc(), and not a pointer like fgets()!...  What
 a funny mistake I made 12 years back and copied to *all* of my
 programs!!! Changed all !fputs(..) to fputs(..) < 0.  Doh.

* Fri Jun  8 2001 Michael Tokarev <mjt@corpit.ru>
 Properly quote addresses that contain some unusual characters
 like space, quotes, backslashes, control characters etc. --
 both in smtp and sendmail's commandline.

* Thu May 25 2001 Michael Tokarev <mjt@corpit.ru>
 Changed last incatched EX_PROTOCOL to EX_TEMPFAIL, so that avpcheck
 will never exit with code saying "bounce this message".
 That last place may be triggered when you restart avpdaemon in the
 middle of scanning.  Thanks Ralf Hildebrandt
 <Ralf.Hildebrandt@innominate.com> for pointing this.

 avpcheck now has it's own built-in tiny smtp client.  To use it,
 specify -Shost:port (-S: is the same as localhost:smtp) -- it
 argument for -S doesn't contain any slashes, it is treated as
 tcp/ip address.  This feature allows to eliminate extra steps
 and overhead.  Note that I didn't tested smtp client heavily,
 and I know at least one defect of it: it will not work with
 smtp servers that uses multi-line replies, and it is hard to
 fix now (more serious work should be done around architecture
 of smtp code to fix that).  With content inspection (-n option),
 smtp code should not be needed, as it gives almost nothing.
 Feedback welcome.

* Sat Apr 28 2001 Michael Tokarev <mjt@corpit.ru>
 Well...  There was tons of typos :(  Sorry, folks, I should
 be more accurate next time.  Hope that a lesson was learned.
  - do not SIGSEGV when avpdaemon doesn't run chrooted
    (thanks to Damir Bikmuhametov <boco@fpc.ufacom.ru>)
    actually there was a check (#ifdef'ed incorrectly)
    to disallow contacting to non-chrooted avpd.
  - corrected help (-e vs -f) -- again thanks to Damir
  - allow to not use getopt_long() (compile with -DNO_GETOPT_LONG)
    Suggested by Damir.
  - fix typo with argument handling introduced in last changes
    (oops!) -- thanks to Vladimir V. Chekmarev <aurora@gpntb.ru>
  - avpcheck now runs on FreeBSD -- it has different AF_UNIX
    interface, but I have no *BSD machines to check this.
    Thanks to Robbert Kouprie <kouprie@fox-it.com>.

* Tue Apr 24 2001 Michael Tokarev <mjt@corpit.ru>
  Added a bunch of new options, some are based on ideas and patch
  from Piotr Klaban <makler@man.torun.pl>:
    -a,--alertto - to send alert message (headers) to the given address
    -M,--mailrcpt - send infected mails to recipients
    -A,--alertrcpt - send headers of infected mails to original recipients
    -e,--fail-infected - exit with EX_UNAVAILABLE for infected mails
      (this is one of possible infected actions)
    -n,--nosend - do not send good mail to original recipients, just
      check and probably do infected actions (needed for content_inspection
      postfix feature)
  Changed formatting and content type of generated reports -- should be
  "more readable" now (multipart/mixed => multipart/report), added
  Content-Description, and removed To: header.

* Fri Jan 26 2001 Michael Tokarev <mjt@corpit.ru>
  added handling of "file is corrupted" error code from avp daemon (8):
   it's returned when some archive is corrupted or incomplete
