#6171 closed defect (fixed)
[Patch] ''Content-Transfer-Encoding'' header not allowed in the main mime container
Reported by: | Thomas Moschny | Owned by: | Robert Corsaro |
---|---|---|---|
Priority: | normal | Component: | AnnouncerPlugin |
Severity: | normal | Keywords: | |
Cc: | Thomas Moschny | Trac Release: | 0.11 |
Description
(At least the) ticket notification mails sent by the plugin contain in the main header the fields:
Content-Type: multipart/related; charset="utf-8"; boundary="..."
Content-Transfer-Encoding: base64
According to RFC 1521 (5. The Content-Transfer-Encoding Header Field) that is invalid (and may confuse certain email clients, hence the ticket):
"Certain Content-Transfer-Encoding values may only be used on certain Content-Types. In particular, it is expressly forbidden to use any encodings other than "7bit", "8bit", or "binary" with any Content- Type that recursively includes other Content-Type fields, notably the "multipart" and "message" Content-Types. All encodings that are desired for bodies of type multipart or message must be done at the innermost level, by encoding the actual body that needs to be encoded."
To fix the problem, the "Content-Transfer-Encoding:" field could simply be removed from the main header of the messages. This is valid and the standard value "7bit" will be assumed.
Attachments (0)
Change History (5)
comment:1 Changed 15 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:2 Changed 14 years ago by
Resolution: | fixed |
---|---|
Status: | closed → reopened |
In 1.0_a1 (r8410) the problem is there again.
comment:3 Changed 14 years ago by
Cc: | Thomas Moschny added; anonymous removed |
---|---|
Summary: | ''Content-Transfer-Encoding'' header not allowed in the main mime container → [Patch] ''Content-Transfer-Encoding'' header not allowed in the main mime container |
Here's the trivial patch:
-
announcerplugin/distributors/email_distributor.py
diff --git a/announcerplugin/distributors/email_distributor.py b/announcerplugin/distributors/email_distributor.py index 6df30a6..d322e94 100644
a b class EmailDistributor(Component): 313 313 else: 314 314 alternate_output = None 315 315 rootMessage = MIMEMultipart("related") 316 rootMessage.set_charset(self._charset)317 316 proj_name = self.env.project_name 318 317 trac_version = get_pkginfo(trac.core).get('version', trac.__version__) 319 318 announcer_version = get_pkginfo(announcerplugin).get('version',
comment:4 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
(In [7137]) Remove Content-Transfer-Encoding from main mime container fixes #6171