From bc4678a3514fcf1f590dafb8717043f9127a221a Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Fri, 5 Mar 2010 12:38:19 -0700 Subject: [PATCH] No need to send Content-Transfer-Encoding header if it is 7bit --- framework/Mime/lib/Horde/Mime/Part.php | 10 ++++++++-- framework/Mime/package.xml | 4 +++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/framework/Mime/lib/Horde/Mime/Part.php b/framework/Mime/lib/Horde/Mime/Part.php index ad312777a..8e0ccfceb 100644 --- a/framework/Mime/lib/Horde/Mime/Part.php +++ b/framework/Mime/lib/Horde/Mime/Part.php @@ -931,8 +931,14 @@ class Horde_Mime_Part $headers->replaceHeader('Content-Disposition', $disposition, array('params' => (!empty($name) ? array('filename' => $name) : array()))); } - /* Add transfer encoding information. */ - $headers->replaceHeader('Content-Transfer-Encoding', $this->_getTransferEncoding(empty($options['encode']) ? null : $options['encode'])); + /* Add transfer encoding information. RFC 2045 [6.1] indicates that + * default is 7bit. No need to send the header in this case. */ + $encoding = $this->_getTransferEncoding(empty($options['encode']) ? null : $options['encode']); + if ($encoding == '7bit') { + $headers->removeHeader('Content-Transfer-Encoding'); + } else { + $headers->replaceHeader('Content-Transfer-Encoding', $encoding); + } /* Add content ID information. */ if (!is_null($this->_contentid)) { diff --git a/framework/Mime/package.xml b/framework/Mime/package.xml index 261a579bf..a2c7c69f9 100644 --- a/framework/Mime/package.xml +++ b/framework/Mime/package.xml @@ -31,7 +31,9 @@ http://pear.php.net/dtd/package-2.0.xsd"> alpha LGPL - * Default disposition should be empty by default, not inline (RFC 2183 [2]). + + * No need to generate Content-Transfer-Encoding header if part data is 7bit. + * Default disposition should be empty by default, not inline (RFC 2183 [2]). * Request #8556: Allow specifying a header charset for a part. * Add 'raw' render view to Horde_Mime_Viewer. * Horde_Mime_Part::parseMessage() correctly parses non-MIME parts. -- 2.11.0