Email-Outlook-Message-0.921000755001750001750 014173262435 15540 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/Build.PL000444001750001750 177414173262435 17202 0ustar00matijsmatijs000000000000use 5.006; use Module::Build; my $build = Module::Build->new ( module_name => 'Email::Outlook::Message', dist_abstract => 'Read Outlook .msg files', license => 'perl', create_makefile_pl => 'traditional', requires => { 'perl' => 5.006, # Core modules 'File::Basename' => '0', 'POSIX' => '0', # Others - Not versioned 'Carp' => '0', 'Email::Address' => '0', 'Encode' => '0', 'Getopt::Long' => '0', 'IO::String' => '0', 'Pod::Usage' => '0', # Others - Versioned 'Email::MIME' => '1.923', 'Email::MIME::ContentType' => '1.014', 'Email::Sender' => '1.3', 'Email::Simple' => '2.206', 'OLE::Storage_Lite' => '0.14', # Needed for testing 'IO::All' => '0', 'Test::More' => '0', }, configure_requires => { 'Module::Build' => 0.38 }, script_files => [ 'script/msgconvert' ], meta_merge => { resources => { repository => 'https://github.com/mvz/email-outlook-message-perl' } }, ); $build->create_build_script; Email-Outlook-Message-0.921/CHANGELOG000444001750001750 655314173262435 17120 0ustar00matijsmatijs0000000000000.921 2022-01-23 - Adjust test suite to work with lower Email::MIME versions and lower the dependency accordingly (by Axel Beckert) - Ignore the codepage attribute for message bodies that are marked as being unicode-encoded - Adjust full_structure test to work with all supported Email::MIME versions 0.920 2020-09-11 - Use the "Internet Code Page" property to set the character set for text and HTML bodies (by Olly Betts) - Fix typos in comments and docs (by Olly Betts) - Update Email::MIME dependency to ensure consistent results - Fix wide character handling (by Olly Betts and Matijs van Zuijlen) - Fix mbox separators in msgconvert (by Olly Betts) - Add back VERSION to supporting modules to avoid upgrade issues 0.919 2017-09-02 - Add --outfile parameter to msgconvert (by Mirco Bauer) - Depend on known-good version of Email::Simple - Add oledump script to the distribution - Fix default charset (by Gerrit Drost) - Write raw binary instead of utf8 (by Andreas Pflug) - Fix bug with extracting uncompressed RTF content (by ztravis) 0.918 2014-10-28 - Correct encoding for text/plain parts to UTF8 - Properly extract file base name in msgconvert 0.917 2014-10-14 - Update documentation - Require Perl 5.6 in Build.PL - Fix POD error in msgconvert (patch by Gregor Herrmann) - Ensure full body is rendered for multipart messages when msgconvert delivers to mbox. 0.916 2014-09-02 - Add link to GitHub from META files (patch by Gabor Szabo) - Specify version only in the main module - Fix documentation - Fix dependency list 0.915 2014-09-02 - Consistently output CRLF line endings - Include msgconvert in this distribution 0.914 2013-08-11 - Add version number to all modules 0.913 2013-08-11 - Update dependency on Email::MIME and fix tests 0.912 2012-07-27 - Fix test cases to deal with changed CRLF handling in Email::Simple 0.911 2012-06-12 - Do not abort on unknown encodings. Warn instead. - Replace deprecated dependencies with Email::MIME 0.910 2010-08-10 - Major refactoring into different packages/classes. - Read all fixed-length properties from all property streams. - Improved logging of used and unused properties. - Use package variables for important data structures for easier extension. - As a result, this module now requires perl 5.6. 0.909 2009-10-11 - Handle (compressed) RTF version of message body. 0.908 2009-09-27 Bugfix release: - Applying patches by Jordan Hrycaj for CPAN bug #49495: - Handle undefined OLE dates properly - Parse root property stream to extract Date - Skip more properties - Actually handle References property 0.907 2009-07-06 - Handle nested OLE files that are not .MSG files 0.906 2009-03-14 - Make sure to_email_mime always returns a mime object, even if email has no body 0.905 2008-11-29 - Handle unicode data 0.904 2008-02-28 - Remove spurious loading of Email::Abstract - Code, comment and pod cleanups - Use Build.PL instead of Makefile.PL for building - Correct, locale independent, date formatting 0.903 2007-10-14 - Dates from OLE and submission_id are GMT, not local time 0.902 2007-10-10 - Fix pod coverage testing 0.901 2007-09-24 - First release as module on CPAN - Extracted main functionality of msgconvert.pl to Email::Outlook::Message Email-Outlook-Message-0.921/MANIFEST000444001750001750 135014173262435 17025 0ustar00matijsmatijs000000000000Build.PL CHANGELOG lib/Email/Outlook/Message.pm lib/Email/Outlook/Message/AddressInfo.pm lib/Email/Outlook/Message/Attachment.pm lib/Email/Outlook/Message/Base.pm MANIFEST This list of files META.json META.yml README script/msgconvert t/basics.t t/charset.t t/files/charset.eml t/files/charset.msg t/files/gpg_signed.eml t/files/gpg_signed.msg t/files/plain_jpeg_attached.eml t/files/plain_jpeg_attached.msg t/files/plain_uc_unsent.eml t/files/plain_uc_unsent.msg t/files/plain_uc_wc_unsent.eml t/files/plain_uc_wc_unsent.msg t/files/plain_unsent.eml t/files/plain_unsent.msg t/full_structure.t t/gpg_signed.t t/internals.t t/plain_jpeg_attached.t t/plain_uc_unsent.t t/plain_uc_wc_unsent.t t/plain_unsent.t t/pod_coverage.t TODO Makefile.PL Email-Outlook-Message-0.921/META.json000444001750001750 365614173262435 17330 0ustar00matijsmatijs000000000000{ "abstract" : "Read Outlook .msg files", "author" : [ "unknown" ], "dynamic_config" : 1, "generated_by" : "Module::Build version 0.4231", "license" : [ "perl_5" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : 2 }, "name" : "Email-Outlook-Message", "prereqs" : { "configure" : { "requires" : { "Module::Build" : "0.38" } }, "runtime" : { "requires" : { "Carp" : "0", "Email::Address" : "0", "Email::MIME" : "1.923", "Email::MIME::ContentType" : "1.014", "Email::Sender" : "1.3", "Email::Simple" : "2.206", "Encode" : "0", "File::Basename" : "0", "Getopt::Long" : "0", "IO::All" : "0", "IO::String" : "0", "OLE::Storage_Lite" : "0.14", "POSIX" : "0", "Pod::Usage" : "0", "Test::More" : "0", "perl" : "5.006" } } }, "provides" : { "Email::Outlook::Message" : { "file" : "lib/Email/Outlook/Message.pm", "version" : "0.921" }, "Email::Outlook::Message::AddressInfo" : { "file" : "lib/Email/Outlook/Message/AddressInfo.pm", "version" : "0.921" }, "Email::Outlook::Message::Attachment" : { "file" : "lib/Email/Outlook/Message/Attachment.pm", "version" : "0.921" }, "Email::Outlook::Message::Base" : { "file" : "lib/Email/Outlook/Message/Base.pm", "version" : "0.921" } }, "release_status" : "stable", "resources" : { "license" : [ "http://dev.perl.org/licenses/" ], "repository" : { "url" : "https://github.com/mvz/email-outlook-message-perl" } }, "version" : "0.921", "x_serialization_backend" : "JSON::PP version 4.04" } Email-Outlook-Message-0.921/META.yml000444001750001750 242414173262435 17150 0ustar00matijsmatijs000000000000--- abstract: 'Read Outlook .msg files' author: - unknown build_requires: {} configure_requires: Module::Build: '0.38' dynamic_config: 1 generated_by: 'Module::Build version 0.4231, CPAN::Meta::Converter version 2.150010' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: Email-Outlook-Message provides: Email::Outlook::Message: file: lib/Email/Outlook/Message.pm version: '0.921' Email::Outlook::Message::AddressInfo: file: lib/Email/Outlook/Message/AddressInfo.pm version: '0.921' Email::Outlook::Message::Attachment: file: lib/Email/Outlook/Message/Attachment.pm version: '0.921' Email::Outlook::Message::Base: file: lib/Email/Outlook/Message/Base.pm version: '0.921' requires: Carp: '0' Email::Address: '0' Email::MIME: '1.923' Email::MIME::ContentType: '1.014' Email::Sender: '1.3' Email::Simple: '2.206' Encode: '0' File::Basename: '0' Getopt::Long: '0' IO::All: '0' IO::String: '0' OLE::Storage_Lite: '0.14' POSIX: '0' Pod::Usage: '0' Test::More: '0' perl: '5.006' resources: license: http://dev.perl.org/licenses/ repository: https://github.com/mvz/email-outlook-message-perl version: '0.921' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' Email-Outlook-Message-0.921/Makefile.PL000444001750001750 200314173262435 17642 0ustar00matijsmatijs000000000000# Note: this file was auto-generated by Module::Build::Compat version 0.4231 require 5.006; use ExtUtils::MakeMaker; WriteMakefile ( 'NAME' => 'Email::Outlook::Message', 'VERSION_FROM' => 'lib/Email/Outlook/Message.pm', 'PREREQ_PM' => { 'Carp' => '0', 'Email::Address' => '0', 'Email::MIME' => '1.923', 'Email::MIME::ContentType' => '1.014', 'Email::Sender' => '1.3', 'Email::Simple' => '2.206', 'Encode' => '0', 'File::Basename' => '0', 'Getopt::Long' => '0', 'IO::All' => '0', 'IO::String' => '0', 'OLE::Storage_Lite' => '0.14', 'POSIX' => '0', 'Pod::Usage' => '0', 'Test::More' => '0' }, 'INSTALLDIRS' => 'site', 'EXE_FILES' => [ 'script/msgconvert' ], 'PL_FILES' => {} ) ; Email-Outlook-Message-0.921/README000444001750001750 220714173262435 16556 0ustar00matijsmatijs000000000000NAME Email::Outlook::Message DESCRIPTION This module reads e-mail messages stored as .msg files (such as generated by Outlook), and converts them to Email::MIME objects. It also includes a command-line interface in the form of the msgconvert script. You do not need Outlook installed to use this module. VERSION 0.921 INSTALLATION To install this module type the following: perl Build.PL ./Build ./Build test ./Build install You may have to become root for that final step. DEPENDENCIES This module requires these other modules: Carp Encode Getopt::Long IO::String Pod::Usage Email::MIME - 1.923 or later Email::MIME::ContentType - 1.014 or later Email::Sender - 1.3 or later Email::Simple - 2.206 or later OLE::Storage_Lite - 0.14 or later For testing: IO::All Test::More COPYRIGHT AND LICENCE Copyright 2002--2020 Matijs van Zuijlen. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. Email-Outlook-Message-0.921/TODO000444001750001750 47114173262435 16347 0ustar00matijsmatijs000000000000TODO - Process applefiles (using Mac::AppleSingleDouble?) - Process gpg-signed mail properly. - Create interface to internal properties. - Allow an output file to be specified on the command line - Make use of more of the items, if possible. - Create more test files - UTF8 text bodies should set encoding = UTF8 Email-Outlook-Message-0.921/lib000755001750001750 014173262435 16306 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/lib/Email000755001750001750 014173262435 17335 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/lib/Email/Outlook000755001750001750 014173262435 20771 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/lib/Email/Outlook/Message.pm000444001750001750 3336714173262435 23104 0ustar00matijsmatijs000000000000package Email::Outlook::Message; =head1 NAME Email::Outlook::Message.pm - Read Outlook .msg files =head1 SYNOPSIS use Email::Outlook::Message; my $msg = new Email::Outlook::Message $filename, $verbose; my $mime = $msg->to_email_mime; $mime->as_string; =head1 DESCRIPTION Parses .msg message files as produced by Microsoft Outlook. =head1 METHODS =over 8 =item B Parse the file pointed at by $msg. Set $verbose to a true value to print information about skipped parts of the .msg file on STDERR. =item B Output result as an Email::MIME object. =back =head1 BUGS Not all data that is in the .msg file is converted. There are some parts whose meaning escapes me, although more documentation on MIME properties is available these days. Other parts do not make sense outside of Outlook and Exchange. GPG signed mail is not processed correctly. Neither are attachments of type 'appledoublefile'. It would be nice if we could write .MSG files too, but that will require quite a big rewrite. =head1 AUTHOR Matijs van Zuijlen, C =head1 COPYRIGHT AND LICENSE Copyright 2002--2020 by Matijs van Zuijlen This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut use strict; use warnings; use 5.006; use vars qw($VERSION); $VERSION = "0.921"; use Email::Simple; use Email::MIME::Creator; use Email::Outlook::Message::AddressInfo; use Email::Outlook::Message::Attachment; use Carp; use base 'Email::Outlook::Message::Base'; our $skipheaders = { map { uc($_) => 1 } "MIME-Version", "Content-Type", "Content-Transfer-Encoding", "X-Mailer", "X-Msgconvert", "X-MS-Tnef-Correlator", "X-MS-Has-Attach" }; our $MAP_SUBITEM_FILE = { '1000' => "BODY_PLAIN", # Body '1009' => "BODY_RTF", # Compressed-RTF version of body '1013' => "BODY_HTML", # HTML Version of body '0037' => "SUBJECT", # Subject '0047' => "SUBMISSION_ID", # Seems to contain the date '007D' => "HEAD", # Full headers '0C1A' => "FROM", # From: Name '0C1E' => "FROM_ADDR_TYPE", # From: Address type '0C1F' => "FROM_ADDR", # From: Address '0E04' => "TO", # To: Names '0E03' => "CC", # Cc: Names '1035' => "MESSAGEID", # Message-Id '1039' => "REFERENCES", # References: Header '1042' => "INREPLYTO", # In reply to Message-Id '3007' => 'DATE2ND', # Creation Time '0039' => 'DATE1ST', # Outlook sent date '3FDE' => 'CODEPAGE', # Code page for text or html body }; # Map codepage numbers to charset names. Codepages not listed here just get # 'CP' prepended, so 1252 -> 'CP1252'. our $MAP_CODEPAGE = { 20127 => 'US-ASCII', 20866 => 'KOI8-R', 28591 => 'ISO-8859-1', 65001 => 'UTF-8', }; # # Main body of module # sub new { my $class = shift; my $file = shift or croak "File name is required parameter"; my $verbose = shift; my $self = $class->_empty_new; $self->{EMBEDDED} = 0; my $msg = OLE::Storage_Lite->new($file); my $pps = $msg->getPpsTree(1); $pps or croak "Parsing $file as OLE file failed"; $self->_set_verbosity($verbose); # TODO: Use separate object as parser? $self->_process_pps($pps); return $self; } sub _empty_new { my $class = shift; return bless { ADDRESSES => [], ATTACHMENTS => [], FROM_ADDR_TYPE => "", VERBOSE => 0, EMBEDDED => 1 }, $class; } sub to_email_mime { my $self = shift; my $bodymime; my $mime; my @parts; if ($self->{BODY_PLAIN}) { push(@parts, $self->_create_mime_plain_body()); } if ($self->{BODY_HTML}) { push(@parts, $self->_create_mime_html_body()); } if ($self->{BODY_RTF}) { push(@parts, $self->_create_mime_rtf_body()); } if ((scalar @parts) > 1) { for (@parts) { $self->_clean_part_header($_) }; $bodymime = Email::MIME->create( attributes => { content_type => "multipart/alternative", encoding => "8bit", }, parts => \@parts ); } elsif ((@parts) == 1) { $bodymime = $parts[0]; } else { $bodymime = $self->_create_mime_plain_body(); } if (@{$self->{ATTACHMENTS}}>0) { $self->_clean_part_header($bodymime); my $mult = Email::MIME->create( attributes => { content_type => "multipart/mixed", encoding => "8bit", }, parts => [$bodymime], ); foreach my $att (@{$self->{ATTACHMENTS}}) { $self->_SaveAttachment($mult, $att); } $mime = $mult; } else { $mime = $bodymime; } #$mime->header_set('Date', undef); $self->_SetHeaderFields($mime); $self->_copy_header_data($mime); return $mime; } # # Below are functions that walk the PPS tree. This is simply a tree walk. # It's not really recursive (except when an attachment contains a .msg # file), since the tree is shallow (max. 1 subdirectory deep). # # The structure is as follows: # # Root # Items with properties of the e-mail # Dirs containing addresses # Items with properties of the address # Dirs containing Attachments # Items with properties of the attachment (including its data) # Dir that is itself a .msg file (if the attachment is an email). # sub _property_map { return $MAP_SUBITEM_FILE; } # # Process a subdirectory. This is either an address or an attachment. # sub _process_subdirectory { my ($self, $pps) = @_; $self->_extract_ole_date($pps); my $name = $self->_get_pps_name($pps); if ($name =~ '__recip_version1 0_ ') { # Address of one recipient $self->_process_address($pps); } elsif ($name =~ '__attach_version1 0_ ') { # Attachment $self->_process_attachment($pps); } else { $self->_warn_about_unknown_directory($pps); } return; } # # Process a subdirectory that contains an email address. # sub _process_address { my ($self, $pps) = @_; my $addr_info = Email::Outlook::Message::AddressInfo->new($pps, $self->{VERBOSE}); push @{$self->{ADDRESSES}}, $addr_info; return; } # # Process a subdirectory that contains an attachment. # sub _process_attachment { my ($self, $pps) = @_; my $attachment = Email::Outlook::Message::Attachment->new($pps, $self->{VERBOSE}); push @{$self->{ATTACHMENTS}}, $attachment; return; } # # Header length of the property stream depends on whether the Message # object is embedded or not. # sub _property_stream_header_length { my $self = shift; return ($self->{EMBEDDED} ? 24 : 32) } # # Helper functions # # # Extract time stamp of this OLE item (this is in GMT) # sub _extract_ole_date { my ($self, $pps) = @_; unless (defined ($self->{OLEDATE})) { # Make Date my $datearr; $datearr = $pps->{Time2nd}; $datearr = $pps->{Time1st} unless $datearr and $datearr->[0]; $self->{OLEDATE} = $self->_format_date($datearr) if $datearr and $datearr->[0]; } return; } # If we didn't get the date from the original header data, we may be able # to get it from the SUBMISSION_ID: # It seems to have the format of a semicolon-separated list of key=value # pairs. The key l has a value with the format: # -Z-, where DATETIME is the date and time (gmt) # in the format YYMMDDHHMMSS. sub _submission_id_date { my $self = shift; my $submission_id = $self->{SUBMISSION_ID} or return; $submission_id =~ m/ l=.*- (\d\d) (\d\d) (\d\d) (\d\d) (\d\d) (\d\d) Z-.* /x or return; my $year = $1; $year += 100 if $year < 20; return $self->_format_date([$6,$5,$4,$3,$2-1,$year]); } sub _SaveAttachment { my ($self, $mime, $att) = @_; my $m = $att->to_email_mime; $self->_clean_part_header($m); $mime->parts_add([$m]); return; } # Set header fields sub _AddHeaderField { my ($self, $mime, $fieldname, $value) = @_; #my $oldvalue = $mime->header($fieldname); #return if $oldvalue; $mime->header_set($fieldname, $value) if $value; return; } sub _Address { my ($self, $tag) = @_; my $result = $self->{$tag} || ""; my $address = $self->{$tag . "_ADDR"} || ""; if ($address) { $result .= " " if $result; $result .= "<$address>"; } return $result; } # Find SMTP addresses for the given list of names sub _expand_address_list { my ($self, $names) = @_; return "" unless defined $names; my @namelist = split / ; [ ]* /x, $names; my @result; name: foreach my $name (@namelist) { my $addresstext = $self->_find_name_in_addresspool($name); if ($addresstext) { push @result, $addresstext; } else { push @result, $name; } } return join ", ", @result; } sub _find_name_in_addresspool { my ($self, $name) = @_; my $addresspool = $self->{ADDRESSES}; foreach my $address (@{$addresspool}) { if ($name eq $address->name) { return $address->display_address; } } return; } # TODO: Don't really want to need this! sub _clean_part_header { my ($self, $part) = @_; $part->header_set('Date'); unless ($part->content_type =~ m{ ^ multipart / }x) { $part->header_set('MIME-Version') }; return; } sub _body_plain_character_set { my $self = shift; my $body_encoding = $self->{BODY_PLAIN_ENCODING}; $self->_body_character_set($body_encoding) } sub _body_html_character_set { my $self = shift; my $body_encoding = $self->{BODY_HTML_ENCODING}; $self->_body_character_set($body_encoding) } sub _body_character_set { my $self = shift; my $body_encoding = shift; my $codepage = $self->{CODEPAGE}; if (defined $body_encoding && $body_encoding eq "001F") { return "UTF-8"; } elsif (defined $codepage) { return $MAP_CODEPAGE->{$codepage} || "CP$codepage"; } else { return 'CP1252'; } } sub _create_mime_plain_body { my $self = shift; my $charset = $self->_body_plain_character_set; my $body_str = $self->{BODY_PLAIN}; if ($charset ne "UTF-8") { # In this case, the body is a string of octets and needs to be decoded. $body_str = Encode::decode($charset, $body_str); } return Email::MIME->create( attributes => { content_type => "text/plain", charset => $charset, disposition => "inline", encoding => "8bit", }, body_str => $body_str ); } sub _create_mime_html_body { my $self = shift; return Email::MIME->create( attributes => { content_type => "text/html", charset => $self->_body_html_character_set, disposition => "inline", encoding => "8bit", }, body => $self->{BODY_HTML} ); } # Implementation based on the information in # http://www.freeutils.net/source/jtnef/rtfcompressed.jsp, # and the implementation in tnef version 1.4.5. my $MAGIC_COMPRESSED_RTF = 0x75465a4c; my $MAGIC_UNCOMPRESSED_RTF = 0x414c454d; my $BASE_BUFFER = "{\\rtf1\\ansi\\mac\\deff0\\deftab720{\\fonttbl;}{\\f0\\fnil \\froman " . "\\fswiss \\fmodern \\fscript \\fdecor MS Sans SerifSymbolArial" . "Times New RomanCourier{\\colortbl\\red0\\green0\\blue0\n\r\\par " . "\\pard\\plain\\f0\\fs20\\b\\i\\u\\tab\\tx"; sub _create_mime_rtf_body { my $self = shift; my $data = $self->{BODY_RTF}; my ($size, $rawsize, $magic, $crc) = unpack "V4", substr $data, 0, 16; my $buffer; if ($magic == $MAGIC_COMPRESSED_RTF) { $buffer = $BASE_BUFFER; my $output_length = length($buffer) + $rawsize; my @flags; my $in = 16; while (length($buffer) < $output_length) { if (@flags == 0) { @flags = split "", unpack "b8", substr $data, $in++, 1; } my $flag = shift @flags; if ($flag eq "0") { $buffer .= substr $data, $in++, 1; } else { my ($a, $b) = unpack "C2", substr $data, $in, 2; my $offset = ($a << 4) | ($b >> 4); my $length = ($b & 0xf) + 2; my $buflen = length $buffer; my $longoffset = $buflen - ($buflen % 4096) + $offset; if ($longoffset >= $buflen) { $longoffset -= 4096; } while ($length > 0) { $buffer .= substr $buffer, $longoffset, 1; $length--; $longoffset++; } $in += 2; } } $buffer = substr $buffer, length $BASE_BUFFER; } elsif ($magic == $MAGIC_UNCOMPRESSED_RTF) { $buffer = substr $data, 16; } else { carp "Incorrect magic number in RTF body.\n"; } return Email::MIME->create( attributes => { content_type => "application/rtf", disposition => "inline", encoding => "base64", }, body => $buffer ); } # Copy original header data. # Note: This should contain the Date: header. sub _copy_header_data { my ($self, $mime) = @_; defined $self->{HEAD} or return; # The extra \n is needed for Email::Simple to pick up all headers. # This is a change in Email::Simple. my $parsed = Email::Simple->new($self->{HEAD} . "\n"); foreach my $tag (grep { !$skipheaders->{uc $_}} $parsed->header_names) { $mime->header_set($tag, $parsed->header($tag)); } return; } # Set header fields sub _SetHeaderFields { my ($self, $mime) = @_; $self->_AddHeaderField($mime, 'Subject', $self->{SUBJECT}); $self->_AddHeaderField($mime, 'From', $self->_Address("FROM")); #$self->_AddHeaderField($mime, 'Reply-To', $self->_Address("REPLYTO")); $self->_AddHeaderField($mime, 'To', $self->_expand_address_list($self->{TO})); $self->_AddHeaderField($mime, 'Cc', $self->_expand_address_list($self->{CC})); $self->_AddHeaderField($mime, 'Message-Id', $self->{MESSAGEID}); $self->_AddHeaderField($mime, 'In-Reply-To', $self->{INREPLYTO}); $self->_AddHeaderField($mime, 'References', $self->{REFERENCES}); # Least preferred option to set the Date: header; this uses the date the # msg file was saved. $self->_AddHeaderField($mime, 'Date', $self->{OLEDATE}); # Second preferred option: get it from the SUBMISSION_ID: $self->_AddHeaderField($mime, 'Date', $self->_submission_id_date()); # Most preferred option from the property list $self->_AddHeaderField($mime, 'Date', $self->{DATE2ND}); $self->_AddHeaderField($mime, 'Date', $self->{DATE1ST}); # After this, we'll try getting the date from the original headers. return; } 1; Email-Outlook-Message-0.921/lib/Email/Outlook/Message000755001750001750 014173262435 22355 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/lib/Email/Outlook/Message/AddressInfo.pm000444001750001750 360714173262435 25257 0ustar00matijsmatijs000000000000package Email::Outlook::Message::AddressInfo; =head1 NAME Email::Outlook::Message::AddressInfo - Handle address data in .msg files =head1 DESCRIPTION This is an internal module of Email::Outlook::Message. It is a subclass of Email::Outlook::Message::Base. =head1 METHODS =over 8 =item B =item B =item B =item B =item B =back =head1 AUTHOR Matijs van Zuijlen, C =head1 COPYRIGHT AND LICENSE Copyright 2002--2020 by Matijs van Zuijlen This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut use strict; use warnings; use vars qw($VERSION); $VERSION = "0.921"; use Carp; use base 'Email::Outlook::Message::Base'; our $MAP_ADDRESSITEM_FILE = { '3001' => "NAME", # Real name '3002' => "TYPE", # Address type '403D' => "TYPE2", # Address type TODO: Not used '3003' => "ADDRESS", # Address '403E' => "ADDRESS2", # Address TODO: Not used '39FE' => "SMTPADDRESS", # SMTP Address variant }; sub _property_map { return $MAP_ADDRESSITEM_FILE; } # DIR Entries: There should be none. sub _process_subdirectory { my ($self, $pps) = @_; $self->_warn_about_unknown_directory($pps); return; } sub name { my $self = shift; return $self->property('NAME') } sub address_type { my $self = shift; return $self->property('TYPE') } sub address { my $self = shift; return $self->property('ADDRESS') } sub smtp_address { my $self = shift; return $self->property('SMTPADDRESS') } sub display_address { my $self = shift; my $addresstext = $self->name . " <"; if (defined ($self->smtp_address)) { $addresstext .= $self->smtp_address; } elsif ($self->address_type eq "SMTP") { $addresstext .= $self->address; } $addresstext .= ">"; return $addresstext; } sub _property_stream_header_length { return 8; } 1; Email-Outlook-Message-0.921/lib/Email/Outlook/Message/Attachment.pm000444001750001750 663114173262435 25146 0ustar00matijsmatijs000000000000package Email::Outlook::Message::Attachment; =head1 NAME Email::Outlook::Message::Attachment - Handle attachment data in .msg files =head1 DESCRIPTION This is an internal module of Email::Outlook::Message. It is a subclass of Email::Outlook::Message::Base. =head1 METHODS =over 8 =item B Create a new attachment object, using $pps as data source. Overrides the base method by setting some default values. =item B Convert the attachment to an Email::MIME object. =back =head1 AUTHOR Matijs van Zuijlen, C =head1 COPYRIGHT AND LICENSE Copyright 2002--2020 by Matijs van Zuijlen This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut use strict; use warnings; use Carp; use vars qw($VERSION); $VERSION = "0.921"; use Email::MIME::ContentType; use base 'Email::Outlook::Message::Base'; our $MAP_ATTACHMENT_FILE = { '3701' => "DATA", # Data '3704' => "SHORTNAME", # Short file name '3707' => "LONGNAME", # Long file name '370E' => "MIMETYPE", # mime type '3712' => "CONTENTID", # content-id '3716' => "DISPOSITION", # disposition }; sub new { my ($class, $pps, $verbosity) = @_; my $self = $class->SUPER::new($pps, $verbosity); bless $self, $class; $self->{MIMETYPE} ||= 'application/octet-stream'; $self->{ENCODING} ||= 'base64'; $self->{DISPOSITION} ||= 'attachment'; if ($self->{MIMETYPE} eq 'multipart/signed') { $self->{ENCODING} = '8bit'; } return $self; } sub to_email_mime { my $self = shift; my $mt = parse_content_type($self->{MIMETYPE}); my $m = Email::MIME->create( attributes => { content_type => "$mt->{discrete}/$mt->{composite}", %{$mt->{attributes}}, encoding => $self->{ENCODING}, filename => $self->{LONGNAME} || $self->{SHORTNAME}, name => $self->{LONGNAME} || $self->{LONGNAME}, disposition => $self->{DISPOSITION}, }, header => [ 'Content-ID' => $self->{CONTENTID} ], body => $self->{DATA}); return $m } sub _property_map { return $MAP_ATTACHMENT_FILE; } sub _process_subdirectory { my ($self, $pps) = @_; my $name = $self->_get_pps_name($pps); my ($property, $encoding) = $self->_parse_item_name($name); if ($property eq '3701') { # Nested msg file my $is_msg = 1; foreach my $child (@{$pps->{Child}}) { unless ($self->_get_pps_name($child) =~ / ^ ( __recip | __attach | __substg1 | __nameid | __properties ) /x ) { $is_msg = 0; last; } } if ($is_msg) { my $msgp = Email::Outlook::Message->_empty_new(); $msgp->_set_verbosity($self->{VERBOSE}); $msgp->_process_pps($pps); $self->{DATA} = $msgp->to_email_mime->as_string; $self->{MIMETYPE} = 'message/rfc822'; $self->{ENCODING} = '8bit'; } else { foreach my $child (@{$pps->{Child}}) { if (eval { $child->isa('OLE::Storage_Lite::PPS::File')}) { foreach my $prop ("Time1st", "Time2nd") { $child->{$prop} = undef; } } } my $nPps = OLE::Storage_Lite::PPS::Root->new( $pps->{Time1st}, $pps->{Time2nd}, $pps->{Child}); my $data; my $io = IO::String->new($data); binmode($io); $nPps->save($io, 1); $self->{DATA} = $data; } } else { $self->_warn_about_unknown_directory($pps); } return; } sub _property_stream_header_length { return 8; } 1; Email-Outlook-Message-0.921/lib/Email/Outlook/Message/Base.pm000444001750001750 2672014173262435 23751 0ustar00matijsmatijs000000000000package Email::Outlook::Message::Base; =head1 NAME Email::Outlook::Message::Base - Base parser for .msg files. =head1 DESCRIPTION This is an internal module of Email::Outlook::Message. =head1 METHODS =over 8 =item B =item B =item B =item B =item B =back =head1 AUTHOR Matijs van Zuijlen, C =head1 COPYRIGHT AND LICENSE Copyright 2002--2020 by Matijs van Zuijlen This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut use strict; use warnings; use Encode; use IO::String; use POSIX; use Carp; use OLE::Storage_Lite; use vars qw($VERSION); $VERSION = "0.921"; my $DIR_TYPE = 1; my $FILE_TYPE = 2; # Variable encodings my $ENCODING_UNICODE = '001F'; my $ENCODING_ASCII = '001E'; my $ENCODING_BINARY = '0102'; my $ENCODING_DIRECTORY = '000D'; our $VARIABLE_ENCODINGS = { '000D' => 'Directory', '001F' => 'Unicode', '001E' => 'Ascii?', '0102' => 'Binary', }; # Fixed encodings my $ENCODING_INTEGER16 = '0002'; my $ENCODING_INTEGER32 = '0003'; my $ENCODING_BOOLEAN = '000B'; my $ENCODING_DATE = '0040'; # # Descriptions partially based on mapitags.h # our $skipproperties = { # Envelope properties '0002' => "Alternate Recipient Allowed", '000B' => "Conversation Key", '0017' => "Importance", #TODO: Use this. '001A' => "Message Class", '0023' => "Originator Delivery Report Requested", '0026' => "Priority", #TODO: Use this. '0029' => "Read Receipt Requested", #TODO: Use this. '0036' => "Sensitivity", # As assessed by the Sender '003B' => "Sent Representing Search Key", '003D' => "Subject Prefix", '003F' => "Received By EntryId", '0040' => "Received By Name", # TODO: These two fields are part of the Sender field. '0041' => "Sent Representing EntryId", '0042' => "Sent Representing Name", '0043' => "Received Representing EntryId", '0044' => "Received Representing Name", '0046' => "Read Receipt EntryId", '0051' => "Received By Search Key", '0052' => "Received Representing Search Key", '0053' => "Read Receipt Search Key", # TODO: These two fields are part of the Sender field. '0064' => "Sent Representing Address Type", '0065' => "Sent Representing Email Address", '0070' => "Conversation Topic", '0071' => "Conversation Index", '0075' => "Received By Address Type", '0076' => "Received By Email Address", '0077' => "Received Representing Address Type", '0078' => "Received Representing Email Address", '007F' => "TNEF Correlation Key", # Recipient properties '0C15' => "Recipient Type", # Sender properties '0C19' => "Sender Entry Id", '0C1D' => "Sender Search Key", '0C1E' => "Sender Address Type", # Non-transmittable properties '0E02' => "Display Bcc", '0E06' => "Message Delivery Time", '0E07' => "Message Flags", '0E0A' => "Sent Mail EntryId", '0E0F' => "Responsibility", '0E1B' => "Has Attachments", '0E1D' => "Normalized Subject", '0E1F' => "RTF In Sync", '0E20' => "Attachment Size", '0E21' => "Attachment Number", '0E23' => "Internet Article Number", '0E27' => "Security Descriptor", '0E79' => "Trust Sender", '0FF4' => "Access", '0FF6' => "Instance Key", '0FF7' => "Access Level", '0FF9' => "Record Key", '0FFE' => "Object Type", '0FFF' => "EntryId", # Content properties '1006' => "RTF Sync Body CRC", '1007' => "RTF Sync Body Count", '1008' => "RTF Sync Body Tag", '1010' => "RTF Sync Prefix Count", '1011' => "RTF Sync Trailing Count", '1046' => "Original Message ID", '1080' => "Icon Index", '1081' => "Last Verb Executed", '1082' => "Last Verb Execution Time", '10F3' => "URL Component Name", '10F4' => "Attribute Hidden", '10F5' => "Attribute System", '10F6' => "Attribute Read Only", # 'Common property' '3000' => "Row Id", '3001' => "Display Name", '3002' => "Address Type", '3007' => "Creation Time", '3008' => "Last Modification Time", '300B' => "Search Key", # Message store info '340D' => "Store Support Mask", '3414' => "Message Store Provider", # Attachment properties '3702' => "Attachment Encoding", '3703' => "Attachment Extension", # TODO: Use the following to distinguish between nested msg and other OLE # stores. '3705' => "Attachment Method", '3709' => "Attachment Rendering", # Icon as WMF '370A' => "Tag identifying application that supplied the attachment", '370B' => "Attachment Rendering Position", '3713' => "Attachment Content Location", #TODO: Use this? # 3900 -- 39FF: 'Address book' '3900' => "Address Book Display Type", '39FF' => "Address Book 7 Bit Display Name", # Mail User Object '3A00' => "Account", '3A20' => "Transmittable Display Name", '3A40' => "Send Rich Info", # 'Display table properties' '3FF8' => "Creator Name", '3FF9' => "Creator EntryId", '3FFA' => "Last Modifier Name", '3FFB' => "Last Modifier EntryId", '3FFD' => "Message Code Page", # 'Transport-defined envelope property' '4019' => "Sender Flags", '401A' => "Sent Representing Flags", '401B' => "Received By Flags", '401C' => "Received Representing Flags", '4029' => "Read Receipt Address Type", '402A' => "Read Receipt Email Address", '402B' => "Read Receipt Name", '5FF6' => "Recipient Display Name", '5FF7' => "Recipient EntryId", '5FFD' => "Recipient Flags", '5FFF' => "Recipient Track Status", # 'Provider-defined internal non-transmittable property' '664A' => "Has Named Properties", '6740' => "Sent Mail Server EntryId", }; sub new { my ($class, $pps, $verbose) = @_; my $self = bless { _pps_file_entries => {}, _pps => $pps }, $class; $self->_set_verbosity($verbose); $self->_process_pps($pps); return $self; } sub mapi_property_names { my $self = shift; return keys %{$self->{_pps_file_entries}}; } sub get_mapi_property { my ($self, $code) = @_; return $self->{_pps_file_entries}->{$code}; } sub set_mapi_property { my ($self, $code, $data) = @_; $self->{_pps_file_entries}->{$code} = $data; return; } sub property { my ($self, $name) = @_; my $map = $self->_property_map; # TODO: Prepare reverse map instead of doing dumb lookup. foreach my $code (keys %{$map}) { my $key = $map->{$code}; next unless $key eq $name; my $prop = $self->get_mapi_property($code); if ($prop) { my ($encoding, $data) = @{$prop}; return $self->_decode_mapi_property($encoding, $data); } else { return; } } return; } sub _decode_mapi_property { my ($self, $encoding, $data) = @_; if ($encoding eq $ENCODING_ASCII or $encoding eq $ENCODING_UNICODE) { if ($encoding eq $ENCODING_UNICODE) { $data = decode("UTF-16LE", $data); } $data =~ s/ \000 $ //sgx; return $data; } if ($encoding eq $ENCODING_BINARY) { return $data; } if ($encoding eq $ENCODING_DATE) { my @a = OLE::Storage_Lite::OLEDate2Local $data; return $self->_format_date(\@a); } if ($encoding eq $ENCODING_INTEGER16) { return unpack("v", substr($data, 0, 2)); } if ($encoding eq $ENCODING_INTEGER32) { return unpack("V", substr($data, 0, 4)); } if ($encoding eq $ENCODING_BOOLEAN) { return unpack("C", substr($data, 0, 1)); } warn "Unhandled encoding $encoding\n"; return $data; } sub _process_pps { my ($self, $pps) = @_; foreach my $child (@{$pps->{Child}}) { if ($child->{Type} == $DIR_TYPE) { $self->_process_subdirectory($child); } elsif ($child->{Type} == $FILE_TYPE) { $self->_process_pps_file_entry($child); } else { carp "Unknown entry type: $child->{Type}"; } } $self->_check_pps_file_entries($self->_property_map); return; } sub _get_pps_name { my ($self, $pps) = @_; my $name = OLE::Storage_Lite::Ucs2Asc($pps->{Name}); $name =~ s/ \W / /gx; return $name; } sub _parse_item_name { my ($self, $name) = @_; if ($name =~ / ^ __substg1 [ ] 0_ (....) (....) $ /x) { my ($property, $encoding) = ($1, $2); return ($property, $encoding); } else { return (undef, undef); } } sub _warn_about_unknown_directory { my ($self, $pps) = @_; my $name = $self->_get_pps_name($pps); if ($name eq '__nameid_version1 0') { # TODO: Use this data to access so-called named properties. $self->{VERBOSE} and warn "Skipping DIR entry $name (Introductory stuff)\n"; } else { warn "Unknown DIR entry $name\n"; } return; } sub _warn_about_unknown_file { my ($self, $pps) = @_; my $name = $self->_get_pps_name($pps); if ($name eq 'Olk10SideProps_0001') { $self->{VERBOSE} and warn "Skipping FILE entry $name (Properties)\n"; } else { warn "Unknown FILE entry $name\n"; } return; } # # Generic processor for a file entry: Inserts the entry's data into the # $self's mapi property list. # sub _process_pps_file_entry { my ($self, $pps) = @_; my $name = $self->_get_pps_name($pps); my ($property, $encoding) = $self->_parse_item_name($name); if (defined $property) { $self->set_mapi_property($property, [$encoding, $pps->{Data}]); } elsif ($name eq '__properties_version1 0') { $self->_process_property_stream ($pps->{Data}); } else { $self->_warn_about_unknown_file($pps); } return; } sub _process_property_stream { my ($self, $data) = @_; my ($n, $len) = ($self->_property_stream_header_length, length $data) ; while ($n + 16 <= $len) { my @f = unpack "v4", substr $data, $n, 8; my $encoding = sprintf("%04X", $f[0]); unless ($VARIABLE_ENCODINGS->{$encoding}) { my $property = sprintf("%04X", $f[1]); my $propdata = substr $data, $n+8, 8; $self->set_mapi_property($property, [$encoding, $propdata]); } } continue { $n += 16 ; } return; } sub _check_pps_file_entries { my ($self, $map) = @_; foreach my $property ($self->mapi_property_names) { if (my $key = $map->{$property}) { $self->_use_property($key, $property); } else { $self->_warn_about_skipped_property($property); } } return; } sub _use_property { my ($self, $key, $property) = @_; my ($encoding, $data) = @{$self->get_mapi_property($property)}; $self->{$key} = $self->_decode_mapi_property($encoding, $data); $self->{"${key}_ENCODING"} = $encoding; $self->{VERBOSE} and $self->_log_property("Using ", $property, $key); return; } sub _warn_about_skipped_property { my ($self, $property) = @_; return unless $self->{VERBOSE}; my $meaning = $skipproperties->{$property} || "UNKNOWN"; $self->_log_property("Skipping", $property, $meaning); return; } sub _log_property { my ($self, $message, $property, $meaning) = @_; my ($encoding, $data) = @{$self->get_mapi_property($property)}; my $value = $self->_decode_mapi_property($encoding, $data); $value = substr($value, 0, 50); if ($encoding eq $ENCODING_BINARY) { if ($value =~ / [[:print:]] /x) { $value =~ s/ [^[:print:]] /./gx; } else { $value =~ s/ . / sprintf("%02x ", ord($&)) /sgex; } } if (length($value) > 45) { $value = substr($value, 0, 41) . " ..."; } warn "$message property $encoding:$property ($meaning): $value\n"; return; } sub _set_verbosity { my ($self, $verbosity) = @_; $self->{VERBOSE} = $verbosity ? 1 : 0; return; } # # Format a gmt date according to RFC822 # sub _format_date { my ($self, $datearr) = @_; my $day = qw(Sun Mon Tue Wed Thu Fri Sat)[strftime("%w", @{$datearr})]; my $month = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)[strftime("%m", @{$datearr}) - 1]; return strftime("$day, %d $month %Y %H:%M:%S +0000", @{$datearr}); } 1; Email-Outlook-Message-0.921/script000755001750001750 014173262435 17044 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/script/msgconvert000555001750001750 677414173262435 21334 0ustar00matijsmatijs000000000000#!/usr/bin/perl -w # # msgconvert: # # Convert .MSG files (made by Outlook (Express)) to multipart MIME messages. # use Email::Address; use Email::Outlook::Message; use Email::Sender::Transport::Mbox; use Getopt::Long; use Pod::Usage; use File::Basename; use vars qw($VERSION); $VERSION = "0.921"; # Setup command line processing. my $verbose = ''; my $mboxfile = ''; my $outfile = ''; my $help = ''; # Print help message and exit. GetOptions( 'mbox=s' => \$mboxfile, 'verbose' => \$verbose, 'outfile=s' => \$outfile, 'help|?' => \$help) or pod2usage(2); pod2usage(1) if $help; # Check file names defined $ARGV[0] or pod2usage(2); my $using_mbox = $mboxfile ne ''; my $using_outfile = $outfile ne ''; if ($using_outfile && scalar @ARGV > 1) { die "The --outfile parameter does not allow to specify more than one " . ". See --help for more details."; } my $transport; if ($using_mbox) { $transport = Email::Sender::Transport::Mbox->new({ filename => $mboxfile }); } foreach my $file (@ARGV) { my $msg = new Email::Outlook::Message($file, $verbose); my $mail = $msg->to_email_mime; if ($using_mbox) { my $from; my @from_addr = Email::Address->parse($mail->header('From')); $from = $from_addr[0]->address if @from_addr; $transport->send($mail->as_string, { from => $from || '' }); } else { if (!$using_outfile) { my $basename = fileparse($file, qr/\.msg/i); $outfile = "$basename.eml"; } if ($outfile eq '-') { open OUT, ">&", STDOUT; } else { open OUT, ">", $outfile or die "Can't open $outfile for writing: $!"; } print OUT $mail->as_string; close OUT; } } # # Usage info follows. # __END__ =head1 NAME msgconvert - Convert Outlook .msg files to mbox format =head1 SYNOPSIS msgconvert [options] ... msgconvert --outfile Options: --mbox deliver messages to mbox file --outfile write message to or - for STDOUT --verbose be verbose --help help message =head1 OPTIONS =over 8 =item B<--mbox> Deliver to the given mbox file instead of creating individual .eml files. =item B<--outfile> Writes the message into the outfile instead of individual .eml files. For STDOUT "-" can be used as outfile. This option cannot be used together with multiple instances. =item B<--verbose> Print information about skipped parts of the .msg file. =item B<--help> Print a brief help message. =back =head1 DESCRIPTION This program will convert the messages contained in the Microsoft Outlook files ... to message/rfc822 files with extension .eml. Alternatively, if the --mbox option is present, all messages will be put in the given mbox file. This program will complain about unrecognized OLE parts in the input files on stderr. =head1 BUGS The program will not check whether output files already exist. Also, if you feed it "foo.MSG" and "foo.msg", you'll end up with one "foo.eml", containing one of the messages. Not all data that's in the .MSG file is converted. There simply are some parts whose meaning escapes me. One of these must contain the date the message was sent, for example. Formatting of text messages will also be lost. YMMV. =head1 AUTHOR Matijs van Zuijlen, C =head1 COPYRIGHT AND LICENSE Copyright 2002--2020 by Matijs van Zuijlen This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut Email-Outlook-Message-0.921/t000755001750001750 014173262435 16003 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/t/basics.t000444001750001750 25514173262435 17553 0ustar00matijsmatijs000000000000use strict; use warnings; use Test::More tests => 1; use Email::Outlook::Message; eval { my $p = Email::Outlook::Message->new(); }; like($@, qr/^File name is required/); Email-Outlook-Message-0.921/t/charset.t000444001750001750 276214173262435 17765 0ustar00matijsmatijs000000000000# Test charset handling. use strict; use warnings; use Test::More tests => 18; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/charset.msg'); ok($p, "Parsing succeeded"); my $m = $p->to_email_mime; is(scalar($m->header_names), 43, "43 headers"); like($m->content_type, qr{^multipart/alternative}, "Content type should be multipart/alternative"); is($m->header("Subject"), "PST Export - Embedded Email Test", "Testing subject"); is($m->header("Date"), "Wed, 9 Oct 2019 05:55:10 +0000", "Testing date"); is($m->header("From"), "Joseph Q Bloggs ", "From header"); is($m->header("To"), "Joseph Q Bloggs ", "Testing to"); is($m->body, "\r\n", "No body"); my @parts = $m->subparts; is(scalar(@parts), 2, "Two sub-parts"); my $text = $parts[0]; like($text->content_type, qr{^text/plain}, "Content type should be multipart/alternative"); like($text->content_type, qr{; charset="?CP1252"?}, "charset should be CP1252"); is($text->header("Content-Disposition"), "inline", "Testing content disposition"); is($text->body, "This email contains an email\x85 Email-ception!!!\n\n", "Testing body"); is(scalar($text->subparts), 0, "No sub-parts"); my $html = $parts[1]; like($html->content_type, qr{^text/html}, "Content type should be text/html"); like($text->content_type, qr{; charset="?CP1252"?}, "charset should be CP1252"); is($html->header("Content-Disposition"), "inline", "Testing content disposition"); is(scalar($html->subparts), 0, "No sub-parts"); Email-Outlook-Message-0.921/t/full_structure.t000444001750001750 445314173262435 21415 0ustar00matijsmatijs000000000000use strict; use warnings; use Test::More; use Email::Outlook::Message; use Email::MIME::ContentType; use Email::MIME::Modifier; use IO::All; my $dir = "./t/files/"; my @msgfiles = map { $_->name} grep /.*\.msg$/, io($dir)->all; plan tests => 2 * scalar @msgfiles; foreach my $msg (@msgfiles) { my $mime = $msg; $mime =~ s/\.msg$/\.eml/; my $target = Email::MIME->new(io($mime)->all); my $mail = Email::Outlook::Message->new($msg)->to_email_mime; is_deeply(get_parts($mail), get_parts($target), "Checking if body structure for $msg is the same"); is_deeply(get_headers($mail), get_headers($target), "Checking if headers for $msg are the same"); } sub get_parts { my $m = shift; my $arr = []; $m->walk_parts(sub { my $part = shift; my $ct = sanitize_content_type($part->content_type); if ($part->subparts > 0) { # TODO: Remove once we get the 'This is a multi ...' message in # there. push(@$arr, [$ct, get_headers($part), "ignore", $part->filename]); } elsif ($ct =~/message\/rfc822/) { my $mess = Email::MIME->new($part->body); my $struct = get_parts($mess); push(@$arr, [$ct, get_headers($part), $struct, $part->filename]); } else { my $body; if ($ct =~ /text/) { $body = $part->body_str; } else { $body = $part->body; } push(@$arr, [$ct, get_headers($part), $body, $part->filename]); } }); return $arr; } sub get_headers { my $m = shift; my @names = sort grep(!/^content-id$/, map {lc $_} $m->header_names); my @arr = map { my @h = map { $_ =~ s/\s\s*/ /sg; $_ } sort $m->header($_); @h = map { sanitize_content_type($_) } @h if lc $_ eq 'content-type'; @h = map { sanitize_content_disposition($_) } @h if lc $_ eq 'content-disposition'; $_ . ": " . join "\n", @h; } @names; return \@arr; } sub sanitize_content_type { my $s = shift; my $ct = parse_content_type($s); my $at = $ct->{attributes}; delete $at->{boundary}; $at->{charset} = "us-ascii" unless exists $at->{charset}; return join("; ", "$ct->{discrete}/$ct->{composite}", map("$_=\"$at->{$_}\"", sort keys %$at)); } sub sanitize_content_disposition { my $s = shift; my $cd = parse_content_disposition($s); my $at = $cd->{attributes}; return join("; ", map("$_=\"$at->{$_}\"", sort keys %$at)); } Email-Outlook-Message-0.921/t/gpg_signed.t000444001750001750 54614173262435 20420 0ustar00matijsmatijs000000000000use strict; use warnings; use Test::More tests => 2; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/gpg_signed.msg'); ok($p, "Parsing succeeded"); TODO: { local $TODO = "GPG Parsing doesn't work yet"; my $m = $p->to_email_mime; like($m->content_type, qr{^multipart/signed}, "Content type should be multipart/signed"); } Email-Outlook-Message-0.921/t/internals.t000444001750001750 443014173262435 20325 0ustar00matijsmatijs000000000000use strict; use warnings; use Test::More tests => 17; use Email::Outlook::Message; #use MIME::Entity; use Email::MIME::Creator; my $p = Email::Outlook::Message->_empty_new(); ok($p, 'Checking internal new'); test_copy_header_data($p); test_submission_id_date($p); test_to_email_mime_with_no_parts($p); test_to_email_mime_with_plain_part($p); test_to_email_mime_with_html_part($p); test_to_email_mime_with_two_parts($p); # DONE sub test_copy_header_data { my $p = shift; my $mime = Email::MIME->create(body => "Hello!"); $p->{HEAD} = <_copy_header_data($mime); my @new_tags = $mime->header_names; is_deeply([sort @new_tags], [sort @expected_tags], 'Are the right headers inserted?'); isnt($mime->header('MIME-Version'), 'ignore'); } sub test_submission_id_date { my $p = shift; $p->{SUBMISSION_ID} = "c=us;a=;p=Something;l=ABCDEFGH1-030728080154Z-268."; is($p->_submission_id_date, "Mon, 28 Jul 2003 08:01:54 +0000"); } sub test_to_email_mime_with_no_parts { my $p = shift; $p->{BODY_PLAIN} = undef; $p->{BODY_HTML} = undef; ok(defined $p->to_email_mime); } sub test_to_email_mime_with_plain_part { my $p = shift; $p->{BODY_PLAIN} = "plain"; $p->{BODY_PLAIN_ENCODING} = "001E"; $p->{BODY_HTML} = undef; my $m = $p->to_email_mime; ok(defined $m); ok(($m->parts) == 1); is($m->body, "plain"); like($m->content_type, qr{^text/plain; charset="?CP1252"?$}); } sub test_to_email_mime_with_html_part { my $p = shift; $p->{BODY_PLAIN} = undef; $p->{BODY_HTML} = "html"; $p->{BODY_HTML_ENCODING} = "001E"; my $m = $p->to_email_mime; ok(defined $m); ok(($m->parts) == 1); is($m->body, "html"); like($m->content_type, qr{^text/html; charset="?CP1252"?$}); } sub test_to_email_mime_with_two_parts { my $p = shift; $p->{BODY_PLAIN} = "plain"; $p->{BODY_PLAIN_ENCODING} = "001E"; $p->{BODY_HTML} = "html"; $p->{BODY_HTML_ENCODING} = "001E"; my $m = $p->to_email_mime; ok(defined $m); ok(($m->parts) == 2); is(($m->parts)[0]->body, "plain"); is(($m->parts)[1]->body, "html"); } Email-Outlook-Message-0.921/t/plain_jpeg_attached.t000444001750001750 356414173262435 22302 0ustar00matijsmatijs000000000000# Test plain text message, jpeg attached. use strict; use warnings; use Test::More tests => 23; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/plain_jpeg_attached.msg'); ok($p, "Parsing succeeded"); my $m = $p->to_email_mime; is(scalar($m->header_names), 14, "Fourteen headers"); like($m->content_type, qr{^multipart/mixed}, "Content type should be multipart/mixed"); is($m->header("Content-Disposition"), "inline", "Testing content disposition"); is($m->header("Subject"), "test", "Testing subject"); is($m->header("Date"), "Mon, 24 Sep 2007 15:28:03 +0200", "Testing date"); is($m->header("From"), "Matijs van Zuijlen ", "From header"); is($m->header("To"), "matijs\@xxxxxx.nl", "Testing to"); is($m->body, "\r\n", "No body"); my @parts = $m->subparts; is(scalar(@parts), 2, "Two sub-parts"); my $text = $parts[0]; like($text->content_type, qr{^multipart/alternative}, "Content type should be multipart/alternative"); my @textparts = $text->subparts; is(scalar(@textparts), 2, "Two alternatives"); my $plain = $textparts[0]; like($plain->content_type, qr{^text/plain}, "Content type should be text/plain"); is($plain->header("Content-Disposition"), "inline", "Testing content disposition"); is($plain->body, "test\r\n", "Testing body"); is(scalar($plain->subparts), 0, "No sub-parts"); my $rtf = $textparts[1]; like($rtf->content_type, qr{^application/rtf}, "Content type should be application/rtf"); is($rtf->header("Content-Disposition"), "inline", "Testing content disposition"); is(scalar($rtf->subparts), 0, "No sub-parts"); my $jpg = $parts[1]; like($jpg->content_type, qr{^image/jpeg}, "Content type should be image/jpeg"); like($jpg->header("Content-Disposition"), qr{^attachment; filename="?test.jpg"?$}, "Testing content disposition"); is(scalar($jpg->subparts), 0, "No sub-parts"); is(length($jpg->body), 7681, "Correct jpeg size"); Email-Outlook-Message-0.921/t/plain_uc_unsent.t000444001750001750 321614173262435 21515 0ustar00matijsmatijs000000000000# Test unsent plain text message, unicode encoded. use strict; use warnings; use Test::More tests => 15; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/plain_uc_unsent.msg'); ok($p, "Parsing succeeded"); my $m = $p->to_email_mime; is(scalar($m->header_names), 6, "Six headers"); is($m->header("Subject"), "Test for MSGConvert -- plain text", "Testing subject"); is($m->header("Date"), "Mon, 26 Feb 2007 22:57:01 +0000", "Testing date"); is($m->header("From"), undef, "No from specified"); is($m->header("To"), "Someone Else ", "Testing to"); like($m->content_type, qr{^multipart/alternative}, "Content type should be multipart/alternative"); my @parts = $m->subparts; is(scalar(@parts), 2, "Two sub-parts"); my $text = $parts[0]; like($text->content_type, qr{^text/plain}, "Content type should be text/plain"); is($text->body, "This is a test\r\nThe body is in plain text", "Check body"); is(scalar($text->subparts), 0, "No sub-parts"); my $rtf = $parts[1]; like($rtf->content_type, qr{^application/rtf}, "Content type should be application/rtf"); is($rtf->header("Content-Disposition"), "inline", "Testing content disposition"); is($rtf->body, "{\\rtf1\\ansi\\ansicpg1252\\fromtext \\deff0{\\fonttbl\n\r" . "{\\f0\\fswiss Arial;}\n\r" . "{\\f1\\fmodern Courier New;}\n\r" . "{\\f2\\fnil\\fcharset2 Symbol;}\n\r" . "{\\f3\\fmodern\\fcharset0 Courier New;}}\n\r" . "{\\colortbl\\red0\\green0\\blue0;\\red0\\green0\\blue255;}\n\r" . "\\uc1\\pard\\plain\\deftab360 \\f0\\fs20 This is a test\\par\n\r" . "The body is in plain text\\par\n\r" . "}", "Check RTF"); is(scalar($rtf->subparts), 0, "No sub-parts"); Email-Outlook-Message-0.921/t/plain_uc_wc_unsent.t000444001750001750 266114173262435 22211 0ustar00matijsmatijs000000000000# Test unsent plain text message, unicode encoded, with a non-ascii # codepoint ('wide character') in the body. use strict; use warnings; # Needed to recognize UTF8 string literal for comparing the body. use utf8; use Test::More tests => 15; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/plain_uc_wc_unsent.msg'); ok($p, "Parsing succeeded"); my $m = $p->to_email_mime; ok($m->as_string !~ /[^\0-\xff]/, "Check no wide characters in output"); is(scalar($m->header_names), 6, "Six headers"); is($m->header("Subject"), "Test for MSGConvert -- plain text", "Testing subject"); is($m->header("Date"), "Mon, 26 Feb 2007 22:57:01 +0000", "Testing date"); is($m->header("From"), undef, "No from specified"); is($m->header("To"), "Someone Else ", "Testing to"); like($m->content_type, qr{^multipart/alternative}, "Content type should be multipart/alternative"); my @parts = $m->subparts; is(scalar(@parts), 2, "Two sub-parts"); my $text = $parts[0]; like($text->content_type, qr{^text/plain}, "Content type should be text/plain"); is($text->body_str, "This is a test\r\nThe body is in pцБЌain text", "Check body"); is(scalar($text->subparts), 0, "No sub-parts"); my $rtf = $parts[1]; like($rtf->content_type, qr{^application/rtf}, "Content type should be application/rtf"); is($rtf->header("Content-Disposition"), "inline", "Testing content disposition"); is(scalar($rtf->subparts), 0, "No sub-parts"); Email-Outlook-Message-0.921/t/plain_unsent.t000444001750001750 245614173262435 21033 0ustar00matijsmatijs000000000000# Test unsent plain text message, single-byte encoded. use strict; use warnings; use Test::More tests => 15; use Email::Outlook::Message; my $p = new Email::Outlook::Message('t/files/plain_unsent.msg'); ok($p, "Parsing succeeded"); like($p->get_mapi_property('1000')->[1], qr/This is a test..The body is in plain text/s); my $m = $p->to_email_mime; is(scalar($m->header_names), 6, "Six headers"); is($m->header("Subject"), "Test for MSGConvert -- plain text", "Testing subject"); is($m->header("Date"), "Mon, 26 Feb 2007 22:56:40 +0000", "Testing date"); is($m->header("From"), undef, "No from specified"); is($m->header("To"), "Someone Else ", "Testing to"); like($m->content_type, qr{^multipart/alternative}, "Content type should be multipart/alternative"); my @parts = $m->subparts; is(scalar(@parts), 2, "Two sub-parts"); my $text = $parts[0]; like($text->content_type, qr{^text/plain}, "Content type should be text/plain"); is($text->body, "This is a test\r\nThe body is in plain text", "Check body"); is(scalar($text->subparts), 0, "No sub-parts"); my $rtf = $parts[1]; like($rtf->content_type, qr{^application/rtf}, "Content type should be application/rtf"); is($rtf->header("Content-Disposition"), "inline", "Testing content disposition"); is(scalar($rtf->subparts), 0, "No sub-parts"); Email-Outlook-Message-0.921/t/pod_coverage.t000444001750001750 57214173262435 20746 0ustar00matijsmatijs000000000000use strict; use warnings; use Test::More; eval "use Test::Pod::Coverage"; plan skip_all => "Test::Pod::Coverage required for testing pod coverage" if $@; plan tests => 4; pod_coverage_ok("Email::Outlook::Message"); pod_coverage_ok("Email::Outlook::Message::AddressInfo"); pod_coverage_ok("Email::Outlook::Message::Attachment"); pod_coverage_ok("Email::Outlook::Message::Base"); Email-Outlook-Message-0.921/t/files000755001750001750 014173262435 17105 5ustar00matijsmatijs000000000000Email-Outlook-Message-0.921/t/files/charset.eml000444001750001750 1336714173262435 21424 0ustar00matijsmatijs000000000000Date: Wed, 9 Oct 2019 05:55:10 +0000 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=15987270020.9B4dcC0.965813 Content-Transfer-Encoding: 7bit Subject: PST Export - Embedded Email Test From: Joseph Q Bloggs To: Joseph Q Bloggs Message-Id: Received: from ME2PR01MB5026.ausprd01.prod.outlook.com (2603:10c6:200:2e::21) by ME2PR01MB4419.ausprd01.prod.outlook.com with HTTPS via MEXPR01CA0136.AUSPRD01.PROD.OUTLOOK.COM; Wed, 9 Oct 2019 05:55:11 +0000 Received: from ME2PR01MB4419.ausprd01.prod.outlook.com (20.178.182.138) by ME2PR01MB5026.ausprd01.prod.outlook.com (20.178.183.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2327.24; Wed, 9 Oct 2019 05:55:11 +0000 Received: from ME2PR01MB4419.ausprd01.prod.outlook.com ([fe80::bcd1:5151:ba18:b808]) by ME2PR01MB4419.ausprd01.prod.outlook.com ([fe80::bcd1:5151:ba18:b808%5]) with mapi id 15.20.2347.016; Wed, 9 Oct 2019 05:55:11 +0000 Authentication-Results: dummy.com.au; dkim=none (message not signed) header.d=none;dummy.com.au; dmarc=none action=none header.from=dummy.com.au; Thread-Topic: PST Export - Embedded Email Test Thread-Index: AdV+Zh3awOcSV82ZT0eQUH7FFPR2Iw== Accept-Language: en-AU, en-US Content-Language: en-US X-MS-Exchange-Organization-SCL: -1 X-MS-Exchange-Organization-MessageDirectionality: Originating X-MS-Exchange-Organization-AuthSource: ME2PR01MB4419.ausprd01.prod.outlook.com X-MS-Exchange-Organization-AuthAs: Internal X-MS-Exchange-Organization-AuthMechanism: 04 X-Originating-IP: [192.168.1.23] X-MS-Exchange-Organization-Network-Message-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-PublicTrafficType: Email Return-Path: joebloggs@example.org X-MS-Exchange-Organization-ExpirationStartTime: 09 Oct 2019 05:55:11.1020 (UTC) X-MS-Exchange-Organization-ExpirationStartTimeReason: OriginalSubmit X-MS-Exchange-Organization-ExpirationInterval: 1:00:00:00.0000000 X-MS-Exchange-Organization-ExpirationIntervalReason: OriginalSubmit X-MS-Office365-Filtering-Correlation-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-TrafficTypeDiagnostic: ME2PR01MB5026: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-Forefront-Antispam-Report: SFV:SKI;SFS:;DIR:INB;SFP:;SCL:-1;SRVR:ME2PR01MB5026;H:ME2PR01MB4419.ausprd01.prod.outlook.com;FPR:;SPF:None;LANG:en; X-Microsoft-Antispam: BCL:0; X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2019 05:55:10.8999 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 17d1df18-d551-4029-bfaa-010e8451f36e X-MS-Exchange-CrossTenant-Network-Message-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WMJ4LJOvPAgNe677qeeEQ+kdmy9fKz3oAEnv4MAKel3fWQ281X3lVp07TECn6m6F1HOtYsxuAEu81AEW+HBqwg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: ME2PR01MB5026 X-MS-Exchange-Transport-EndToEndLatency: 00:00:00.6076919 X-MS-Exchange-Processed-By-BccFoldering: 15.20.2347.014 X-Microsoft-Antispam-Mailbox-Delivery: ucf:0;jmr:0;ex:0;auth:0;dest:I;ENG:(750127)(520011016)(706158)(944506383)(944626516); X-Microsoft-Antispam-Message-Info: c6VNuHvfY5R6Jc7hrDxqx+5azL0xX1Ng5CUuMgcDIeEyygc3nqoxg+F1mg8P+0LYpAWGsuYZcSpAIJdNzjH6mVGB7GURCydM0hntYcHkxR5pKKhsxd0IAHKqCtw+s59tBfaIYHqCVSKxTLF3dnXFBWmkJ3IKWJ6oVb2OTYhk4Ch6UvwgkGLQ+9YJwdk/72TZqG8299yd3VBp1u3b2lisCRqCVyDggd0j1rT7Ckbwtf6Ji62AdzSmg9eoUY8yhcJ1wzuAI/1UtTNr+JhWrEpb13kyFKGt7VO1WmHgwKKMdEMmX2YLp958z+SlqBHy9G/+5c5FWKcMqbxCRXAO74hMS/b5R7BdEthRwR+ITt8hpfuPTdrkM4BMN+MX9a7gmcr4Kbr+CDBEftj2GGSZJUr4ym+Ssg2h6pBCo9Dq+xZiygzMJweg/tXgobp00CR4srPx --15987270020.9B4dcC0.965813 Content-Type: text/plain; charset=CP1252 Content-Disposition: inline Content-Transfer-Encoding: 8bit This email contains an email… Email-ception!!! --15987270020.9B4dcC0.965813 Content-Type: text/html; charset=CP1252 Content-Disposition: inline Content-Transfer-Encoding: 8bit

This email contains an email… Email-ception!!!

--15987270020.9B4dcC0.965813-- Email-Outlook-Message-0.921/t/files/charset.msg000444001750001750 4000014173262435 21415 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџIPM.NotePST Export - Embedded Email TestEX:/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSJoseph Q BloggsJoseph Q BloggsJoseph Q BloggsEX:/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSEX:/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSEX/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSPST Export - Embedded Email Testе~fкРчWЭ™OGP~Хєv#EX/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSEX/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSReceived: from ME2PR01MB5026.ausprd01.prod.outlook.com (2603:10c6:200:2e::21) by ME2PR01MB4419.ausprd01.prod.outlook.com with HTTPS via MEXPR01CA0136.AUSPRD01.PROD.OUTLOOK.COM; Wed, 9 Oct 2019 05:55:11 +0000 Authentication-Results: dummy.com.au; dkim=none (message not signed) header.d=none;dummy.com.au; dmarc=none action=none header.from=dummy.com.au; Received: from ME2PR01MB4419.ausprd01.prod.outlook.com (20.178.182.138) by ME2PR01MB5026.ausprd01.prod.outlook.com (20.178.183.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2327.24; Wed, 9 Oct 2019 05:55:11 +0000 Received: from ME2PR01MB4419.ausprd01.prod.outlook.com ([fe80::bcd1:5151:ba18:b808]) by ME2PR01MB4419.ausprd01.prod.outlook.com ([fe80::bcd1:5151:ba18:b808%5]) with mapi id 15.20.2347.016; Wed, 9 Oct 2019 05:55:11 +0000 From: Joseph Q Bloggs To: Joseph Q Bloggs Subject: PST Export - Embedded Email Test Thread-Topic: PST Export - Embedded Email Test Thread-Index: AdV+Zh3awOcSV82ZT0eQUH7FFPR2Iw== Date: Wed, 9 Oct 2019 05:55:10 +0000 Message-ID: Accept-Language: en-AU, en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-Exchange-Organization-SCL: -1 X-MS-TNEF-Correlator: X-MS-Exchange-Organization-MessageDirectionality: Originating X-MS-Exchange-Organization-AuthSource: ME2PR01MB4419.ausprd01.prod.outlook.com X-MS-Exchange-Organization-AuthAs: Internal X-MS-Exchange-Organization-AuthMechanism: 04 X-Originating-IP: [192.168.1.23] X-MS-Exchange-Organization-Network-Message-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-PublicTrafficType: Email Return-Path: joebloggs@example.org X-MS-Exchange-Organization-ExpirationStartTime: 09 Oct 2019 05:55:11.1020 (UTC) X-MS-Exchange-Organization-ExpirationStartTimeReason: OriginalSubmit X-MS-Exchange-Organization-ExpirationInterval: 1:00:00:00.0000000 X-MS-Exchange-Organization-ExpirationIntervalReason: OriginalSubmit X-MS-Office365-Filtering-Correlation-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-TrafficTypeDiagnostic: ME2PR01MB5026: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-Forefront-Antispam-Report: SFV:SKI;SFS:;DIR:INB;SFP:;SCL:-1;SRVR:ME2PR01MB5026;H:ME2PR01MB4419.ausprd01.prod.outlook.com;FPR:;SPF:None;LANG:en; X-Microsoft-Antispam: BCL:0; X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2019 05:55:10.8999 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 17d1df18-d551-4029-bfaa-010e8451f36e X-MS-Exchange-CrossTenant-Network-Message-Id: 2fb1127e-6e2e-4539-9e6e-08d74c7d3f27 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WMJ4LJOvPAgNe677qeeEQ+kdmy9fKz3oAEnv4MAKel3fWQ281X3lVp07TECn6m6F1HOtYsxuAEu81AEW+HBqwg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: ME2PR01MB5026 X-MS-Exchange-Transport-EndToEndLatency: 00:00:00.6076919 X-MS-Exchange-Processed-By-BccFoldering: 15.20.2347.014 X-Microsoft-Antispam-Mailbox-Delivery: ucf:0;jmr:0;ex:0;auth:0;dest:I;ENG:(750127)(520011016)(706158)(944506383)(944626516); X-Microsoft-Antispam-Message-Info: c6VNuHvfY5R6Jc7hrDxqx+5azL0xX1Ng5CUuMgcDIeEyygc3nqoxg+F1mg8P+0LYpAWGsuYZcSpAIJdNzjH6mVGB7GURCydM0hntYcHkxR5pKKhsxd0IAHKqCtw+s59tBfaIYHqCVSKxTLF3dnXFBWmkJ3IKWJ6oVb2OTYhk4Ch6UvwgkGLQ+9YJwdk/72TZqG8299yd3VBp1u3b2lisCRqCVyDggd0j1rT7Ckbwtf6Ji62AdzSmg9eoUY8yhcJ1wzuAI/1UtTNr+JhWrEpb13kyFKGt7VO1WmHgwKKMdEMmX2YLp958z+SlqBHy9G/+5c5FWKcMqbxCRXAO74hMS/b5R7BdEthRwR+ITt8hpfuPTdrkM4BMN+MX9a7gmcr4Kbr+CDBEftj2GGSZJUr4ym+Ssg2h6pBCo9Dq+xZiygzMJweg/tXgobp00CR4srPx Joseph Q BloggsEX:/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSEX/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGSJoseph Q BloggsThis email contains an email… Email-ception!!!

This email contains an email… Email-ception!!!

Embedded File EmailEX/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=70b96f11aa184d57be399e360642431f-jqbloggs/o=ExchangeLabs/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=70b96f11aa184d57be399e360642431f-jqbloggsEX:/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=70B96F11AA184D57BE399E360642431F-JQBLOGGS 0000~і_~ 0&1@9ѓf~е 7!;=@BDQRde~p!quv~wx~}}    ~1д5Qўџџџўџџџўџџџўџџџўџџџўџџџўџџџ ўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSўџџџўџџџVWўџџџўџџџZўџџџўџџџўџџџ^_`abcdefghijklmnopqrstuvwxўџџџzўџџџўџџџўџџџ~ўџџџ€ўџџџ‚ƒўџџџ…ўџџџ‡ˆ‰Š‹ŒўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ#€#__substg1.0_001A001E*џџџџџџџџ __substg1.0_0037001E*џџџџџџџџ!__substg1.0_003B0102*џџџџџџџџ__substg1.0_003D001E*џџџџџџџџ__substg1.0_0040001E*џџџџџџџџ__substg1.0_0042001E*џџџџџџџџ__substg1.0_0044001E*џџџџџџџџ__substg1.0_00510102*џџџџ џџџџ __substg1.0_00520102*џџџџ џџџџ __substg1.0_0064001E*џџџџ џџџџ__substg1.0_0065001E*џџџџ џџџџ~__substg1.0_0070001E*џџџџ џџџџ!__substg1.0_00710102*џџџџџџџџ__substg1.0_0075001E*џџџџџџџџ__substg1.0_0076001E*џџџџџџџџ~__substg1.0_0077001E*џџџџџџџџ__substg1.0_0078001E*џџџџџџџџ~__substg1.0_007D001E*џџџџџџџџ}__substg1.0_0C1A001E*џџџџџџџџT__substg1.0_0C1D0102*џџџџџџџџU__substg1.0_0C1E001E*џџџџџџџџX__substg1.0_0C1F001E*џџџџџџџџY~__substg1.0_0E04001E*џџџџџџџџ[__substg1.0_1000001E*џџџџџџџџ\1__substg1.0_1013001E*џџџџџџџџ]д__substg1.0_1035001E*џџџџ"џџџџyQ__recip_version1.0_#00000000:џџџџџџџџўџџџ__substg1.0_3001001E*џџџџџџџџ{__substg1.0_3002001E*џџџџџџџџ|__substg1.0_3003001E*џџџџ џџџџ}~__substg1.0_5FF6001E*џџџџ!џџџџ~__substg1.0_300B0102*џџџџџџџџ__properties_version1.00џџџџџџџџџџџџ„x__properties_version1.00џџџџџџџџ†__nameid_version1.0(џџџџ$ўџџџ__substg1.0_00020102*џџџџ%џџџџўџџџ__substg1.0_00030102*џџџџ&џџџџўџџџ__substg1.0_00040102*џџџџџџџџџџџџўџџџ ўџџџўџџџўџџџ§џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџEmail-Outlook-Message-0.921/t/files/gpg_signed.eml000444001750001750 737714173262435 22065 0ustar00matijsmatijs000000000000Date: Tue, 27 Feb 2007 00:12:10 +0100 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=15987272031.Ae83.966257 Content-Transfer-Encoding: 7bit Subject: Test for MSGConvert From: Matijs van Zuijlen To: matijs@matijs.net Message-Id: <20070226231209.GD1841@matijs.net> Received: from XXXXXXXXX.XXX.XX.NL ([111.111.111.111]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Tue, 27 Feb 2007 00:14:28 +0100 Received: from xxxx.xxxxxxx.nl ([11.111.11.11]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Tue, 27 Feb 2007 00:14:28 +0100 Received: from smtp-vbr13.xs4all.nl ([194.109.24.33]) by xxxx.xxxxxxx.nl with esmtp (Exim 4.66 (FreeBSD)) (envelope-from ) id 1HLp12-0000il-T7 for matijs@xxxxxx.nl; Tue, 27 Feb 2007 00:14:28 +0100 Received: from localhost (mvz.xs4all.nl [80.126.4.68]) by smtp-vbr13.xs4all.nl (8.13.8/8.13.8) with ESMTP id l1QNCFIW093173 for ; Tue, 27 Feb 2007 00:12:20 +0100 (CET) (envelope-from matijs@matijs.net) Received: from matijs by localhost with local (Exim 4.63) (envelope-from ) id 1HLp0s-0005Jg-49; Tue, 27 Feb 2007 00:12:10 +0100 Content-Disposition: inline User-Agent: Mutt/1.5.13 (2006-08-11) X-Virus-Scanned: by XS4ALL Virus Scanner X-SA-Exim-Connect-IP: 194.109.24.33 X-SA-Exim-Mail-From: matijs@matijs.net X-Spam-Checker-Version: SpamAssassin 3.1.8 (2007-02-13) on xxxx.xxxxxxx.nl X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00 autolearn=unavailable version=3.1.8 X-SA-Exim-Version: 4.2 X-SA-Exim-Scanned: Yes (on xxxx.xxxxxxx.nl) Return-Path: matijs@matijs.net X-OriginalArrivalTime: 26 Feb 2007 23:14:28.0715 (UTC) FILETIME=[DD42BBB0:01C759FB] --15987272031.Ae83.966257 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=15987272030.AFCD8a.966257 Content-Transfer-Encoding: 7bit --15987272030.AFCD8a.966257 Content-Type: text/plain; charset=US-ASCII Content-Disposition: inline Content-Transfer-Encoding: 8bit This is yet another test. -- Matijs van Zuijlen http://www.matijs.net/ --15987272030.AFCD8a.966257 Content-Type: application/rtf Content-Disposition: inline Content-Transfer-Encoding: base64 e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsCg17XGYwXGZz d2lzcyBBcmlhbDt9Cg17XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQoNe1xmMlxmbmlsXGZjaGFy c2V0MiBTeW1ib2w7fQoNe1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQoNe1xj b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9Cg1cdWMxXHBh cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIFRoaXMgaXMgeWV0IGFub3RoZXIgdGVzdC5ccGFy Cg0tLSBccGFyCg1NYXRpanMgdmFuIFp1aWpsZW5cdGFiIFx0YWIgXHRhYiBcdGFiIFx0YWIgaHR0 cDovL3d3dy5tYXRpanMubmV0L1xwYXIKDX0= --15987272030.AFCD8a.966257-- --15987272031.Ae83.966257 Content-ID: MIME-Version: 1.0 Content-Type: multipart/signed Content-Disposition: attachment Content-Transfer-Encoding: 8bit MIME-Version: 1.0 Content-Disposition: inline X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.3028 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="cHMo6Wbp1wrKhbfi" --cHMo6Wbp1wrKhbfi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable This is yet another test. --=20 Matijs van Zuijlen http://www.matijs.net/ --cHMo6Wbp1wrKhbfi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFF42lJh3TgaXYDPEERAoDrAJ9RGi0X4EtYw/fkgKxmiWLrqgc1FgCfcaCw kJeEQM9ww/GKJQ1VGoPjODM= =CprJ -----END PGP SIGNATURE----- --cHMo6Wbp1wrKhbfi-- --15987272031.Ae83.966257-- Email-Outlook-Message-0.921/t/files/gpg_signed.msg000444001750001750 5400014173262435 22077 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ`Jй§YЧ€$__properties_version1.00.џџџџџџџџQ __nameid_version1.0(џџџџџџџџC`Jй§YЧ`Jй§YЧ__substg1.0_0E04001E*џџџџ1џџџџ§џџџџџџџџџџџ '" !ўџџџ#$%&(ўџџџ)*ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ РFP-Vй§YЧ€$__properties_version1.00.џџџџџџџџQ __nameid_version1.0(џџџџџџџџC`Jй§YЧ`Jй§YЧ__substg1.0_0E04001E*џџџџ1џџџџџџџџџџџџ§џџџ '" !ўџџџ#$%&(ўџџџ)*ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ__substg1.0_0E03001E*џџџџўџџџ__substg1.0_0E02001E*џџџџџџџџџџџџўџџџ__recip_version1.0_#00000000:8`Jй§YЧ`Jй§YЧ__attach_version1.0_#00000000<џџџџџџџџ4`Jй§YЧ`Jй§YЧ__substg1.0_001A001E* џџџџP__substg1.0_0037001E*џџџџџџџџџџџџO__substg1.0_003B0102* џџџџN"__substg1.0_003F0102*/џџџџџџџџLA__substg1.0_0040001E* џџџџK__substg1.0_00410102*џџџџџџџџџџџџH‚__substg1.0_0042001E* џџџџG__substg1.0_00510102*џџџџџџџџџџџџF__substg1.0_0064001E*џџџџE__substg1.0_0065001E*џџџџџџџџџџџџD__substg1.0_0070001E*џџџџC__substg1.0_00710102*џџџџџџџџџџџџB__substg1.0_0075001E*џџџџA__substg1.0_0076001E*џџџџџџџџџџџџ@__substg1.0_007D001E*џџџџ# __substg1.0_0C190102*џџџџџџџџџџџџ ‚__substg1.0_0C1A001E*џџџџ__substg1.0_0C1D0102*џџџџџџџџџџџџ"__substg1.0_0C1E001E*џџџџ__substg1.0_0C1F001E*џџџџџџџџ__substg1.0_0E28001E*џџџџџџџџ/__substg1.0_0E29001E*%џџџџ/__substg1.0_1000001E*џџџџ0џџџџO__substg1.0_1035001E* џџџџ"__substg1.0_1046001E*џџџџџџџџџџџџ__substg1.0_300B0102*#џџџџ__substg1.0_8000001E*џџџџџџџџџџџџ__substg1.0_8001001E*"$џџџџ__substg1.0_80020102*џџџџџџџџџџџџz__substg1.0_8003001E*!)џџџџ<__substg1.0_80040102*џџџџџџџџџџџџO__substg1.0_8005001E*&(џџџџ 2__substg1.0_8006001E*џџџџџџџџџџџџ Q__substg1.0_8007001E*'-џџџџ __substg1.0_8008001E*џџџџџџџџџџџџўџџџ__substg1.0_8009001E**,џџџџ __substg1.0_800A001E*џџџџџџџџџџџџ __substg1.0_800B001E*+џџџџ__substg1.0_800C001E*џџџџџџџџџџџџ__substg1.0_003D001E*џџџџџџџџџџџџўџџџ__substg1.0_10090102*џџџџџџџџџџџџй__substg1.0_0E1D001E*џџџџџџџџџџџџ__properties_version1.005џџџџџџџџ{˜__substg1.0_0FF90102*џџџџџџџџџџџџzўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ!"ўџџџ$%&'()*+,-./0123456789:;<=>?ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџIJўџџџўџџџMўџџџўџџџўџџџўџџџRSTUVWXYZ[\]^_ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџnopqrstuvwxyўџџџўџџџ|}ўџџџўџџџўџџџTest for MSGConvertmatijs@matijs.netеpLZFuЃSz rcpg125т2CtexAїџ €Єф€ѓPV?UВ%Qchс Рset2У%і3FЗ0,3я їЖ;05" `cP3 d36P І TЊh y pothАst.3 Ђ €-- у €Ma(tij v‘Zu} l № ‚0 Џ!hA@p://w".SР’.n /„}#№4.2Yes (on xxxx.xxxxxxx.nl)194.109.24.33matijs@matijs.netby XS4ALL Virus ScannerNo, score=-1.7 required=5.0 tests=AWL,BAYES_00autolearn=unavailable version=3.1.8SpamAssassin 3.1.8 (2007-02-13) on xxxx.xxxxxxx.nlThis is yet another test. -- Matijs van Zuijlen http://www.matijs.net/ 26 Feb 2007 23:14:28.0715 (UTC) FILETIME=[DD42BBB0:01C759FB]POP://pop.xxxxxxxxxxxxxx.nl/AAgtJyMAAAwLIlF0KxIrx6070KeHud2Z00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nl ]А8р FŽ–Х;ћЙ&matijs@matijs.net<20070226231209.GD1841@matijs.net>This is yet another test. -- Matijs van Zuijlen http://www.matijs.net/ 00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nl00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nlMatijs.van.Zuijlen@xs4all.nlSMTPSMTP:MATIJS.VAN.ZUIJLEN@XS4ALL.NLMatijs van Zuijlen+ЄОЃnнT€Matijs van ZuijlenSMTPMatijs.van.Zuijlen@xs4all.nlReceived: from XXXXXXXXX.XXX.XX.NL ([111.111.111.111]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Tue, 27 Feb 2007 00:14:28 +0100 Received: from xxxx.xxxxxxx.nl ([11.111.11.11]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Tue, 27 Feb 2007 00:14:28 +0100 Received: from smtp-vbr13.xs4all.nl ([194.109.24.33]) by xxxx.xxxxxxx.nl with esmtp (Exim 4.66 (FreeBSD)) (envelope-from ) id 1HLp12-0000il-T7 for matijs@xxxxxx.nl; Tue, 27 Feb 2007 00:14:28 +0100 Received: from localhost (mvz.xs4all.nl [80.126.4.68]) by smtp-vbr13.xs4all.nl (8.13.8/8.13.8) with ESMTP id l1QNCFIW093173 for ; Tue, 27 Feb 2007 00:12:20 +0100 (CET) (envelope-from matijs@matijs.net) Received: from matijs by localhost with local (Exim 4.63) (envelope-from ) id 1HLp0s-0005Jg-49; Tue, 27 Feb 2007 00:12:10 +0100 Date: Tue, 27 Feb 2007 00:12:10 +0100 From: Matijs van Zuijlen To: matijs@matijs.net Message-ID: <20070226231209.GD1841@matijs.net> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.13 (2006-08-11) X-Virus-Scanned: by XS4ALL Virus Scanner X-SA-Exim-Connect-IP: 194.109.24.33 X-SA-Exim-Mail-From: matijs@matijs.net X-Spam-Checker-Version: SpamAssassin 3.1.8 (2007-02-13) on xxxx.xxxxxxx.nl X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00 autolearn=unavailable version=3.1.8 Subject: Test for MSGConvert Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="cHMo6Wbp1wrKhbfi" X-SA-Exim-Version: 4.2 X-SA-Exim-Scanned: Yes (on xxxx.xxxxxxx.nl) Return-Path: matijs@matijs.net X-OriginalArrivalTime: 26 Feb 2007 23:14:28.0715 (UTC) FILETIME=[DD42BBB0:01C759FB] matijs@xxxxxx.nlSMTPЧYћмеi6RЯD\C5ŠsŠб›ЕЄTest for MSGConvertMatijs.van.Zuijlen@xs4all.nlSMTPSMTP:MATIJS@XXXXXX.NLMatijs van Zuijlen+ЄОЃnнT€Matijs van ZuijlenSMTPMatijs.van.Zuijlen@xs4all.nlMatijs van Zuijlen+ЄОЃnнTMatijs van ZuijlenSMTPmatijs@xxxxxx.nlSMTP:MATIJS.VAN.ZUIJLEN@XS4ALL.NLTest for MSGConvertIPM.Note.SMIME.MultipartSigned@0`Jй§YЧ@0`Jй§YЧїє7@9”ŠћYЧ;"ѓ?Aѓ@A‚ѓBQѓdepqЋ uv}  ‚ѓ  "Ћ __substg1.0_37010102*32џџџџm;__substg1.0_370E001E*џџџџџџџџџџџџl__properties_version1.00;џџџџџџџџ…ˆ__substg1.0_0FFF0102*<џџџџџџџџƒj__substg1.0_3001001E*7:џџџџ‚__substg1.0_3002001E*џџџџџџџџџџџџ__substg1.0_3003001E*96џџџџ€__substg1.0_300B0102*џџџџџџџџџџџџ__substg1.0_0FF60102*џџџџџџџџџџџџ~__substg1.0_00020102*џџџџџџџџџџџџ‘@__substg1.0_00030102*=?џџџџh__substg1.0_00040102*џџџџKџџџџˆ–__substg1.0_10140102*DEџџџџk__substg1.0_10150102*џџџџџџџџџџџџj__substg1.0_10060102*џџџџџџџџџџџџi__substg1.0_10010102*>@џџџџh__substg1.0_10080102*HFџџџџg__substg1.0_10180102*AGџџџџf__substg1.0_100C0102*џџџџџџџџџџџџe__substg1.0_101D0102*Jџџџџџџџџd__substg1.0_10050102*IBџџџџc__substg1.0_10040102*џџџџџџџџџџџџb__substg1.0_101C0102*џџџџџџџџџџџџa__substg1.0_10000102*џџџџџџџџџџџџ`  @ЂемћYЧ(0)0P5#F’ 0ѓо?ŸN€€€zѓ€=€Oѓ€3€R€€ € € € €=  й Шѓэ%3l УJi  +X р8БЧ —фЩ 'ШнЄ ДЯkW Ѓ3ж” ‹[Ъ †AЌƒ …€…multipart/signedMIME-Version: 1.0 Content-Disposition: inline X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2900.3028 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="cHMo6Wbp1wrKhbfi" --cHMo6Wbp1wrKhbfi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable This is yet another test. --=20 Matijs van Zuijlen http://www.matijs.net/ --cHMo6Wbp1wrKhbfi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFF42lJh3TgaXYDPEERAoDrAJ9RGi0X4EtYw/fkgKxmiWLrqgc1FgCfcaCw kJeEQM9ww/GKJQ1VGoPjODM= =CprJ -----END PGP SIGNATURE----- --cHMo6Wbp1wrKhbfi--!ў№єї7 7џџџџљд7;Ћ 7}.SMTP:MATIJS@MATIJS.NETўџџџўџџџўџџџ„ўџџџ†‡ўџџџ‰Š‹ŒŽўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџmatijs@matijs.netSMTPmatijs@matijs.net+ЄОЃnнT€matijs@matijs.netSMTPmatijs@matijs.net џj№000 0ѓіѓ0p*x-originalarrivaltime*Internet Charset Body,x-spam-checker-versionx-spam-statusx-virus-scannedx-spam-level&x-sa-exim-mail-from(x-sa-exim-connect-ip"x-sa-exim-scanned"x-sa-exim-version€…… 0 `  А д №  H p  РF РF†РF€v:NzЗаЅРOжV…Email-Outlook-Message-0.921/t/files/plain_jpeg_attached.eml000444001750001750 3134614173262435 23735 0ustar00matijsmatijs000000000000Date: Mon, 24 Sep 2007 15:28:03 +0200 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=15987272481.a3dF7.966347 Content-Transfer-Encoding: 7bit Subject: test From: Matijs van Zuijlen To: matijs@xxxxxx.nl Message-Id: <20070924132803.GB10141@matijs.net> Received: from XXXXXXXXX.XXX.XX.NL ([111.111.111.111]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Mon, 24 Sep 2007 15:25:28 +0200 Received: from xxxxxxxxx.xx.nl ([11.111.11.11]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Mon, 24 Sep 2007 15:25:28 +0200 Received: from smtp-vbr14.xs4all.nl ([194.109.24.34]) by xxxxxxxxx.xx.nl with esmtp (Exim 4.68 (FreeBSD)) (envelope-from ) id 1IZnw9-000CV8-75 for matijs@xxxxxx.nl; Mon, 24 Sep 2007 15:25:28 +0200 Received: from apricot.matijs.net (mvz.xs4all.nl [80.126.4.68]) by smtp-vbr14.xs4all.nl (8.13.8/8.13.8) with ESMTP id l8ODPKnc051489 for ; Mon, 24 Sep 2007 15:25:20 +0200 (CEST) (envelope-from matijs@matijs.net) Received: from matijs by apricot.matijs.net with local (Exim 4.67) (envelope-from ) id 1IZnyl-000622-Ij for matijs@xxxxxx.nl; Mon, 24 Sep 2007 15:28:03 +0200 Content-Disposition: inline User-Agent: Mutt/1.5.16 (2007-06-11) X-Virus-Scanned: by XS4ALL Virus Scanner Return-Path: matijs@matijs.net X-OriginalArrivalTime: 24 Sep 2007 13:25:29.0021 (UTC) FILETIME=[5FE8DED0:01C7FEAE] --15987272481.a3dF7.966347 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=15987272480.A8Fd9cbdD.966347 Content-Transfer-Encoding: 7bit --15987272480.A8Fd9cbdD.966347 Content-Type: text/plain; charset=US-ASCII Content-Disposition: inline Content-Transfer-Encoding: 8bit test --15987272480.A8Fd9cbdD.966347 Content-Type: application/rtf Content-Disposition: inline Content-Transfer-Encoding: base64 e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsCg17XGYwXGZz d2lzcyBBcmlhbDt9Cg17XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQoNe1xmMlxmbmlsXGZjaGFy c2V0MiBTeW1ib2w7fQoNe1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQoNe1xj b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9Cg1cdWMxXHBh cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIHRlc3RccGFyCg19 --15987272480.A8Fd9cbdD.966347-- --15987272481.a3dF7.966347 Content-ID: Content-Type: image/jpeg; name=test.jpg Content-Disposition: attachment; filename="test.jpg" Content-Transfer-Encoding: base64 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 --15987272481.a3dF7.966347-- Email-Outlook-Message-0.921/t/files/plain_jpeg_attached.msg000444001750001750 6400014173262435 23737 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot EntryџџџџџџџџАР!jЎўЧ__properties_version1.00џџџџџџџџџџџџA __nameid_version1.0(џџџџџџџџ?рjЎўЧаЛjЎўЧ__substg1.0_0E04001E*џџџџ*џџџџ§џџџџџџџџџџџ ўџџџўџџџ0!"#$%&'()*+,-./ўџџџ12ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ РF‰2jЎўЧ__properties_version1.00џџџџџџџџџџџџA __nameid_version1.0(џџџџџџџџ?рjЎўЧаЛjЎўЧ__substg1.0_0E04001E*џџџџ*џџџџџџџџџџџџ§џџџ ўџџџўџџџ0!"#$%&'()*+,-./ўџџџ12ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ__substg1.0_0E03001E*џџџџўџџџ__substg1.0_0E02001E*џџџџџџџџџџџџўџџџ__recip_version1.0_#00000000:'4айjЎўЧайjЎўЧ__attach_version1.0_#00000000<џџџџџџџџ-аJjЎўЧаЛjЎўЧ__substg1.0_001A001E* џџџџ@__substg1.0_0037001E*џџџџџџџџџџџџ?__substg1.0_003B0102* џџџџ>"__substg1.0_003F0102*(џџџџџџџџ<A__substg1.0_0040001E* џџџџ;__substg1.0_00410102*џџџџџџџџџџџџ8‚__substg1.0_0042001E* џџџџ7__substg1.0_00510102*џџџџџџџџџџџџ6__substg1.0_0064001E*џџџџ5__substg1.0_0065001E*џџџџџџџџџџџџ4__substg1.0_0070001E*џџџџ3__substg1.0_00710102*џџџџџџџџџџџџ2__substg1.0_0075001E*џџџџ1__substg1.0_0076001E*џџџџџџџџџџџџ0__substg1.0_007D001E*џџџџš__substg1.0_0C190102*џџџџџџџџџџџџ‚__substg1.0_0C1A001E*џџџџ__substg1.0_0C1D0102*џџџџџџџџџџџџ"__substg1.0_0C1E001E*џџџџ__substg1.0_0C1F001E*џџџџџџџџ__substg1.0_0E28001E*џџџџџџџџ/__substg1.0_0E29001E*!џџџџ/__substg1.0_1000001E*џџџџ)џџџџ__substg1.0_1035001E* џџџџ#__substg1.0_1046001E*џџџџџџџџџџџџ __substg1.0_300B0102*%џџџџ __substg1.0_8000001E*џџџџџџџџџџџџ __substg1.0_8001001E*"$џџџџ __substg1.0_80020102*џџџџџџџџџџџџz__substg1.0_8003001E*#џџџџ<__substg1.0_80040102*џџџџџџџџџџџџ__substg1.0_8005001E*&џџџџ__substg1.0_003D001E*џџџџџџџџџџџџўџџџ__substg1.0_10090102*џџџџџџџџџџџџŠ__substg1.0_0E1D001E*џџџџџџџџџџџџ__properties_version1.00џџџџџџџџџџџџYиўџџџўџџџўџџџўџџџўџџџўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ !"#$%&'()*+,-./ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ9:ўџџџўџџџ=ўџџџўџџџўџџџўџџџBCDEFGHIJKLMўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџZ[\ўџџџўџџџўџџџўџџџўџџџўџџџcўџџџefўџџџhiўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџtestmatijs@xxxxxx.nl† LZFuЕйд rcpg125т2CtexAїџ €Єф€ѓPV?UВ%Qchс Рset2У%і3FЗ0,3я їЖ;05" `cPГ d36P І А,st Ђ €} by XS4ALL Virus Scannertest 24 Sep 2007 13:25:29.0021 (UTC) FILETIME=[5FE8DED0:01C7FEAE]POP://pop.xxxxxxxxxxxxxx.nl/AAgALyMAAAwLIlF0KxIrx6070KeHud2Z00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nlЋєƒz.УEЎц5РB‘Зяmatijs@matijs.net<20070924132803.GB10141@matijs.net>test 00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nl00000004matijs@xxxxxx.nlpop.xxxxxxxxxxxxxx.nlMatijs.van.Zuijlen@xs4all.nlSMTPSMTP:MATIJS.VAN.ZUIJLEN@XS4ALL.NLMatijs van Zuijlen+ЄОЃnнT€Matijs van ZuijlenSMTPMatijs.van.Zuijlen@xs4all.nlReceived: from XXXXXXXXX.XXX.XX.NL ([111.111.111.111]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Mon, 24 Sep 2007 15:25:28 +0200 Received: from xxxxxxxxx.xx.nl ([11.111.11.11]) by XXXXXXXXX.XXX.XX.NL with Microsoft SMTPSVC(6.0.3790.1830); Mon, 24 Sep 2007 15:25:28 +0200 Received: from smtp-vbr14.xs4all.nl ([194.109.24.34]) by xxxxxxxxx.xx.nl with esmtp (Exim 4.68 (FreeBSD)) (envelope-from ) id 1IZnw9-000CV8-75 for matijs@xxxxxx.nl; Mon, 24 Sep 2007 15:25:28 +0200 Received: from apricot.matijs.net (mvz.xs4all.nl [80.126.4.68]) by smtp-vbr14.xs4all.nl (8.13.8/8.13.8) with ESMTP id l8ODPKnc051489 for ; Mon, 24 Sep 2007 15:25:20 +0200 (CEST) (envelope-from matijs@matijs.net) Received: from matijs by apricot.matijs.net with local (Exim 4.67) (envelope-from ) id 1IZnyl-000622-Ij for matijs@xxxxxx.nl; Mon, 24 Sep 2007 15:28:03 +0200 Date: Mon, 24 Sep 2007 15:28:03 +0200 From: Matijs van Zuijlen To: matijs@xxxxxx.nl Subject: test Message-ID: <20070924132803.GB10141@matijs.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="BwCQnh7xodEAoBMC" Content-Disposition: inline User-Agent: Mutt/1.5.16 (2007-06-11) X-Virus-Scanned: by XS4ALL Virus Scanner Return-Path: matijs@matijs.net X-OriginalArrivalTime: 24 Sep 2007 13:25:29.0021 (UTC) FILETIME=[5FE8DED0:01C7FEAE] matijs@xxxxxx.nlSMTPЧўЎ_MjbА%ˆM-­\иив-2testMatijs.van.Zuijlen@xs4all.nlSMTPSMTP:MATIJS@XXXXXX.NLMatijs van Zuijlen+ЄОЃnнT€Matijs van ZuijlenSMTPMatijs.van.Zuijlen@xs4all.nlMatijs van Zuijlen+ЄОЃnнTMatijs van ZuijlenSMTPmatijs@xxxxxx.nlSMTP:MATIJS.VAN.ZUIJLEN@XS4ALL.NLtestIPM.Note@0рjЎўЧ@0рjЎўЧїє 7@9€3АЛЎўЧ;"š?Aš@A‚ѓBQšdepqšuv}› ‚š  "˜__substg1.0_0FF90102*џџџџџџџџџџџџX__substg1.0_37010102*,/џџџџ __substg1.0_3704001E*џџџџџџџџџџџџW__substg1.0_3707001E*.1џџџџV__substg1.0_370A0102*џџџџџџџџџџџџU __substg1.0_370E001E*0+џџџџT __properties_version1.007џџџџџџџџdˆ__substg1.0_0FFF0102*8џџџџџџџџbf__substg1.0_3001001E*36џџџџa__substg1.0_3002001E*џџџџџџџџџџџџ`__substg1.0_3003001E*52џџџџ___substg1.0_300B0102*џџџџџџџџџџџџ^__substg1.0_0FF60102*џџџџџџџџџџџџ]__substg1.0_00020102*џџџџџџџџџџџџk@__substg1.0_00030102*9;џџџџj0__substg1.0_00040102*џџџџџџџџџџџџg‚__substg1.0_10140102*>=џџџџS__substg1.0_10150102*џџџџAџџџџR__substg1.0_10060102*џџџџ@џџџџQ__substg1.0_10010102*:<џџџџP__substg1.0_10080102*џџџџџџџџџџџџO__substg1.0_101D0102*џџџџџџџџџџџџNџџџџџџџџџџџџџџџџџџџџџџџџ  @M_ЎўЧ(0)05$F 0šо?ŸN€€€zš€=€š€=  Šte є ˜—фЩ ‹[Ъ †AЌƒ …€…image/jpeg*†H†ї test.jpgtest.jpgџиџрJFIFHHџсExifMM*џўCreated with GIMPџлC  !"$"$џлCџРр€"џФ џФ!a1џФџФџк ?јШO=ш8МI"Z34g lхЃ>%|фœДg$ЮWЮ@љЪљ№‘-Ш9^$™ЫDH%Ђ$™ёЃ9DДg$‰_9ФДg$‰_9ч+Ф“>4g xтљЩ"Z36rбLхЂ$ бœ“9^$dqlф‘Хт@љЪљЩ3уFrЮWЯ„‰hЮ@б-$‰_9ч-Щ"W‰ч+ч%‰_9ч+ч$‰h‰g-Щ3•ѓ>rбLх|фŸ‰.rМH%|фБ+ФтWЮIœДg h–Œф™ЪљШ9hЮIœЏœтWЮKœЏœтW‰$KDpœЏH•ѓтW‰,JљШ%|фЙЪљШ%|ф™ЫFr‰hЮIœЏœѓ–Œф‘+ч x•ѓ’ч+ФтWЮIбœтWЮIОrЮZ3’DЏœѓ•тKœЏœѓ•ѓс"Z3rО|.rМH9^$‘- ђдyї ьsеѓ’DДDѓ•ѓ’DЏœтZ"I_9ФЏX•т@ё+ч%‰_9ФЏœ’%Ѓ9DДG Оr‰_9.rМH%x’DДg |х|ф‘- lхЂ$™ЫFr‰hЮIœЏ‰_>%Ѓ9ч+ч$ЮZ3rОrH–ŒфV)YчН[9ч+Ч œДg x•ѓ’g- x•ѓ’DЏœѓ–Œф‘+Фѓ–ˆ’DЏŸёХѓ’g- lхЂ$‘+ч |хЃ9$Jё x•у…‰_9ч+чТчХѓ>rМI"Z"@йЫFrLхx>rб&rОrЮW‰.|_>ѓ•тIбŸб-№™Ъё |јбH•ѓrОr\хx>rОrH•т@љЫFrLх|фœДD’%|фœЏLхЂ$Q€ЧйЫDI"WЮ@ё+ч%‰^8ЮW‰$KDH9_9$KDH9hЮIМH9hЮIœЏœѓ•ѓ’ч+ч |хx’DДg lхЂ$™ЫFrЮZ3’DЏœѓ–Œф™ЪљШ9^$Б+ФтWЮIœДg lхЂ$™ЪљШ9hЮI^$ОrH–Œф_9$KDp œДg$‰^$Ÿ"IОrЮWЯ…ЮW‰ФЏLхЂ$œЏœ“9hЮ@йЫFrH•ѓр9_9,JљШ<šГЯzЖrLјбœГ–ˆс3–ˆ4KDp™ЪљШ9^$ЙЪё x•ѓ’g- x•ѓ’DДg hуFrLх|фœЏ\х|фœЏœ“9h‰ФЏœ“9^$œДg$‰_9ФДD“9_9ч+ч%‰^$œЏœ“9h‰ФЏœ“9hЮ@б-Щ3•ѓ>rМIs•ѓ>rМI"Z36rбLхЃ9DДD“9_9ФДg$‰^$œЏX•ѓр9_9$KFr‰_9$JљШ)œЏH•ѓy"iчНsŸеb@љЪё%‰_9ч+Ф“9hЯ€h–Œф‘+ч x–ˆ’g+Фѓ•ѓ’g-Ш9^$™ЫFr‰h‰&rбœГ–Œф™ЪљШ9^$ЙЪёР>rОrH–ŒфœЏœ’%Ђ$ œДg$ЮW‰ч-№™ЪљШ>/œ’%Ѓ9ч+ч$‰hЮ@йЫFrLхxр9h‰$Jё |хx’ч+Фѓ•тIœДg |хx’g- lхЂ$™Ъё x–Œф™ЪљШ>/œ’%Ђ$œЏLхЃ>ЂZ3’g+ФƒШ€ž{а4KDI"W‰ФЏ\хxrбH•ѓр%x’G3>rОrLх|фЮWЮIбЮZ"IœЏœѓтљЩbWЮ@љЪё$ЮZ"@йЫFrLх|фœДg$ЮW‰ч+ч%ЮW‰ч+ч%ЮWЮ@љЪљЩ"Z36rбœ“9_9ФЏX•ѓ>rМp™ЫFr‰_9$KFr‰^$™Ъё xуFrLхxrМI3тљШ9hЮIОrЮW‰.rМH%|ф‘- lхЃ9&rб‰h‰&rОr‰_9,JљШ%|ф™ёЃ9ч+Ф“9hЮ@љЪљЩ"W‰ч+ч%ЮWЮ@ё+ч%ЮWЮ@ё+Ф’%Ѓ9g-ТDДg lхЂ$™Ъё |јМIs•ѓ/œ“9hЮ@б-Щ3•ѓrОrH–Œф бœ’%|фОr\х|фœЏH–ŒфŸ‰&rбgЦŒф™ЫFr‰hЮIОrЮW‰$KFr‰_9&rб‰hЮIŸ34KDI"W‰ФДg$ЮWЮ@ё+ч$‰hЮ@йЫFrLхЃ9DДg$ЮW‰Ч3’DЏЮWЯ…ЮW‰ч+Ф“9h‰g-$ЮW‰ч-$ЮWЮ@љЫDI"WŽѓ•тKОrЮWЮIœДg h–Œф™Ъё x•чž$рёœёТЯ=ъљШ9hЮIОrЯЩ3•т@љЪљЩs•ѓ>rМI3–Œф œДD“9_9Ч3’DЏœтWЮKМH%|ф‘-Ш%xс3–Œф бœ“9_9Ч3’g+ФтWЯ„‰h‰ФЏLхЂ$ бLх|фœЏœ–%|фœЏ\хx>rОrLхЂ$œЏœ“9h‰g-$ЮW‰ч+ч%ЮW‰ч+ч$‰hЮ@ёХтIœДg lхЃ>9^$_9.rМH9_9.rМH9_9&rб‰_9&rМsР79чёœG=ч+ч$ЮZ"@б-Щ"Z"@б-Щ"WЮ@ё+Ф–%|фŸЯ„‰hЮ@ё+Ф“9hЮ@йёЃ9$JљШ9hЮIœЏœтW‰ќ.rОrЮZ"IœДDѓ•тIœЏЮZ3’DЏœтWЮKМH8МI3–ˆrМI"Z"@ё+Ф“9hЯ€h–Œф™ЪљШ%x’ч+Фѓ•тIœДDтTryчŒрwœѕh’GЮ@ё+ч%Я‹ФтWЮIœДg |х|ф™ЪљШ%Ђ$™Ъё |х|фБ+ФтWЮIœДGё+ч$ЮWЮ@љЫFrLх|фœЏ\х|фœЏH–ˆrОrLхЃ9g-$ЮWЮ@ё-$ЮWЮ@љЪё%ЮW‰ч+чТg-Ш8ОrH•т@љёЃ9&rМH%x’чХѓ>rОrLхЃ9чХѓ’DДg |х|ф‘+ч |хЃ9&rОrЮW‰.rОrЮWЮIœДg x•ѓ’DЏЮZ"IœЏЮZ3’DЏœѓ•тKОrЮWЮIœДDГ–ˆ’G‰ФДg$ЮW‰ФЏœ—9_9ФЏœ’%Ѓ>Г–ˆ’DЏЯ<у Цpž{а4sъљЩ3–ŒфМI3–ˆ4KDI"W‰ч+Ф—9^$МI3–ŒфМI"Z"@б-Щ3тљШ9_9.rОr‰^$ЙЪё |х|ф‘-Ш%Ђ$™ЪљШ%Ѓ9&rОrЮW‰,JљШ%x’DДg |хx’g-№ œДg$‰h‰g-Щ"W‰ФЏŸ бœтWЮIбœГ–ˆ’gХѓр9h‰&rМH9^$ЙЪљШ9^$‘-Ш%|ф™Ъё |хЃ>9_9чЦŒф™ЪљШ%x’gЦˆ>rЗ9ч 0rбœ“9_>у‹ч$‰^yчаrбœ“9^$œЏœ“9hЮ@ё+ч$ЮZ34KFrLхx/LхЂ$œЏœ“9hЯ€|хx’g- x•тIŸ‰ч-Щ3тё x•ѓ’ФЏЯ‹Ф’%Ѓ9чХѓ’DЏœѓуDI3•ѓ>rОr\х|фœЏLхЂ$О|$JљШ9h‰&rМpœЏœ—9_9чХтIœДg |х|јH•ѓ>rбœ“9_>тW‰,qxrОrLхЃ9ФЏœ“9hЮ@йЫDI"WЮ@љЫDI3•т@љЪё%Я‹ЧмчœЦp є œДD’%|фœЏ\хxтW‰$KDH9hЮIО|ч-Щ3•ѓ>rМIc‹ч |х|ф™ЫDH9hЮIœДg h–Œф™ЪљШ9_9.rОr‰^$™ЫDH9_9$KF|g-$‰_>ѓ•xфѓЮ:Ря>Ћœ’8бœЂZ3’g+ч |хЃ9&rОrЮWЮKœЏœтWЮIœДg |х|ф‘-Ш%Ѓ9$Jё |х|фЙЪљШ9_9$KFrЮW‰$KDH9hЮIОrЮZ3’g+ч |х|фБ+ч |х|ф™ЫDH9h‰&rбЮZ3’g+ч |хЂ$™ЪљШ>/œ’%Ђ$МI"Z"@б-Щ3•ѓ>rОrX•ѓrОrH–Œф œДg$‰_9ч-Щ3•ѓ>rМIbWЮ@љЪё%Я‹ч x•тIœДDЂZ3’g+ФтWЮKМH8О|.rОrЮW‰$KFr‰hЮIœЏ‰h‰$JљШ9^$™ЫDH9_9&rбŸйёЃ9&rОr‰hЮIОrЮZ"IœЏœтW‰&rбœѓ•тIб‰hЮIœЏŸљЪљЩs•т@ё+ч%‰_9G<0ёœyЯzЧ"IМpОr\хx>rОrH–ˆrМI3–ŒфОrH–Œф бœ“9_9ч+ч%ЮWЯ€|х|фБ+Фѓ•тIœДg lхЃ9$KFrЮZ"IœЏœтWЯ…‰^$œЏœ’%Ѓ9ФЏœ’%Ђ$ОrLх|фœДD’%x>rОr\х|фœЏH–ˆ>rОrLх|фœДg$Я‹Фѓ•тKМH9^$™ЫDH9h‰&rбœЂZ3’g+ФтVžyТФœ3€)YчН_9DДg$ЮW‰ч-$ЮWЮ@ё+Ф–8Оr‰^$‘-Ш%|ф‘- h•ѓ’ФЏœтZ3’DЏЮWЮIœДg |хx’g-Ш%Ѓ9&rМH9h‰&rОr‰_9&rб‰^$™ЪљШ%Ђ$‘+ч |хЃ9$JљШ9^$БХт@љЪё$Ž4g lјбœ’%Ѓ9g-Щ"WЮ@ё-Щ3•т@ё+Ф“9hЮ@љЪё$‰hЮ@йёЂ$™Ъё |х|фЙЪё |х|фЙЪљШ9_9&rбЮZ3’g+Я<р:Œр€ё |х|ф™ЫFrЮWЮIhЮ@йЫFrH•т@ё+Ф–%|фŸ‰,JљШ9^$‘-Ш9^$™ЪљШ9hЮIМH9_9.rОrЮW‰&rбœѓ•ѓ’g+чРrМp‘-Ш8ОrLхЂ$ œДD“9^$œДD“>/œтWЮKОrЮW‰$KDH%x’g+Фѓ–Œф‘+Фѓ•тKОrЮWЮIœДDтW‰$KFrЮZ"IœЏЮZ3’DЏœѓ•тIбœтN9Я8у8ž{еѓ’DЏœтWЮKО|чХтIбЮWЮIМH9_9,JљШ9h‰&rМH9_9$KFrЮZ"IбœГ–Œф‘+Фѓ–ˆ’g+Фѓ•тIбŸйЫDI"Z36rбLх|фœДg$‰_9ч+ч%ЮWЮ@ёХѓ’g-Ш9_9$KFr‰hЮIœЏЮZ"IОr‰^$™ЫF|ФЏœ“9hЮ@б-Тg+чР9hЮ@йЫDI3•ѓrбH•ѓrМI"Z"@йЫFrLхxр9hЯ„ЮWЮ@ё+Ф–%xр8Оr\хx>rЏ>9 --15987272710.AdBFC2d6.966392 Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit This is a test The body is in plain text --15987272710.AdBFC2d6.966392 Content-Type: application/rtf Content-Disposition: inline Content-Transfer-Encoding: base64 e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsCg17XGYwXGZz d2lzcyBBcmlhbDt9Cg17XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQoNe1xmMlxmbmlsXGZjaGFy c2V0MiBTeW1ib2w7fQoNe1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQoNe1xj b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9Cg1cdWMxXHBh cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIFRoaXMgaXMgYSB0ZXN0XHBhcgoNVGhlIGJvZHkg aXMgaW4gcGxhaW4gdGV4dFxwYXIKDX0= --15987272710.AdBFC2d6.966392-- Email-Outlook-Message-0.921/t/files/plain_uc_unsent.msg000444001750001750 2600014173262435 23156 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ`вlљYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!`вlљYЧ`вlљYЧ__substg1.0_0E04001F*џџџџџџџџ§џџџџџџџџџџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ РFP/йlљYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!`вlљYЧ`вlљYЧ__substg1.0_0E04001F*џџџџџџџџџџџџџџџџ§џџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ__substg1.0_0E03001F* џџџџўџџџ__substg1.0_0E02001F*џџџџџџџџџџџџўџџџ__recip_version1.0_#00000000:џџџџџџџџ`вlљYЧ`вlљYЧ__substg1.0_001A001F*џџџџ__substg1.0_0037001F*џџџџџџџџB__substg1.0_00410102* џџџџ 8__substg1.0_0042001F*џџџџџџџџџџџџ __substg1.0_0064001F* џџџџўџџџ__substg1.0_0065001F*џџџџџџџџџџџџўџџџ__substg1.0_0070001F* џџџџ B__substg1.0_0E1D001F*џџџџџџџџџџџџB__substg1.0_1000001F*џџџџR__substg1.0_10090102*џџџџџџџџџџџџЋ__substg1.0_300B0102*џџџџ__substg1.0_8003001F*џџџџџџџџџџџџ__substg1.0_003D001F*џџџџџџџџџџџџўџџџўџџџўџџџўџџџўџџџўџџџ ўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ,-.ўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџTest for MSGConvert -- plain textSomeone Else11.0Vš… тH/IЁЊАУ„ГЇ4LZFuкЕ rcpg125т2CtexAїџ €Єф€ѓPV?UВ%Qchс Рset2У%і3FЗ0,3я їЖ;05" `cP3 d36P І TJh a АsNt Ђ €№e рdіy2 € Sад} 0This is a test The body is in plain textTest for MSGConvert -- plain textTest User+ЄОЃnнTTest UserSMTPtest@example.comTest for MSGConvert -- plain textIPM.Note@0`вlљYЧ@0`вlљYЧїє 4y  #& )67DA8ѓBdepD @0$А/љYЧ T ЋH__properties_version1.00џџџџџџџџ+ш__substg1.0_0FFF0102*џџџџџџџџ*@__substg1.0_3001001F*џџџџ)__substg1.0_3002001F*џџџџџџџџџџџџ(__substg1.0_3003001F*џџџџ'*__substg1.0_300B0102*џџџџџџџџџџџџ&__substg1.0_5FF6001F*џџџџ%__substg1.0_5FF70102*џџџџџџџџџџџџ$@__substg1.0_0FF60102*џџџџџџџџџџџџ#__substg1.0_00020102*џџџџџџџџџџџџ0__substg1.0_00030102*џџџџ/@__substg1.0_00040102*џџџџџџџџџџџџўџџџ__substg1.0_100F0102*#%џџџџ"__substg1.0_10010102* џџџџ!__substg1.0_101E0102*џџџџџџџџџџџџ __substg1.0_100A0102*&џџџџџџџџ__substg1.0_10110102*џџџџџџџџџџџџ__substg1.0_10120102*$"џџџџ__substg1.0_10090102*џџџџџџџџџџџџџџџџџџџџџџџџ€џџџџ 0ёо?щ§ €€€˜У€  €€ €€= D…………T……R……|у+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.comSomeone ElseSMTP:SOMEONE@SOMEWHERE.COMsomeone@somewhere.comSMTPSomeone Else+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.com ўџ@щ00 0, 0щ9і_ї_@щ§_џ_іщ004……R…T…………… РFEmail-Outlook-Message-0.921/t/files/plain_uc_wc_unsent.eml000444001750001750 177414173262435 23631 0ustar00matijsmatijs000000000000Date: Mon, 26 Feb 2007 22:57:01 +0000 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=15987274670.CD99e19.967165 Content-Transfer-Encoding: 7bit Subject: Test for MSGConvert -- plain text To: Someone Else --15987274670.CD99e19.967165 Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit This is a test The body is in pцБЌain text --15987274670.CD99e19.967165 Content-Type: application/rtf Content-Disposition: inline Content-Transfer-Encoding: base64 e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsCg17XGYwXGZz d2lzcyBBcmlhbDt9Cg17XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQoNe1xmMlxmbmlsXGZjaGFy c2V0MiBTeW1ib2w7fQoNe1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQoNe1xj b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9Cg1cdWMxXHBh cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIFRoaXMgaXMgYSB0ZXN0XHBhcgoNVGhlIGJvZHkg aXMgaW4gcGxhaW4gdGV4dFxwYXIKDX0= --15987274670.CD99e19.967165-- Email-Outlook-Message-0.921/t/files/plain_uc_wc_unsent.msg000444001750001750 2600114173262435 23650 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ`вlљYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!`вlљYЧ`вlљYЧ__substg1.0_0E04001F*џџџџџџџџ§џџџџџџџџџџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ РFP/йlљYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!`вlљYЧ`вlљYЧ__substg1.0_0E04001F*џџџџџџџџџџџџџџџџ§џџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ__substg1.0_0E03001F* џџџџўџџџ__substg1.0_0E02001F*џџџџџџџџџџџџўџџџ__recip_version1.0_#00000000:џџџџџџџџ`вlљYЧ`вlљYЧ__substg1.0_001A001F*џџџџ__substg1.0_0037001F*џџџџџџџџB__substg1.0_00410102* џџџџ 8__substg1.0_0042001F*џџџџџџџџџџџџ __substg1.0_0064001F* џџџџўџџџ__substg1.0_0065001F*џџџџџџџџџџџџўџџџ__substg1.0_0070001F* џџџџ B__substg1.0_0E1D001F*џџџџџџџџџџџџB__substg1.0_1000001F*џџџџR__substg1.0_10090102*џџџџџџџџџџџџЋ__substg1.0_300B0102*џџџџ__substg1.0_8003001F*џџџџџџџџџџџџ__substg1.0_003D001F*џџџџџџџџџџџџўџџџўџџџўџџџўџџџўџџџўџџџ ўџџџ ўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ,-.ўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџTest for MSGConvert -- plain textSomeone Else11.0Vš… тH/IЁЊАУ„ГЇ4LZFuкЕ rcpg125т2CtexAїџ €Єф€ѓPV?UВ%Qchс Рset2У%і3FЗ0,3я їЖ;05" `cP3 d36P І TJh a АsNt Ђ €№e рdіy2 € Sад} 0This is a test The body is in pllain textTest for MSGConvert -- plain textTest User+ЄОЃnнTTest UserSMTPtest@example.comTest for MSGConvert -- plain textIPM.Note@0`вlљYЧ@0`вlљYЧїє 4y  #& )67DA8ѓBdepD @0$А/љYЧ T ЋH__properties_version1.00џџџџџџџџ+ш__substg1.0_0FFF0102*џџџџџџџџ*@__substg1.0_3001001F*џџџџ)__substg1.0_3002001F*џџџџџџџџџџџџ(__substg1.0_3003001F*џџџџ'*__substg1.0_300B0102*џџџџџџџџџџџџ&__substg1.0_5FF6001F*џџџџ%__substg1.0_5FF70102*џџџџџџџџџџџџ$@__substg1.0_0FF60102*џџџџџџџџџџџџ#__substg1.0_00020102*џџџџџџџџџџџџ0__substg1.0_00030102*џџџџ/@__substg1.0_00040102*џџџџџџџџџџџџўџџџ__substg1.0_100F0102*#%џџџџ"__substg1.0_10010102* џџџџ!__substg1.0_101E0102*џџџџџџџџџџџџ __substg1.0_100A0102*&џџџџџџџџ__substg1.0_10110102*џџџџџџџџџџџџ__substg1.0_10120102*$"џџџџ__substg1.0_10090102*џџџџџџџџџџџџџџџџџџџџџџџџ€џџџџ 0ёо?щ§ €€€˜У€  €€ €€= D…………T……R……|у+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.comSomeone ElseSMTP:SOMEONE@SOMEWHERE.COMsomeone@somewhere.comSMTPSomeone Else+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.com ўџ@щ00 0, 0щ9і_ї_@щ§_џ_іщ004……R…T…………… РF Email-Outlook-Message-0.921/t/files/plain_unsent.eml000444001750001750 200214173262435 22432 0ustar00matijsmatijs000000000000Date: Mon, 26 Feb 2007 22:56:40 +0000 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=15987280930.706Eee3E2.969511 Content-Transfer-Encoding: 7bit Subject: Test for MSGConvert -- plain text To: Someone Else --15987280930.706Eee3E2.969511 Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit This is a test The body is in plain text --15987280930.706Eee3E2.969511 Content-Type: application/rtf Content-Disposition: inline Content-Transfer-Encoding: base64 e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsCg17XGYwXGZz d2lzcyBBcmlhbDt9Cg17XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQoNe1xmMlxmbmlsXGZjaGFy c2V0MiBTeW1ib2w7fQoNe1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQoNe1xj b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9Cg1cdWMxXHBh cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIFRoaXMgaXMgYSB0ZXN0XHBhcgoNVGhlIGJvZHkg aXMgaW4gcGxhaW4gdGV4dFxwYXIKDX0= --15987280930.706Eee3E2.969511-- Email-Outlook-Message-0.921/t/files/plain_unsent.msg000444001750001750 2500014173262435 22466 0ustar00matijsmatijs000000000000аЯрЁБс>ўџ ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ€аs`љYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!€аs`љYЧ€аs`љYЧ__substg1.0_0E04001E*џџџџџџџџ §џџџџџџџџџџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџ РF`F}`љYЧ @ __properties_version1.00џџџџ __nameid_version1.0(џџџџџџџџ!€аs`љYЧ€аs`љYЧ__substg1.0_0E04001E*џџџџџџџџ џџџџџџџџ§џџџ ўџџџ  ўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ__substg1.0_0E03001E* џџџџўџџџ__substg1.0_0E02001E*џџџџџџџџџџџџўџџџ__recip_version1.0_#00000000:џџџџџџџџ€аs`љYЧ€аs`љYЧ__substg1.0_001A001E*џџџџ __substg1.0_0037001E*џџџџџџџџ !__substg1.0_00410102* џџџџ 8__substg1.0_0042001E*џџџџџџџџџџџџ __substg1.0_0064001E* џџџџўџџџ__substg1.0_0065001E*џџџџџџџџџџџџўџџџ__substg1.0_0070001E* џџџџ!__substg1.0_0E1D001E*џџџџџџџџџџџџ!__substg1.0_1000001E*џџџџ)__substg1.0_300B0102*џџџџ__substg1.0_8003001E*џџџџџџџџџџџџ__substg1.0_003D001E*џџџџџџџџџџџџўџџџ__substg1.0_10090102*џџџџџџџџџџџџЋўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџўџџџ()*ўџџџўџџџўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџTest for MSGConvert -- plain textSomeone ElseЇ4LZFuкЕ rcpg125т2CtexAїџ €Єф€ѓPV?UВ%Qchс Рset2У%і3FЗ0,3я їЖ;05" `cP3 d36P І TJh a АsNt Ђ €№e рdіy2 € Sад} 011.0Vš… тH/IЁЊАУ„ГThis is a test The body is in plain textTest for MSGConvert -- plain textTest User+ЄОЃnнTTest UserSMTPtest@example.comTest for MSGConvert -- plain textIPM.Note@0€аs`љYЧ@0€аs`љYЧїє  __properties_version1.00џџџџџџџџ'ш__substg1.0_0FFF0102*џџџџџџџџ&@__substg1.0_3001001E*џџџџ% __substg1.0_3002001E*џџџџџџџџџџџџ$__substg1.0_3003001E*џџџџ#__substg1.0_300B0102*џџџџџџџџџџџџ"__substg1.0_5FF6001E*џџџџ! __substg1.0_5FF70102*џџџџџџџџџџџџ @__substg1.0_0FF60102*џџџџџџџџџџџџ__substg1.0_00020102*џџџџџџџџџџџџ,__substg1.0_00030102*џџџџ+@__substg1.0_00040102*џџџџџџџџџџџџўџџџ__substg1.0_100F0102*#%џџџџ__substg1.0_10010102* џџџџ__substg1.0_101E0102*џџџџџџџџџџџџ__substg1.0_100A0102*&џџџџџџџџ__substg1.0_10110102*џџџџџџџџџџџџ__substg1.0_10120102*$"џџџџ__substg1.0_10090102*џџџџџџџџџџџџџџџџџџџџџџџџ #& )67"A8ѓB dep" @0$А/љYЧ *€џџџџ 0№о?щ§ €€€˜У€ €€ €€=  Ћe"№…………T……R……|у+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.comSomeone ElseSMTP:SOMEONE@SOMEWHERE.COMsomeone@somewhere.comSMTPSomeone Else+ЄОЃnнTSomeone ElseSMTPsomeone@somewhere.com ўџ@ђ0 00 0№9і_ ї_@ѓ§_џ_і№06E……R…T…………… РF