From 151e0232c08c7c76aacfdf45faf99d5eb025e0ae Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Thu, 10 Apr 2025 12:29:37 +0200 Subject: [PATCH] Add comments --- .../src/main/kotlin/org/pgpainless/sop/MergeCertsImpl.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pgpainless-sop/src/main/kotlin/org/pgpainless/sop/MergeCertsImpl.kt b/pgpainless-sop/src/main/kotlin/org/pgpainless/sop/MergeCertsImpl.kt index 346fee84..3f8a7731 100644 --- a/pgpainless-sop/src/main/kotlin/org/pgpainless/sop/MergeCertsImpl.kt +++ b/pgpainless-sop/src/main/kotlin/org/pgpainless/sop/MergeCertsImpl.kt @@ -24,8 +24,10 @@ class MergeCertsImpl(private val api: PGPainless) : MergeCerts { override fun baseCertificates(certs: InputStream): Ready { return object : Ready() { override fun writeTo(outputStream: OutputStream) { - val certList = api.readKey().parseCertificates(certs) - for (cert in certList) { + val baseCertsList = api.readKey().parseCertificates(certs) + + // Index and merge base certs + for (cert in baseCertsList) { if (!baseCerts.contains(cert.keyIdentifier)) { baseCerts[cert.keyIdentifier] = cert } else { @@ -34,8 +36,10 @@ class MergeCertsImpl(private val api: PGPainless) : MergeCerts { } } + // Merge updates with base certs for (update in updateCerts) { if (baseCerts[update.keyIdentifier] == null) { + // skip updates with missing base certs continue } @@ -49,6 +53,7 @@ class MergeCertsImpl(private val api: PGPainless) : MergeCerts { outputStream } + // emit merged and updated base certs for (merged in baseCerts.values) { out.write(merged.getEncoded(PacketFormat.CURRENT)) }