From 3fe78ab12a05a2474b4e4aaba60aef5e4bd56b18 Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Mon, 7 Mar 2022 14:56:56 +0100 Subject: [PATCH] Fix NPE when validating broken signature --- .../signature/subpackets/SignatureSubpacketsUtil.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pgpainless-core/src/main/java/org/pgpainless/signature/subpackets/SignatureSubpacketsUtil.java b/pgpainless-core/src/main/java/org/pgpainless/signature/subpackets/SignatureSubpacketsUtil.java index 396311c6..17add09a 100644 --- a/pgpainless-core/src/main/java/org/pgpainless/signature/subpackets/SignatureSubpacketsUtil.java +++ b/pgpainless-core/src/main/java/org/pgpainless/signature/subpackets/SignatureSubpacketsUtil.java @@ -575,6 +575,10 @@ public final class SignatureSubpacketsUtil { * @return last occurrence of the subpacket in the vector */ public static

P getSignatureSubpacket(PGPSignatureSubpacketVector vector, SignatureSubpacket type) { + if (vector == null) { + // Almost never happens, but may be caused by broken signatures. + return null; + } org.bouncycastle.bcpg.SignatureSubpacket[] allPackets = vector.getSubpackets(type.getCode()); if (allPackets.length == 0) { return null;