diff -urN amavis-snapshot-20010714-orig/amavis/amavisd.conf.in amavis-snapshot-20010714/amavis/amavisd.conf.in --- amavis-snapshot-20010714-orig/amavis/amavisd.conf.in Fri Mar 16 20:11:11 2001 +++ amavis-snapshot-20010714/amavis/amavisd.conf.in Wed Apr 24 13:35:03 2002 @@ -25,6 +25,9 @@ # NOTE: don't forget to re-run ./configure if you want to use # another virus scanner! +# mks_vir Antivirus (mks32) +$mksvir = "@mksvir@"; + # NAI AntiVirus (uvscan) $uvscan = "@uvscan@"; $uvscan_args = "@uvscan_args@"; diff -urN amavis-snapshot-20010714-orig/amavis/amavisd.in amavis-snapshot-20010714/amavis/amavisd.in --- amavis-snapshot-20010714-orig/amavis/amavisd.in Wed Jul 11 23:14:41 2001 +++ amavis-snapshot-20010714/amavis/amavisd.in Wed Apr 24 13:35:03 2002 @@ -82,7 +82,7 @@ # Virus related # Av scanners -use vars qw ( $uvscan $uvscan_args $uvscan_exitcode $antivir $sophos $sophos_ide $avp $AVPDIR $avpdc $fsav $vscan $vfind $inocucmd $rav $nod32 $csav ); +use vars qw ( $uvscan $uvscan_args $uvscan_exitcode $antivir $sophos $sophos_ide $avp $AVPDIR $avpdc $fsav $vscan $vfind $inocucmd $rav $nod32 $csav $mksvir ); use vars qw ( $virusbackup $QUARANTINE $VIRUSFILE $viruslist @virusname $warnadmin $warnsender $warnrecip ); @@ -350,6 +350,7 @@ # more once we've found one. # +@mksvir_scanner_frag@ @hbedv_scanner_frag@ @nai_scanner_frag@ @sophos_scanner_frag@ diff -urN amavis-snapshot-20010714-orig/amavis/av/mksvir amavis-snapshot-20010714/amavis/av/mksvir --- amavis-snapshot-20010714-orig/amavis/av/mksvir Thu Jan 1 01:00:00 1970 +++ amavis-snapshot-20010714/amavis/av/mksvir Wed Apr 24 13:35:03 2002 @@ -0,0 +1,33 @@ +# +# mks_vir (www.mks.com.pl) +# + + +if ($mksvir ne "") { + $output = `$mksvir -s $TEMPDIR/parts/* 2>&1`; + $errval = ($? >> 8); + do_log(2,$output); + if ($errval != 0) { + if ($errval == 1) { + @virusname = ($output =~ /file.*virus (.+)/g); + do_virus($output); + } else { + do_log(0,"Virus scanner failure: $antivir (error code: $errval)"); + } + } +} + +# --------- or'ed exit codes -------- +# =================================== +# +# 0 OK +# +# 1 virus FOUND +# 2 file repaired +# 4 file DELETED +# +# 128 0x80 internal error +# 256 0x100 commandline options error +# 512 0x200 initialization error +# 1024 0x400 IO error + diff -urN amavis-snapshot-20010714-orig/configure.in amavis-snapshot-20010714/configure.in --- amavis-snapshot-20010714-orig/configure.in Sat Jul 14 18:23:35 2001 +++ amavis-snapshot-20010714/configure.in Wed Apr 24 14:01:52 2002 @@ -365,6 +365,7 @@ cyber_scanner_frag=$srcdir/amavis/av/cyber fsec_scanner_frag=$srcdir/amavis/av/fsec hbedv_scanner_frag=$srcdir/amavis/av/hbedv + mksvir_scanner_frag=$srcdir/amavis/av/mksvir nai_scanner_frag=$srcdir/amavis/av/nai nod32_scanner_frag=$srcdir/amavis/av/nod32 rav_scanner_frag=$srcdir/amavis/av/rav @@ -388,6 +389,20 @@ hbedv_scanner_frag=$srcdir/amavis/av/hbedv fi +mksvir_scanner_frag=/dev/null +AC_CHECKING([*** mks_vir AntiVirus ***]) +AC_PATH_PROGS(mksvir, mks32, , $PATH:/usr/bin:/usr/local/bin) +if test "x$mksvir" = "x" ; then + AC_MSG_WARN([************************************************************]) + AC_MSG_WARN([*** mks_vir AntiVirus NOT found ***]) + AC_MSG_WARN([*** but that's ok ***]) + AC_MSG_WARN([************************************************************]) +else + # This is the first one + avscanner=" mks_vir AntiVirus" + mksvir_scanner_frag=$srcdir/amavis/av/mksvir +fi + nai_scanner_frag=/dev/null AC_CHECKING([*** McAfee Virusscan ***]) AC_PATH_PROGS(uvscan, uvscan, , $PATH:/usr/bin:/usr/local/bin) @@ -615,7 +630,7 @@ fi AC_MSG_CHECKING([if any virus scanners are installed at all]) -if test "x$antivir$uvscan$ufindvir$fvsco$sophos$avp$avpdc$fsav$vscan$vfind$inocucmd$rav$nod32$csav" = "x" ; then +if test "x$mks_vir$antivir$uvscan$ufindvir$fvsco$sophos$avp$avpdc$fsav$vscan$vfind$inocucmd$rav$nod32$csav" = "x" ; then AC_MSG_RESULT([no]) AC_MSG_ERROR([ @@ -768,6 +783,7 @@ AC_SUBST_FILE(cyber_scanner_frag) AC_SUBST_FILE(fsec_scanner_frag) AC_SUBST_FILE(hbedv_scanner_frag) +AC_SUBST_FILE(mksvir_scanner_frag) AC_SUBST_FILE(nai_scanner_frag) AC_SUBST_FILE(nod32_scanner_frag) AC_SUBST_FILE(rav_scanner_frag)