Bug 190563

Summary: Broken header parsing
Product: Red Hat Enterprise Linux 4 Reporter: Bastien Nocera <bnocera>
Component: evolutionAssignee: Matthew Barnes <mbarnes>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0CC: joseph, tao
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-09-01 09:58:43 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 176344    
Attachments:
Description Flags
multipart-mime-email-message.txt none

Description Bastien Nocera 2006-05-03 16:21:32 UTC
evolution-2.0.2-27

Using the attached message, headers are not parsed properly.

In header_decode_param_list() in camel/camel-mime-utils.c (HEAD
evolution-data-server, or RHEL4 evolution) tries to parse:

Content-Type: multipart/related; type=text/html;
boundary="_----------=_1144416812592800"

as being of type:
text/html; boundary="_----------=_1144416812592800"

instead of stopping at the ';', so the boundary never gets set.

The result is that the message looks like a text e-mail and no HTML.

Comment 1 Bastien Nocera 2006-05-03 16:21:33 UTC
Created attachment 128541 [details]
multipart-mime-email-message.txt

Comment 3 RHEL Program Management 2006-08-18 16:02:23 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 5 Matthew Barnes 2006-09-01 03:48:36 UTC
devel_ack -- I'll have a look at this.

Comment 6 ritz 2006-09-01 09:58:11 UTC
	
Evolution (bugzilla.gnome.org) 	
<bugzilla-daemon.org> to me
	 More options	  Aug 20
Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=351955
 Evolution | Mailer | Ver: 2.7.x


Andre Klapper changed:

          What    |Removed                     |Added
----------------------------------------------------------------------------
                CC|                            |---
            Status|UNCONFIRMED                 |RESOLVED
        Resolution|                            |NOTABUG




------- Comment #4 from Andre Klapper  2006-08-20 12:07 UTC -------
The content type header has to have *one* value.
it is either text/html for a text only message, like
       Content-Type: text/html
or multi-part/related with a boundary definition for a message containing
attachments, like
       Content-Type: multipart/related; boundary="----=_part_2_2729.1112"

       Content-Type: multipart/related; type=text/html;
is just plain wrong, the sender may file a bug against his broken mail
application ("MIME::Lite 2.117"), but this is not evolution's fault.

Comment 9 norman joseph 2008-04-10 17:33:52 UTC
The vendor from the original call directed me to RFC 2387, "The MIME
Multipart/Related Content-type", where it describes the syntax of the
Content-Type header as:

3.4.  Syntax

     related-param   := [ ";" "start" "=" cid ]
                        [ ";" "start-info"  "="
                           ( cid-list / value ) ]
                        [ ";" "type"  "=" type "/" subtype ]
                        ; order independent

     cid-list        := cid cid-list

     cid             := msg-id     ; c.f. [822]

     value           := token / quoted-string    ; c.f. [MIME]
                           ; value cannot begin with "<"

   Note that the parameter values will usually require quoting.  Msg-id
   contains the special characters "<", ">", "@", and perhaps other
   special characters.  If msg-id contains quoted-strings, those quote
   marks must be escaped.  Similarly, the type parameter contains the
   special character "/".

and where they give further examples showing the "type=..." option:

   The example below, uses a single data block.

     Content-Type: Multipart/Related; boundary=example-1
             start="<950120.aaCC>";
             type="Application/X-FixedRecord"
             start-info="-o ps"

So I believe Andre is wrong stating "Content-Type: multipart/related;
type=text/html;
is just plain wrong".  If Thunderbird can handle this header correctly (not to
mention Lotus Notes and MS Outlook" why can't Evolution?