MIME-Signature

 view release on metacpan or  search on metacpan

bin/dump_mail_struct  view on Meta::CPAN

    return unless $FilesFromStdin;
    defined( my $line = <STDIN> ) or return;
    chomp $line;
    $line;
}

sub recursive_parse {
    my ( $entity, $level ) = @_;
    $level //= '';
    my $struct  = '';
    my $charset = $entity->head->mime_attr('content-type.charset');
    $struct =
        ( $level && "$level " )
      . $entity->mime_type
      . ( defined $charset && " \L[$charset]" ) . "\n";
    $struct .= recursive_parse( $_, "$level+" ) for $entity->parts;
    $struct;
}

my $parser = MIME::Parser->new;
$parser->tmp_to_core(1);

lib/MIME/Signature.pm  view on Meta::CPAN

  qw(
    &_decoded_body
    &_replace_body
    )
);
our %EXPORT_TAGS = ();

sub _decoded_body {
    my $entity = shift;
    my $body   = $entity->bodyhandle->as_string;
    if ( my $charset = $entity->head->mime_attr('content-type.charset') ) {
        $body = decode $charset, $body;
    }
    $body;
}

sub _replace_body {
    my ( $entity, $body ) = @_;
    $body .= "\n" if $body !~ /\n\z/;
    my $encoded_body;
    {
        my $encoding_ok;
        if ( my $charset = $entity->head->mime_attr('content-type.charset') ) {
            $encoding_ok = 1;
            $encoded_body = encode $charset, $body,
              sub { undef $encoding_ok; '' };
        }
        unless ($encoding_ok) {
            my $head = $entity->head;
            $head->mime_attr( 'Content-Type', 'text/plain' )
              unless $head->mime_attr('content-type');
            $head->mime_attr( 'content-type.charset' => 'UTF-8' );
            $encoded_body = encode_utf8($body);
        }
    }
    my $fh = $entity->bodyhandle->open('w') or die "Open body: $!\n";

    # Avoid "SMTP cannot transfer messages with partial final lines. (#5.6.2)":
    $fh->print($encoded_body);

    $fh->close or die "Cannot replace body: $!\n";
}

t/disclaimers/mails/alternative-thunderbird/ascii  view on Meta::CPAN


WARNING: UNSAFE CONTENT DETECTED!

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF"><br /><hr />WARNING: UNSAFE CONTENT DETECTED!
<br /><hr />
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <br /><hr />WARNING: UNSAFE CONTENT DETECTED!
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/disclaimers/mails/alternative-thunderbird/lines  view on Meta::CPAN

WARNING: UNSAFE CONTENT DETECTED!
---------------------------------

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF"><br /><hr />---------------------------------<br>WARNING: UNSAFE CONTENT DETECTED!<br>---------------------------------
<br /><hr />
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <br /><hr />---------------------------------<br>WARNING: UNSAFE CONTENT DETECTED!<br>---------------------------------
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/disclaimers/mails/alternative-thunderbird/testsig  view on Meta::CPAN


BAD WOLF. ☺

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF"><br /><hr />BAD WOLF. &#x263A;
<br /><hr />
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <br /><hr />BAD WOLF. &#x263A;
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/disclaimers/mails/alternative-thunderbird/utf8  view on Meta::CPAN


WARNING SOMETHING BAD MIGHT HAPPEN! 😉

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF"><br /><hr />WARNING SOMETHING BAD MIGHT HAPPEN! &#x1F609;
<br /><hr />
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <br /><hr />WARNING SOMETHING BAD MIGHT HAPPEN! &#x1F609;
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/disclaimers/mails/orig/alternative-thunderbird  view on Meta::CPAN

*Das ist der Rand von Ostermundigen.*


--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  </body>
</html>

--------------73B2CD1536F26DE6926DC449--


t/disclaimers/mails/simple-mutt/testsig  view on Meta::CPAN

Date: Tue, 7 Aug 2018 19:28:57 +0200
From: "Martin H. Sluka" <fany@cpan.org>
To: fany@cpan.org
Subject: simple test mail created with mutt
Message-ID: <20180807172857.GA26140@sluka.de>
MIME-Version: 1.0
content-type: text/plain; charset="UTF-8"
Content-Disposition: inline
User-Agent: Mutt/1.10.1 (2018-07-13)


BAD WOLF. ☺

Das ist der Rand von Ostermundigen.


BAD WOLF. ☺

t/disclaimers/mails/simple-mutt/utf8  view on Meta::CPAN

Date: Tue, 7 Aug 2018 19:28:57 +0200
From: "Martin H. Sluka" <fany@cpan.org>
To: fany@cpan.org
Subject: simple test mail created with mutt
Message-ID: <20180807172857.GA26140@sluka.de>
MIME-Version: 1.0
content-type: text/plain; charset="UTF-8"
Content-Disposition: inline
User-Agent: Mutt/1.10.1 (2018-07-13)


WARNING SOMETHING BAD MIGHT HAPPEN! 😉

Das ist der Rand von Ostermundigen.


WARNING SOMETHING BAD MIGHT HAPPEN! 😉

t/mails/alternative-thunderbird/ascii  view on Meta::CPAN

-- 
Das ist der Rand von Ostermundigen.

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <hr>Das ist der Rand von Ostermundigen.
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/mails/alternative-thunderbird/lines  view on Meta::CPAN

This is line one.
And this is line two.

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <hr>This is line one.<br>And this is line two.
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/mails/alternative-thunderbird/testsig  view on Meta::CPAN

Das ist der Rand von Ostermundigen. ☺
Und hier noch eine Zeile

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <hr>Das ist der Rand von Ostermundigen. &#x263A;<br>Und hier noch eine Zeile
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/mails/alternative-thunderbird/utf8  view on Meta::CPAN

-- 
Hi! 😉

--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  <hr>Hi! &#x1F609;
</body>
</html>

--------------73B2CD1536F26DE6926DC449--

t/mails/orig/alternative-thunderbird  view on Meta::CPAN

*Das ist der Rand von Ostermundigen.*


--------------73B2CD1536F26DE6926DC449
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><b>Das ist der Rand von Ostermundigen.</b><br>
    </p>
  </body>
</html>

--------------73B2CD1536F26DE6926DC449--


t/mails/simple-mutt/testsig  view on Meta::CPAN

Date: Tue, 7 Aug 2018 19:28:57 +0200
From: "Martin H. Sluka" <fany@cpan.org>
To: fany@cpan.org
Subject: simple test mail created with mutt
Message-ID: <20180807172857.GA26140@sluka.de>
MIME-Version: 1.0
content-type: text/plain; charset="UTF-8"
Content-Disposition: inline
User-Agent: Mutt/1.10.1 (2018-07-13)

Das ist der Rand von Ostermundigen.



-- 
Das ist der Rand von Ostermundigen. ☺
Und hier noch eine Zeile

t/mails/simple-mutt/utf8  view on Meta::CPAN

Date: Tue, 7 Aug 2018 19:28:57 +0200
From: "Martin H. Sluka" <fany@cpan.org>
To: fany@cpan.org
Subject: simple test mail created with mutt
Message-ID: <20180807172857.GA26140@sluka.de>
MIME-Version: 1.0
content-type: text/plain; charset="UTF-8"
Content-Disposition: inline
User-Agent: Mutt/1.10.1 (2018-07-13)

Das ist der Rand von Ostermundigen.



-- 
Hi! 😉



( run in 1.364 second using v1.01-cache-2.11-cpan-524268b4103 )