summaryrefslogtreecommitdiffstats
path: root/framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp')
-rw-r--r--framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp b/framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp
index fe744c38..f65aa938 100644
--- a/framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp
+++ b/framework/src/domain/mime/mimetreeparser/applicationpkcs7mime.cpp
@@ -52,15 +52,11 @@ MessagePart::Ptr ApplicationPkcs7MimeBodyPartFormatter::process(Interface::BodyP
52 return MessagePart::Ptr(); 52 return MessagePart::Ptr();
53 } 53 }
54 54
55 const auto smimeCrypto = QGpgME::smime();
56 if (!smimeCrypto) {
57 return MessagePart::Ptr();
58 }
59 55
60 const QString smimeType = node->contentType()->parameter(QStringLiteral("smime-type")).toLower(); 56 const QString smimeType = node->contentType()->parameter(QStringLiteral("smime-type")).toLower();
61 57
62 if (smimeType == QLatin1String("certs-only")) { 58 if (smimeType == QLatin1String("certs-only")) {
63 return CertMessagePart::Ptr(new CertMessagePart(part.objectTreeParser(), node, smimeCrypto)); 59 return CertMessagePart::Ptr(new CertMessagePart(part.objectTreeParser(), node, GpgME::CMS));
64 } 60 }
65 61
66 bool isSigned = (smimeType == QLatin1String("signed-data")); 62 bool isSigned = (smimeType == QLatin1String("signed-data"));
@@ -83,7 +79,7 @@ MessagePart::Ptr ApplicationPkcs7MimeBodyPartFormatter::process(Interface::BodyP
83 } 79 }
84 80
85 auto _mp = EncryptedMessagePart::Ptr(new EncryptedMessagePart(part.objectTreeParser(), 81 auto _mp = EncryptedMessagePart::Ptr(new EncryptedMessagePart(part.objectTreeParser(),
86 node->decodedText(), smimeCrypto, 82 node->decodedText(), GpgME::CMS,
87 part.nodeHelper()->fromAsString(node), node)); 83 part.nodeHelper()->fromAsString(node), node));
88 mp = _mp; 84 mp = _mp;
89 _mp->setIsEncrypted(true); 85 _mp->setIsEncrypted(true);
@@ -129,11 +125,8 @@ MessagePart::Ptr ApplicationPkcs7MimeBodyPartFormatter::process(Interface::BodyP
129 const QTextCodec *aCodec(part.objectTreeParser()->codecFor(signTestNode)); 125 const QTextCodec *aCodec(part.objectTreeParser()->codecFor(signTestNode));
130 const QByteArray signaturetext = signTestNode->decodedContent(); 126 const QByteArray signaturetext = signTestNode->decodedContent();
131 auto mp = SignedMessagePart::Ptr(new SignedMessagePart(part.objectTreeParser(), 127 auto mp = SignedMessagePart::Ptr(new SignedMessagePart(part.objectTreeParser(),
132 aCodec->toUnicode(signaturetext), smimeCrypto, 128 aCodec->toUnicode(signaturetext), GpgME::CMS,
133 part.nodeHelper()->fromAsString(node), signTestNode, signTestNode)); 129 part.nodeHelper()->fromAsString(node), signTestNode, signTestNode));
134 if (!smimeCrypto) {
135 mp->partMetaData()->auditLogError = GpgME::Error(GPG_ERR_NOT_IMPLEMENTED);
136 }
137 } 130 }
138 return mp; 131 return mp;
139} 132}