/usr/share/perl5/Email/Abstract/MailInternet.pm is in libemail-abstract-perl 3.008-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 | use strict;
package Email::Abstract::MailInternet;
# ABSTRACT: Email::Abstract wrapper for Mail::Internet
$Email::Abstract::MailInternet::VERSION = '3.008';
use Email::Abstract::Plugin;
BEGIN { @Email::Abstract::MailInternet::ISA = 'Email::Abstract::Plugin' };
sub target { "Mail::Internet" }
# We need 1.77 because otherwise headers unfold badly.
my $is_avail;
sub is_available {
return $is_avail if defined $is_avail;
require Mail::Internet;
eval { Mail::Internet->VERSION(1.77) };
return $is_avail = $@ ? 0 : 1;
}
sub construct {
require Mail::Internet;
my ($class, $rfc822) = @_;
Mail::Internet->new([ map { "$_\x0d\x0a" } split /\x0d\x0a/, $rfc822]);
}
sub get_header {
my ($class, $obj, $header) = @_;
my @values = $obj->head->get($header);
return unless @values;
# No reason to s/// lots of values if we're just going to return one.
$#values = 0 if not wantarray;
chomp @values;
s/(?:\x0d\x0a|\x0a\x0d|\x0a|\x0d)\s+/ /g for @values;
return wantarray ? @values : $values[0];
}
sub get_body {
my ($class, $obj) = @_;
join "", @{$obj->body()};
}
sub set_header {
my ($class, $obj, $header, @data) = @_;
my $count = 0;
$obj->head->replace($header, shift @data, ++$count) while @data;
}
sub set_body {
my ($class, $obj, $body) = @_;
$obj->body( map { "$_\n" } split /\n/, $body );
}
sub as_string { my ($class, $obj) = @_; $obj->as_string(); }
1;
#pod =head1 DESCRIPTION
#pod
#pod This module wraps the Mail::Internet mail handling library with an
#pod abstract interface, to be used with L<Email::Abstract>
#pod
#pod =head1 SEE ALSO
#pod
#pod L<Email::Abstract>, L<Mail::Internet>.
#pod
#pod =cut
__END__
=pod
=encoding UTF-8
=head1 NAME
Email::Abstract::MailInternet - Email::Abstract wrapper for Mail::Internet
=head1 VERSION
version 3.008
=head1 DESCRIPTION
This module wraps the Mail::Internet mail handling library with an
abstract interface, to be used with L<Email::Abstract>
=head1 SEE ALSO
L<Email::Abstract>, L<Mail::Internet>.
=head1 AUTHORS
=over 4
=item *
Ricardo SIGNES <rjbs@cpan.org>
=item *
Simon Cozens <simon@cpan.org>
=item *
Casey West <casey@geeknest.com>
=back
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2004 by Simon Cozens.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut
|