summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2015-03-31 19:42:46 +0200
committerAleksander Machniak <alec@alec.pl>2015-03-31 19:42:46 +0200
commit04598bdfb11198c6bd3d1d70616341815c346b45 (patch)
tree4faf375525471dfc4d37886d0e04aa9475f7dbd0
parenta99c34159d03f2b5b525d6d8cc38509c4ac2f0a1 (diff)
Enigma: Handle signed content inside of encrypted message
-rw-r--r--plugins/enigma/README1
-rw-r--r--plugins/enigma/lib/enigma_engine.php5
2 files changed, 5 insertions, 1 deletions
diff --git a/plugins/enigma/README b/plugins/enigma/README
index 7aadbd0f6..25a160780 100644
--- a/plugins/enigma/README
+++ b/plugins/enigma/README
@@ -15,7 +15,6 @@ Plugin Status:
TODO (must have):
- Fix issues with enabled messages_cache
-- PGP: Handling of signed inside encrypted message
- Make working with gnupg-2.x
- Keys export to file
- Disable Reply/Forward options when viewing encrypted messages
diff --git a/plugins/enigma/lib/enigma_engine.php b/plugins/enigma/lib/enigma_engine.php
index 9b929947b..fd2594454 100644
--- a/plugins/enigma/lib/enigma_engine.php
+++ b/plugins/enigma/lib/enigma_engine.php
@@ -585,6 +585,11 @@ class enigma_engine
$part->body_modified = true;
$part->encrypted = true;
+ // PGP signed inside? verify signature
+ if (preg_match('/^-----BEGIN PGP SIGNED MESSAGE-----/', $body)) {
+ $this->parse_plain_signed($p, $body);
+ }
+
// Encrypted plain message may contain encrypted attachments
// in such case attachments have .pgp extension and application/octet-stream.
// This is what happens when you select "Encrypt each attachment separately