[Top] [All Lists]

Re: MIME boundary question

1995-02-10 08:35:18
At 10:08 PM 2/9/95, John Gardiner Myers wrote:
We had a perfectly good grammar worked out on the list around the 25th of
October.  Can't we just stick with that?

I looked back at that discussion.  Perhaps I'm missing part of it.  The
last large chunk I find is this (there are a couple of minor changes made
after, but nothing very substantive):

Date: Tue, 25 Oct 1994 12:19:53 -0700 (PDT)
From: Ned Freed <NED(_at_)innosoft(_dot_)com>
Subject: Re: multipart clarifications/nits
To: John Gardiner Myers <jgm+(_at_)cmu(_dot_)edu>
Cc: ietf-822(_at_)dimacs(_dot_)rutgers(_dot_)edu

I've toyed with the idea of making the first boundary special. The best I've
been able to come up with is:

dash-boundary := "--" boundary
                ; boundary taken from  Content-Type
                ; field. There must be no LWSP
                ; between these elements.

multipart-body := preamble dash-boundary CRLF
                 body-part *encapsulation
                 close-delimiter epilogue
                 ; No LWSP around dash-boundary.

encapsulation := delimiter body-part

delimiter := CRLF dash-boundary CRLF
            ; No LWSP around dash-boundary.

close-delimiter := CRLF dash-boundary "--" CRLF
                  ; Again, LWSP around
                  ; dash-boundary or "--".

[I don't know what "Again, LWSP..." means.  The others all say "No LWSP".
Typo? SD]

preamble := discard-text

epilogue := discard-text

discard-text := *text *(*text CRLF)
               ; To be ignored upon receipt.

body-part := <"message" as defined in RFC 822, with all
             header fields optional, and with the
             specified delimiter and close-delimiter
             not occurring anywhere in the message body,
             either on a line by itself or as a substring
             anywhere.  Note that the semantics of a part
             differ from the semantics of a message, as
             described in the text.>

If a
delimiter is allowed to have an arbitrary amount of whitespace between
the boundary and the CRLF, then a parser must have an arbitrary amount
of lookahead in order to determine whether a line is a delimiter or

It isn't allowed to have this. I hope this is clearer now.

And that's the final statement I have on boundaries--that delimiters are
NOT allowed to have an arbitrary amount of whitespace between the boundary
and the CRLF.  Therefore, from my reading of Ned's note, modulo the one
confusing statement about LWSP, the lookahead problem John refers to does
not exist, because boundaries are not allowed to have trailing whitespace.

Did I miss a later message that reversed this?  Perhaps a private exchange,
or on another list, or just lost in the ether?  Ned, did you ever make any
sort of revised draft available?  I checked internet-drafts at ISI, and
could find nothing relevant under draft-freed* or draft-borenstein*.

Steve Dorner, Qualcomm Incorporated.  "Oog make mission statement."

<Prev in Thread] Current Thread [Next in Thread>