james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Kalnichevski (JIRA)" <server-...@james.apache.org>
Subject [jira] Commented: (MIME4J-60) Configurable strategy for line delimiters
Date Mon, 01 Dec 2008 14:32:44 GMT

    [ https://issues.apache.org/jira/browse/MIME4J-60?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652013#action_12652013
] 

Oleg Kalnichevski commented on MIME4J-60:
-----------------------------------------

@Stefano

The issue of consistency
=========================

1) RootInputStream

RootInputStream is broken for MIME streams with binary transfer coding and should not have
existed in the first place, but I will happily make it consistent with the rest of the code.


2) BufferedLinedReaderInputStream:

New line = CRLF | LF

3) AbstractEntity

New line = CRLF | LF

4) QuotedPrintableInputStream 

Cannot comment. Will happily investigate.

5) MimeUtil#getHeaderParams

Cannot comment. Will happily investigate.

6) MimeBoundaryInputStream

New line = CRLF | LF

Out of 6 cases I personally think there are only three legitimate cases that need attention.


The issue of isolated CR
=========================

I consider isolated CR a non-issue, but fully admit to my HTTP bias. However, I am prepared
to implement two modes of operation for all relevant classes as outlined in my previous post.

I can commit myself to taking the following actions:

option 1) Fixing RootInputStream, investigating QuotedPrintableInputStream and MimeUtil#getHeaderParams
and dropping isolated CR as a non-issue.

option 2) Fixing RootInputStream, QuotedPrintableInputStream, MimeUtil#getHeaderParams and
implementing strict / lenient parsing modes for all relevant classes.

If you are not happy with either of the options, I once again will have to step away and let
someone else take the lead

I clearly prefer option 1

@Markus

Besides obvious performance implications, simple input streaming wrapping and filtering will
result in corruption of parts with binary transfer coding (used very frequently when transferring
MIME coded content over HTTP protocol)

> Configurable strategy for line delimiters
> -----------------------------------------
>
>                 Key: MIME4J-60
>                 URL: https://issues.apache.org/jira/browse/MIME4J-60
>             Project: JAMES Mime4j
>          Issue Type: Wish
>    Affects Versions: 0.4
>            Reporter: Stefano Bagnara
>             Fix For: 0.6
>
>         Attachments: MIME4J-60-readLine-returns-no-newline.patch, newlines-tests.zip,
newlinestrat.patch
>
>
> There is an ongoing discussion about how we should deal with non canonical line endings
(isolated LF and/or isolated CR).
> This issue is to track discussion results and proposed patches.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Mime
View raw message