On Jun 15, 2004, at 6:31 PM, Jim Dynes wrote:

First of all this guy Larry lives in Sweden and I don't know if that is an
issue or not.


Second of all, I remember hearing somewhere that PCs get confused with an
extension of .mpeg verses .mpg.


Yes, No?

Maybe. it depends on the software installed on the PC. If they have Quicktime installed, .mpeg files are indeed recognized as well as .mpg files. I believe Windows Media Player does as well.


But the issue is the way Apple encodes MIME attachments in Mail.app. They actually followed the rules, as laid out in RFC 1521 (the RFC's are the documents in which the standards and rules for the Internet are laid out. In this case, RFC 1521 <http://www.cse.ohio-state.edu/cgi-bin/rfc/rfc1521.html> defines what an e-mail message is supposed to look like, how it's supposed to be encoded, so that all e-mail clients work together, seamlessly (in theory).)

But hey, I can blame it (90% of the time) on Microsoft, anyway.

The origins of the problem lie in Apple's dual-fork file structure, a hangover from the original mac OS. (the reasons and advantages of such a structure are not important here, and could cover another entire essay. Suffice it to say, this is something Apple *definitely* did right...) and how it's handled in OS X.

Problem is that not all e-mail clients *fully* implement the RFC's, in particular, those sections dealing with attachments. Apple *did* follow all the rules, then Microsoft *broke* some rules and as a result many e-mail clients 'broke' when it came to recognizing attachments.

The detail is that the broken ones recognize a file type by it's extension, not it's mime definition. Apple encodes files with a resource fork as two *separate* mime attachments, with the same file name, but with different mime type descriptions.

Many e-mail clients, looking only at file names, only see one of the attachments, the one describing the resource fork of the file. These are the ones that 'break'.

Some clients see just the data fork and some properly integrate the two.

It's *Microsoft's* fault because, according to Apple's own guidelines, only program files are supposed to contain resource forks beyond filetype/creator info, which is a somewhat special case (the MIME encoding manages filetype/creator data, and deals with datafile resource fork issues) but they stick all sorts of information in their resource forks. Of course, because they have to work cross-platform, this data is *also* placed in the data fork as well, making it all unnecessary...

So Mail.app sees a resource fork that's more than just ft/creator assumes 'aha, this is a program file, I should properly encode the thing, spits out two attachments for it, the person on the other end sees a a 'corrupt' attachment and everyone blames Apple, when they were only following the rules...

Here is the raw content of a sample e-mail I sent myself:

--Apple-Mail-1--427601778
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
        charset=US-ASCII;
        format=flowed

Here's a test Word Attachment


--Apple-Mail-1--427601778 <<<<<<<<<<<<<This is the part that breaks things
Content-Type: multipart/appledouble;
boundary=Apple-Mail-2--427601777
Content-Disposition: attachment



--Apple-Mail-2--427601777
Content-Transfer-Encoding: base64
Content-Type: application/applefile; <<<<<<Note filetype that Mail has decided to call this.
name="test message to send" <<<<This is the actual document.
Content-Disposition: attachment;
filename="test message to send"


AAUWBwACAAAAAAAAAAAAAAAAAAAAAAAAAAMAAA

<Snip a whole bunch of encoding.>

--Apple-Mail-2--427601777
X-Apple-Content-Length: 1657698
Content-Transfer-Encoding: base64
Content-Type: application/octet-stream; <<<<<Here is the 'resource' fork, as a binary stream.
x-mac-type=5738424E;
name="test message to send";
x-unix-mode=0644;
x-mac-creator=4D535744
Content-Disposition: attachment;
filename="test message to send"



--Apple-Mail-2--427601777--

Many email clients look at the 'name=' field to split up files. The ones that do, break here because the second attachment of the same name over-rides the first one, because they ignore the whole 'Appledouble' file type thing.

THIS is why things get broken.

sending as 'Windows friendly' in 10.3 results in a single attachment for the file.



--
Bruce Johnson
University of Arizona
College of Phar macy
Information Technology Group

Institutions do not have opinions, merely customs


-- G-List is sponsored by <http://lowendmac.com/> and...

Small Dog Electronics    http://www.smalldog.com | Refurbished Drives |
-- We have Apple Refurbished Monitors in stock!  |  & CDRWs on Sale!  |

     Support Low End Mac <http://lowendmac.com/lists/support.html>

G-List list info:       <http://lowendmac.com/lists/g-list.shtml>
 --> AOL users, remove "mailto:";
Send list messages to:  <mailto:[EMAIL PROTECTED]>
To unsubscribe, email:  <mailto:[EMAIL PROTECTED]>
For digest mode, email: <mailto:[EMAIL PROTECTED]>
Subscription questions: <mailto:[EMAIL PROTECTED]>
Archive: <http://www.mail-archive.com/g-list%40mail.maclaunch.com/>

Using a Mac? Free email & more at Applelinks! http://www.applelinks.com

Reply via email to