Skip to content

Commit daff23b

Browse files
committed
PGPObjectFactory: Catch IllegalArgumentException for illegal PKESK/SKESK/SEIPD/OED
packet combinations and rethrow as MalformedPacketException
1 parent 0237f75 commit daff23b

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

pg/src/main/java/org/bouncycastle/openpgp/PGPObjectFactory.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import java.util.NoSuchElementException;
1010

1111
import org.bouncycastle.bcpg.BCPGInputStream;
12+
import org.bouncycastle.bcpg.MalformedPacketException;
1213
import org.bouncycastle.bcpg.PacketTags;
1314
import org.bouncycastle.bcpg.TrustPacket;
1415
import org.bouncycastle.bcpg.UnknownPacket;
@@ -148,7 +149,14 @@ public Object nextObject()
148149
case PacketTags.SYMMETRIC_KEY_ENC:
149150
case PacketTags.SYM_ENC_INTEGRITY_PRO:
150151
case PacketTags.AEAD_ENC_DATA:
151-
return new PGPEncryptedDataList(in);
152+
try
153+
{
154+
return new PGPEncryptedDataList(in);
155+
}
156+
catch (IllegalArgumentException e)
157+
{
158+
throw new MalformedPacketException("Malformed encrypted data.", e);
159+
}
152160
case PacketTags.ONE_PASS_SIGNATURE:
153161
l = new ArrayList();
154162

0 commit comments

Comments
 (0)