Mail-DMARC
view release on metacpan or search on metacpan
lib/Mail/DMARC/Report/Receive.pm view on Meta::CPAN
# Detect zip by magic bytes PK\x03\x04
if ( substr($contents, 0, 4) eq "PK\x03\x04" ) {
my $xml;
IO::Uncompress::Unzip::unzip( \$contents, \$xml )
or croak "unzip failed: $IO::Uncompress::Unzip::UnzipError";
$self->_init_for_file($file);
return $self->handle_body($xml) ? 'aggregate' : undef;
}
# Detect XML by content (starts with optional BOM/whitespace then '<')
if ( $contents =~ /\A(?:\xef\xbb\xbf)?\s*</ ) {
$self->_init_for_file($file);
return $self->handle_body($contents) ? 'aggregate' : undef;
}
return $self->from_email_simple(Email::Simple->new($contents));
}
sub _init_for_file {
my ( $self, $file ) = @_;
( run in 2.318 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )