Skip to content

Commit cafe4e3

Browse files
committed
PGPObjectFactory: Catch IllegalArgumentException for illegal PKESK/SKESK/SEIPD/OED
packet combinations and rethrow as MalformedPacketException
1 parent 0692caa commit cafe4e3

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.UnknownPacket;
1415
import org.bouncycastle.bcpg.UnsupportedPacketVersionException;
@@ -146,7 +147,14 @@ public Object nextObject()
146147
case PacketTags.SYMMETRIC_KEY_ENC:
147148
case PacketTags.SYM_ENC_INTEGRITY_PRO:
148149
case PacketTags.AEAD_ENC_DATA:
149-
return new PGPEncryptedDataList(in);
150+
try
151+
{
152+
return new PGPEncryptedDataList(in);
153+
}
154+
catch (IllegalArgumentException e)
155+
{
156+
throw new MalformedPacketException("Malformed encrypted data.", e);
157+
}
150158
case PacketTags.ONE_PASS_SIGNATURE:
151159
l = new ArrayList();
152160

0 commit comments

Comments
 (0)