Skip to content

Commit 9cd5f98

Browse files
author
gefeili
committed
Add Util.encodePGPSignatures
1 parent 33a678b commit 9cd5f98

File tree

3 files changed

+17
-25
lines changed

3 files changed

+17
-25
lines changed

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

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -737,10 +737,7 @@ public void encode(OutputStream outStream, boolean forTransfer)
737737

738738
if (subSigs == null) // not a sub-key
739739
{
740-
for (int i = 0; i != keySigs.size(); i++)
741-
{
742-
((PGPSignature)keySigs.get(i)).encode(out);
743-
}
740+
Util.encodePGPSignatures(out, keySigs, false);
744741

745742
for (int i = 0; i != ids.size(); i++)
746743
{
@@ -763,18 +760,12 @@ public void encode(OutputStream outStream, boolean forTransfer)
763760
}
764761

765762
List<PGPSignature> sigs = (List<PGPSignature>)idSigs.get(i);
766-
for (int j = 0; j != sigs.size(); j++)
767-
{
768-
((PGPSignature)sigs.get(j)).encode(out, forTransfer);
769-
}
763+
Util.encodePGPSignatures(out, sigs, forTransfer);
770764
}
771765
}
772766
else
773767
{
774-
for (int j = 0; j != subSigs.size(); j++)
775-
{
776-
((PGPSignature)subSigs.get(j)).encode(out, forTransfer);
777-
}
768+
Util.encodePGPSignatures(out, subSigs, forTransfer);
778769
}
779770
}
780771

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

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -752,10 +752,7 @@ public void encode(OutputStream outStream)
752752

753753
if (pub.subSigs == null) // is not a sub key
754754
{
755-
for (int i = 0; i != pub.keySigs.size(); i++)
756-
{
757-
((PGPSignature)pub.keySigs.get(i)).encode(out);
758-
}
755+
Util.encodePGPSignatures(out, pub.keySigs, false);
759756

760757
for (int i = 0; i != pub.ids.size(); i++)
761758
{
@@ -778,19 +775,12 @@ public void encode(OutputStream outStream)
778775
}
779776

780777
List<PGPSignature> sigs = (List<PGPSignature>)pub.idSigs.get(i);
781-
782-
for (int j = 0; j != sigs.size(); j++)
783-
{
784-
((PGPSignature)sigs.get(j)).encode(out);
785-
}
778+
Util.encodePGPSignatures(out, sigs, false);
786779
}
787780
}
788781
else
789782
{
790-
for (int j = 0; j != pub.subSigs.size(); j++)
791-
{
792-
((PGPSignature)pub.subSigs.get(j)).encode(out);
793-
}
783+
Util.encodePGPSignatures(out, pub.subSigs, false);
794784
}
795785
}
796786

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

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import java.io.IOException;
44
import java.io.InputStream;
5+
import java.io.OutputStream;
6+
import java.util.List;
57

68
import org.bouncycastle.bcpg.BCPGInputStream;
79

@@ -32,4 +34,13 @@ static BCPGInputStream createBCPGInputStream(InputStream pgIn, int tag1, int tag
3234

3335
throw new IOException("unexpected tag " + bcIn.nextPacketTag() + " encountered");
3436
}
37+
38+
static void encodePGPSignatures(OutputStream stream, List<PGPSignature> sigs, boolean forTransfer)
39+
throws IOException
40+
{
41+
for (int i = 0; i != sigs.size(); i++)
42+
{
43+
((PGPSignature)sigs.get(i)).encode(stream, forTransfer);
44+
}
45+
}
3546
}

0 commit comments

Comments
 (0)