message: treat pcks7::smt::Unknown as encrypted

GMime isn't more specific, so let's assume it's encrypted; better than
nothing.

Fixes #2784.
This commit is contained in:
Dirk-Jan C. Binnema
2024-11-10 11:07:15 +02:00
parent 9d960d092f
commit fa59040ebc

View File

@ -492,11 +492,15 @@ maybe_handle_pkcs7(const MimeObject& obj, Message::Private& info)
#pragma GCC diagnostic push #pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wswitch-enum" #pragma GCC diagnostic ignored "-Wswitch-enum"
// CompressedData, CertsOnly, Unknown // CompressedData, CertsOnly, Unknown
switch (smime.smime_type()) { const auto smtype{smime.smime_type()};
switch (smtype) {
case Mu::MimeApplicationPkcs7Mime::SecureMimeType::SignedData: case Mu::MimeApplicationPkcs7Mime::SecureMimeType::SignedData:
info.flags |= Flags::Signed; info.flags |= Flags::Signed;
break; break;
case Mu::MimeApplicationPkcs7Mime::SecureMimeType::EnvelopedData: 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; info.flags |= Flags::Encrypted;
break; break;
default: default: