MBOX-Line: From David.Harris at pmail.gen.nz  Thu Jul 16 20:50:57 2015
To: imap-protocol@u.washington.edu
From: David Harris <David.Harris@pmail.gen.nz>
Date: Fri Jun  8 12:34:55 2018
Subject: [Imap-protocol] MIME parsing and part numbering
Message-ID: <55A87BA1.25167.5CD5348F@David.Harris.pmail.gen.nz>

As I mentioned last week, I'm in the process of replacing my existing MIME parser. 

I'm putting together a commandline version of this parser that spits out a full MIME 
parse including all IMAP-specific parts and part numbers, offsets, and octet and line 
counts. I propose to make this application publicly available in the hope that it might 
assist new IMAP developers to come to terms with the way MIME and IMAP 
interact with each other, particularly in regard to part numbering.

I have a library of over a million mail messages I can use to test it out, but if you 
have a few interesting boundary-case messages, or hugely complex messages that 
you would be willing to share with me for testing purposes only, I'd be glad to 
receive them (although please be aware that I run my mail server with a 4MB per 
message limit). Please zip them if possible.

I have the bulk of the process sorted out, but would be grateful for quick 
confirmation of two points:

1:  In IMAP terms, for a part that is of type MESSAGE/RFC822 and which is not 
itself multipart, "<partnum>.TEXT" and "<partnum>.1" should yield the same data 
when fetched.

2: For a non-multipart message of any type, a request to fetch part "1.MIME" should 
synthesize a return containing all headers starting with "Content-" from the 
message's headers and terminate them with a CRLF.

For point (2), are there any other headers I should be including in the synthesis?

Cheers!

-- David --

------------------ David Harris -+- Pegasus Mail ----------------------
Box 5451, Dunedin, New Zealand | e-mail: David.Harris@pmail.gen.nz
           Phone: +64 3 453-6880 | Fax: +64 3 453-6612

Newspaper misprints from around the world:
    "After the boat had been secured above the wrecked galleon the
    apparatus was set in motion by the captain's 18-year old daughter,
    Veronica. Within an hour, she was yielding her treasure to the 
    excited crew."




