The following issue has been updated:

    Updater: Noel J. Bergman (mailto:[EMAIL PROTECTED])
       Date: Fri, 7 May 2004 1:17 PM
    Changes:
             Fix Version changed to 2.2.0RC3
    ---------------------------------------------------------------------
For a full history of the issue, see:

  http://issues.apache.org/jira/browse/JAMES-281?page=history

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/JAMES-281

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: JAMES-281
    Summary: Return-Path twice in header
       Type: Bug

     Status: Unassigned
   Priority: Minor

    Project: James
 Components: 
             SMTPServer
   Fix Fors:
             2.2.0RC3
   Versions:
             2.2.0RC1
             2.2.0RC2
             2.1.3

   Assignee: 
   Reporter: Hes Siemelink

    Created: Thu, 6 May 2004 8:03 AM
    Updated: Fri, 7 May 2004 1:17 PM

Description:
Hello

I posted about this problem a while ago on the list. I see that James 2.2.0RC2 still 
contains this issue so I've taken the liverty of creating a Jira entry.

We experienced some unexpected behavior with James 2.1.3 when sending a message that 
has two Return-Path headers.

An example of such a message:

    Return-Path: [EMAIL PROTECTED]
    From: "Brinkers" <[EMAIL PROTECTED]>
    To: <[EMAIL PROTECTED]>
    Subject: Return-Path mail
    Return-Path: [EMAIL PROTECTED]
    Date: Tue, 9 Dec 2003 22:36:33 -0500

    Hoi

James transforms this into something like

    Content-Type: text/plain;
     charset="iso-8859-1"
    Content-Transfer-Encoding: quoted-printable
    content-class: urn:content-classes:message
    Subject:
    Date: Thu, 15 Jan 2004 12:02:16 +0100

    [EMAIL PROTECTED]
    Received: from vallum.intra.izecom.com ([192.168.0.1])
              by uffizi.intra.izecom.com (JAMES SMTP Server 2.1.3) with SMTP
    ID 302
              for <[EMAIL PROTECTED]>;
              Thu, 15 Jan 2004 12:02:19 +0100 (CET)
    From: "Brinkers" <[EMAIL PROTECTED]>
    To: <[EMAIL PROTECTED]>
    Subject: Test Mail
    Date: Tue, 9 Dec 2003 22:36:33 -0500

    Hoi

It seems that new headers are created and the original headers start with after a 
blank line, causing them to be interpreted as a message body.

In Outlook, this is displayed as a message without Subject or From field, where the 
message body starts with the '[EMAIL PROTECTED]' followed by the original headers.

Now putting the Return-Path twice in your headers is probably not a good idea, but we 
do happen to have some emails that have that in our test set and would like to process 
them in a reasonable way.


So we investigated the James source code trying to find the cause for this unexpected 
behavior.

In org.apache.james.smtpserver.SMTPHandler in the method
processMailHeaders() we found the following call to retrieve the Return-Path header.

        // Determine the Return-Path
        String returnPath =
headers.getHeader(RFC2822Headers.RETURN_PATH,
"\r\n");

This roughly means "Give me all Return-Path headers separated by line breaks.". Later 
on, this returnPath String is put on top of all headers.
We deduced that if there is more than one Return-Path header, this will result in 
something like

    Return-Path: [EMAIL PROTECTED]
    [EMAIL PROTECTED]
    From: "Brinkers" <[EMAIL PROTECTED]>
    To: <[EMAIL PROTECTED]>
    Subject: Return-Path mail
    Date: Tue, 9 Dec 2003 22:36:33 -0500

    Hoi

where that the second line ('[EMAIL PROTECTED]') is interpreted as the start of the 
message body later on, causing new headers to be invented and the old headers to 
dispappear on the message body.

We changed the call to get the getHeader() in processMailHeaders() to pass a null 
argument:

        // Determine the Return-Path
        String returnPath =
headers.getHeader(RFC2822Headers.RETURN_PATH, null);

which roughly means "Give only one Return-Path header".

After recompiling and deploying James, our test mails passed James correctly.

We would appreciate it if this fix, or a similar one, could be included in the next 
James release. 

Thank you

    Hes Siemelink
    Izecom BV



---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to