Do EOL conversions on streams if possible
authorMichael M Slusarz <slusarz@curecanti.org>
Thu, 2 Jul 2009 18:44:53 +0000 (12:44 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Thu, 2 Jul 2009 18:46:36 +0000 (12:46 -0600)
imp/lib/Mime/Viewer/Pgp.php
imp/lib/Mime/Viewer/Smime.php

index 4258e2d..986c722 100644 (file)
@@ -345,11 +345,11 @@ class IMP_Horde_Mime_Viewer_Pgp extends Horde_Mime_Viewer_Driver
                  * 'plain' driver when parsing PGP armor text. */
                 switch ($sig_part->getType()) {
                 case 'application/x-imp-pgp-signature':
-                    $sig_result = $this->_imppgp->verifySignature($GLOBALS['imp_imap']->ob->utils->removeBareNewlines($sig_part->getContents()), $this->_address);
+                    $sig_result = $this->_imppgp->verifySignature($sig_part->getContents(array('canonical' => true)), $this->_address);
                     break;
 
                 default:
-                    $sig_result = $this->_imppgp->verifySignature($GLOBALS['imp_imap']->ob->utils->removeBareNewlines($this->_params['contents']->getBodyPart($signed_id, array('mimeheaders' => true))), $this->_address, $sig_part->getContents());
+                    $sig_result = $this->_imppgp->verifySignature($sig_part->replaceEOL($this->_params['contents']->getBodyPart($signed_id, array('mimeheaders' => true, 'stream' => true)), Horde_Mime_Part::RFC_EOL), $this->_address, $sig_part->getContents());
                     break;
                 }
 
index b1007fb..1a642ef 100644 (file)
@@ -152,7 +152,7 @@ class IMP_Horde_Mime_Viewer_Smime extends Horde_Mime_Viewer_Driver
             return null;
         }
 
-        $raw_text = $GLOBALS['imp_imap']->ob->utils->removeBareNewlines($this->_params['contents']->getBodyPart($this->_mimepart->getMimeId(), array('mimeheaders' => true)));
+        $raw_text = $this->_mimepart->replaceEOL($this->_params['contents']->getBodyPart($this->_mimepart->getMimeId(), array('mimeheaders' => true, 'stream' => true)), Horde_Mime_Part::RFC_EOL);
 
         try {
             $decrypted_data = $this->_impsmime->decryptMessage($raw_text);
@@ -175,7 +175,7 @@ class IMP_Horde_Mime_Viewer_Smime extends Horde_Mime_Viewer_Driver
             return array();
         }
 
-        $raw_text = $GLOBALS['imp_imap']->ob->utils->removeBareNewlines($this->_params['contents']->getBodyPart($this->_mimepart->getMimeId(), array('mimeheaders' => true)));
+        $raw_text = $this->_mimepart->replaceEOL($this->_params['contents']->getBodyPart($this->_mimepart->getMimeId(), array('mimeheaders' => true, 'stream' => true)), Horde_Mime_Part::RFC_EOL);
 
         try {
             $sig_result = $this->_impsmime->verifySignature($raw_text);
@@ -237,10 +237,10 @@ class IMP_Horde_Mime_Viewer_Smime extends Horde_Mime_Viewer_Driver
             return $ret;
         }
 
-        $raw_text = $base_id
-            ? $this->_params['contents']->getBodyPart($base_id, array('mimeheaders' => true))
-            : $this->_params['contents']->fullMessageText();
-        $raw_text = $GLOBALS['imp_imap']->ob->utils->removeBareNewlines($raw_text);
+        $stream = $base_id
+            ? $this->_params['contents']->getBodyPart($base_id, array('mimeheaders' => true, 'stream' => true))
+            : $this->_params['contents']->fullMessageText(array('stream' => true));
+        $raw_text = $this->_mimepart->replaceEOL($stream, Horde_Mime_Part::RFC_EOL);
 
         $sig_result = null;