[Mimedefang] Not an ARRAY reference error

Marco Berizzi pupilla at hotmail.com
Tue Aug 24 09:11:35 EDT 2004


Thanks a lot Paul. It'w working now.
One question: is there any way to be notified when
a slave die?


Paul Murphy wrote:

Marco,

I believe it's failing because you are calling file-based code on a
directory
entry in the Zip file.

Instead, I use code which skips directory entries:

        if ($zip->read($path) == AZ_OK) # file is OK and can be read
          {
          md_syslog('debug', "Scanning zip file, Path=$path");
          my $tfname = Archive::Zip::tempFileName('.');
          my @members = $zip->members();
          foreach my $member (@members)
            {
            if (! $member->isDirectory()) # no sense worrying about
folders
              {
              my $file = $member->fileName();
              $size = $member->uncompressedSize();  # check for DoS
content
              md_syslog('debug', "scanning ZIP member $file,
size=$size");
              if ($size > 50e6) # approx 50Mb
                {
                md_graphdefang_log('Archive member too big', $file,
$RelayAddr);
                action_discard();
                return;
                }
..



More information about the MIMEDefang mailing list