I know this has been asked before but I could find an answer that worked.
Does anyone have panda av command line version running with qmail-scanner?
If so could you please share how you did it.
I think I'm very close to having it but it just won't run. Here's me debug:

12/09/2003 17:10:13:6620: scanloop: starting scan of directory
"/var/spool/qmailscan/shark4.njaquarium.org10634010134286620"...
12/09/2003 17:10:13:6620: pavcl: starting scan of directory
"/var/spool/qmailscan/shark4.njaquarium.org10634010134286620"...
12/09/2003 17:10:13:6620: run /usr/bin/pavcl -AUT -AEX -NOR -CMP -HEU
/var/spool/qmailscan/shark4.njaquarium.org10634010134286620 2>&1
12/09/2003 17:10:13:6620: --output of pavcl was:
--
12/09/2003 17:10:13:6620: tempfail: X-Qmail-Scanner-1.16: corrupt or unknown
pavcl scanner/resource problems - exit status 1

Here's the sub I used I found it in the archives.

 sub pavcl_scanner {
  #Panda AV
  &debug("pavcl: starting scan of directory \"$scandir/$file_id\"...");

  my ($start_pavcl_time)=[gettimeofday];
  my ($DD,$pavcl_status,$stop_pavcl_time,$pavcl_time);

  &debug("run $pavcl_binary -AUT -AEX -NOR -CMP -HEU $scandir/$file_id
2>&1");

  $DD=`$pavcl_binary -AUT -AEX -NOR -CMP -HEU $scandir/$file_id 2>&1`;
$pavcl_status=($? >> 8);

  # BEWARE! pavcl outputs a LENGTHY disclaimer
  &debug("--output of pavcl was:\n$DD--");


  if ( $pavcl_status ) {
    if ($DD =~ /(Found virus :.*)+\n/) {
      $quarantine_description=$+;
      &debug("There be a virus! ($quarantine_description)");
      ($quarantine_event=$quarantine_description)=~s/\s/_/g;
      $quarantine_event="pavcl:".substr($quarantine_event,0,$QE_LEN);
$description .= "\n---pavcl results ---\n$DD";
    }

    else {
      #This implies a corrupt set of DAT files or other resource problems...
&tempfail("corrupt or unknown pavcl scanner/resource problems - exit status
$pavcl_status");
    }
  }

  $stop_pavcl_time=[gettimeofday];
  $pavcl_time = tv_interval ($start_pavcl_time, $stop_pavcl_time);
&debug("pavcl: finished scan of dir \"$scandir/$file_id\" in $pavcl_time
secs");
}

And the version checker:
elsif ($scanner eq "pavcl_scanner") {
      open(PAV,"rpm -q pavcl|")||die "failed to call $pavcl_binary -HEL -
$!";
      while (<PAV>) {
        chomp;
        if (/pavcl-\s+(.*) ([0-9\/]+)$/) {
          $pavcl_product=$1;
        }
      }
      $SCANINFO .= "Panda-antivirus: $pavcl_product. ";
      close(PAV);
    } 

I really don't understand perl so I have no idea what these are doing. 

TIA

Jason


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Qmail-scanner-general mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/qmail-scanner-general

Reply via email to