From 4deaf6c09abd0522d0af1d981597d0e38dc6a12a Mon Sep 17 00:00:00 2001 From: Hadi Nategh Date: Thu, 20 Jul 2017 18:54:09 +0200 Subject: [PATCH] W.I.P. SMIME: - Add missing parts from commit 0499f5094345ca0dbbfba112300ac9579057e4f5 --- api/src/Mail.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/api/src/Mail.php b/api/src/Mail.php index b00e971c27..811aab2f32 100644 --- a/api/src/Mail.php +++ b/api/src/Mail.php @@ -7342,12 +7342,16 @@ class Mail 'mimeType' => $_mime_part->getType() ), $_params); + $metadata = array ( + 'mimeType' => $params['mimeType'] + ); $this->smime = new Mail\Smime; $message = $this->getMessageRawBody($params['uid'], null, $params['mailbox']); if (!Mail\Smime::isSmimeSignatureOnly($params['mimeType'])) { $message = $this->_decryptSmimeBody($message, $params['passphrase'] !='' ? $params['passphrase'] : Api\Cache::getSession('mail', 'smime_passphrase')); + $metadata['encrypted'] = true; } try { @@ -7363,19 +7367,18 @@ class Mail if ($cert) // signed message, it might be encrypted too { $message_parts = $this->smime->extractSignedContents($message); - $metadata = array ( + $metadata = array_merge ($metadata, array ( 'verify' => $cert->verify, 'cert' => $cert->cert, 'msg' => $cert->msg, 'certHtml' => $this->smime->certToHTML($cert->cert), 'signed' => true, - ); + )); } else // only encrypted message { $message_parts = Horde_Mime_Part::parseMessage($message, array('forcemime' => true)); } - $metadata['mimeType'] = $params['mimeType']; $message_parts->setMetadata('X-EGroupware-Smime', $metadata); return $message_parts; }