From 29f6b2b743d16eef03addbb7653f5f8af83460fb Mon Sep 17 00:00:00 2001 From: the-djmaze <> Date: Tue, 23 Jan 2024 10:38:54 +0100 Subject: [PATCH] Move Autocrypt parsing to JavaScript --- dev/Model/Message.js | 11 +++++++++-- .../v/0.0.0/app/libraries/MailSo/Mail/Message.php | 15 +-------------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/dev/Model/Message.js b/dev/Model/Message.js index fd407b3f2..0c886cbe5 100644 --- a/dev/Model/Message.js +++ b/dev/Model/Message.js @@ -74,7 +74,7 @@ export class MessageModel extends AbstractModel { this.messageId = ''; this.inReplyTo = ''; this.references = ''; - this.autocrypt = {}; + this.autocrypt = {/*addr:'', 'prefer-encrypt':'nopreference', keydata:'BASE64'*/}; addObservablesTo(this, { subject: '', @@ -277,8 +277,15 @@ export class MessageModel extends AbstractModel { if (value = headers.valueByName('X-Virus-Scanned')) { this.virusScanned(value); } -*/ + // https://autocrypt.org/level1.html#the-autocrypt-header + if (value = headers.valueByName('Autocrypt')) { + value.split(';').forEach(entry => { + entry = entry.trim().split('=', 2); + json.autocrypt[entry[0]] = entry[1]; + }); + } +*/ return true; } } diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/Message.php b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/Message.php index b80ac0e5e..1e0907e17 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/Message.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/Message.php @@ -42,9 +42,7 @@ class Message implements \JsonSerializable /** * https://www.rfc-editor.org/rfc/rfc8970 */ - $sPreview = null, - // https://autocrypt.org/level1.html#the-autocrypt-header - $sAutocrypt = ''; + $sPreview = null; private int $Uid = 0, @@ -291,8 +289,6 @@ class Message implements \JsonSerializable } } } - - $oMessage->sAutocrypt = $oHeaders->ValueByName(MimeHeader::AUTOCRYPT); } else if ($oFetchResponse->GetEnvelope()) { @@ -466,14 +462,6 @@ class Message implements \JsonSerializable $this->aFlagsLowerCase ), true); */ - $aAutocrypt = []; - if ($this->sAutocrypt) { - foreach (\explode(';', $this->sAutocrypt) as $entry) { - $entry = \explode('=', \trim($entry), 2); - $aAutocrypt[$entry[0]] = $entry[1]; - } - } - $result = array( '@Object' => 'Object/Message', 'folder' => $this->sFolder, @@ -498,7 +486,6 @@ class Message implements \JsonSerializable 'deliveredTo' => $this->oDeliveredTo, 'readReceipt' => $this->ReadReceipt, - 'autocrypt' => $aAutocrypt ?: null, 'attachments' => $this->Attachments,