summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDirk-Jan C. Binnema <djcb@djcbsoftware.nl>2024-11-10 11:07:15 +0200
committerDirk-Jan C. Binnema <djcb@djcbsoftware.nl>2024-11-10 11:07:15 +0200
commitfa59040ebc565a9c6a54da8a20f2e24eaac02bca (patch)
treee5df69e7b44c534cb800d9d2c8d149b8fe056380
parent9d960d092f204decb78833ecea50fe19f47589ec (diff)
message: treat pcks7::smt::Unknown as encrypted
GMime isn't more specific, so let's assume it's encrypted; better than nothing. Fixes #2784.
-rw-r--r--lib/message/mu-message.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/message/mu-message.cc b/lib/message/mu-message.cc
index 111eef9..ee59298 100644
--- a/lib/message/mu-message.cc
+++ b/lib/message/mu-message.cc
@@ -492,11 +492,15 @@ maybe_handle_pkcs7(const MimeObject& obj, Message::Private& info)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wswitch-enum"
// CompressedData, CertsOnly, Unknown
- switch (smime.smime_type()) {
+ const auto smtype{smime.smime_type()};
+ switch (smtype) {
case Mu::MimeApplicationPkcs7Mime::SecureMimeType::SignedData:
info.flags |= Flags::Signed;
break;
case Mu::MimeApplicationPkcs7Mime::SecureMimeType::EnvelopedData:
+ case Mu::MimeApplicationPkcs7Mime::SecureMimeType::Unknown:
+ /* The "Unknown" case... GMIME doesn't give us anything
+ * more specific, so assume it's encrypted for now */
info.flags |= Flags::Encrypted;
break;
default: