[kmail2] [Bug 439904] Unable to decrypt PGP message sent via ProtonMail

Richard Weinberger bugzilla_noreply at kde.org
Thu Jul 15 23:23:43 BST 2021


https://bugs.kde.org/show_bug.cgi?id=439904

--- Comment #2 from Richard Weinberger <richard-bugs at nod.at> ---
With this massiv hack I managed kmail to decrypt such messages:

diff --git a/mimetreeparser/src/bodyformatter/multipartmixed.cpp
b/mimetreeparser/src/bodyformatter/multipartmixed.cpp
index 00b90e121cf5..226909cef8d9 100644
--- a/mimetreeparser/src/bodyformatter/multipartmixed.cpp
+++ b/mimetreeparser/src/bodyformatter/multipartmixed.cpp
@@ -21,6 +21,9 @@

 #include "objecttreeparser.h"
 #include "messagepart.h"
+#include "utils.h"
+
+#include "bodyformatter/multipartencrypted.h"

 #include <KMime/Content>

@@ -44,6 +47,14 @@ MessagePart::Ptr
MultiPartMixedBodyPartFormatter::process(Interface::BodyPart &p
         return MessagePart::Ptr();
     }

+    // if the container contains a PGP part, assume it is some PGP mail and
re-inject
+    // it into the MultiPartEncryptedBodyPartFormatter.
+    if (findTypeInDirectChilds(part.content(), "application/pgp-encrypted")) {
+        const auto formatter = MultiPartEncryptedBodyPartFormatter::create();
+        qCWarning(MIMETREEPARSER_LOG) << "Found a application/pgp-encrypted
child";
+        return formatter->process(part);
+    }
+
     // normal treatment of the parts in the mp/mixed container
     MimeMessagePart::Ptr mp(new MimeMessagePart(part.objectTreeParser(),
part.content()->contents().at(0), false));
     return mp;

I had also to disable the ApplicationGnuPGWKSPlugin plugin from kdepim-addons.
ApplicationGnuPGWKSPlugin completely voids MultiPartMixedBodyPartFormatter. But
that's a different issue, I guess.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Kdepim-bugs mailing list