From 4d6f1dc6bc39cbddee91ae22c1e04b495260696e Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 7 Jan 2025 18:11:04 +0100 Subject: [PATCH] Fixed S/MIME cast error --- app/src/main/java/eu/faircode/email/FragmentMessages.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 1bc635280d..e12382d57e 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -167,7 +167,7 @@ import org.bouncycastle.cms.CMSProcessable; import org.bouncycastle.cms.CMSProcessableFile; import org.bouncycastle.cms.CMSSignedData; import org.bouncycastle.cms.CMSTypedData; -import org.bouncycastle.cms.KeyTransRecipientId; +import org.bouncycastle.cms.PKIXRecipientId; import org.bouncycastle.cms.RecipientInformation; import org.bouncycastle.cms.SignerId; import org.bouncycastle.cms.SignerInformation; @@ -10347,7 +10347,8 @@ public class FragmentMessages extends FragmentBase if (count < 0) { BigInteger serialno = chain[0].getSerialNumber(); for (RecipientInformation recipientInfo : recipients) { - KeyTransRecipientId recipientId = (KeyTransRecipientId) recipientInfo.getRID(); + // KeyTransRecipientId or KeyAgreeRecipientId + PKIXRecipientId recipientId = (PKIXRecipientId) recipientInfo.getRID(); if (serialno != null && serialno.equals(recipientId.getSerialNumber())) { try { InputStream is = recipientInfo.getContentStream(recipient).getContentStream();