mirror of
https://github.com/pgpainless/pgpainless.git
synced 2024-11-16 01:12:05 +01:00
DetachedVerifyImpl: Export signature mode in Verification result
This commit is contained in:
parent
05968533a5
commit
2ec176e938
3 changed files with 20 additions and 5 deletions
|
@ -90,7 +90,7 @@ public class InlineDetachCmdTest extends CLITest {
|
||||||
pipeStringToStdin(msgOut.toString());
|
pipeStringToStdin(msgOut.toString());
|
||||||
ByteArrayOutputStream verifyOut = pipeStdoutToStream();
|
ByteArrayOutputStream verifyOut = pipeStdoutToStream();
|
||||||
assertSuccess(executeCommand("verify", sigFile.getAbsolutePath(), certFile.getAbsolutePath()));
|
assertSuccess(executeCommand("verify", sigFile.getAbsolutePath(), certFile.getAbsolutePath()));
|
||||||
assertEquals("2021-05-15T16:08:06Z 4F665C4DC2C4660BC6425E415736E6931ACF370C 4F665C4DC2C4660BC6425E415736E6931ACF370C\n",
|
assertEquals("2021-05-15T16:08:06Z 4F665C4DC2C4660BC6425E415736E6931ACF370C 4F665C4DC2C4660BC6425E415736E6931ACF370C mode:text\n",
|
||||||
verifyOut.toString());
|
verifyOut.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -115,7 +115,7 @@ public class InlineDetachCmdTest extends CLITest {
|
||||||
ByteArrayOutputStream verifyOut = pipeStdoutToStream();
|
ByteArrayOutputStream verifyOut = pipeStdoutToStream();
|
||||||
File certFile = writeFile("cert.asc", CERT);
|
File certFile = writeFile("cert.asc", CERT);
|
||||||
assertSuccess(executeCommand("verify", sigFile.getAbsolutePath(), certFile.getAbsolutePath()));
|
assertSuccess(executeCommand("verify", sigFile.getAbsolutePath(), certFile.getAbsolutePath()));
|
||||||
assertEquals("2021-05-15T16:08:06Z 4F665C4DC2C4660BC6425E415736E6931ACF370C 4F665C4DC2C4660BC6425E415736E6931ACF370C\n",
|
assertEquals("2021-05-15T16:08:06Z 4F665C4DC2C4660BC6425E415736E6931ACF370C 4F665C4DC2C4660BC6425E415736E6931ACF370C mode:text\n",
|
||||||
verifyOut.toString());
|
verifyOut.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ public class RoundTripSignVerifyCmdTest extends CLITest {
|
||||||
"=VWAZ\n" +
|
"=VWAZ\n" +
|
||||||
"-----END PGP SIGNATURE-----";
|
"-----END PGP SIGNATURE-----";
|
||||||
private static final String BINARY_SIG_VERIFICATION =
|
private static final String BINARY_SIG_VERIFICATION =
|
||||||
"2022-11-09T18:40:24Z 444C10AB011EF8424C83F0A9DA9F413986211DC6 9DA09423C9F94BA4CCA30951099B11BF296A373E\n";
|
"2022-11-09T18:40:24Z 444C10AB011EF8424C83F0A9DA9F413986211DC6 9DA09423C9F94BA4CCA30951099B11BF296A373E mode:binary\n";
|
||||||
private static final String TEXT_SIG = "-----BEGIN PGP SIGNATURE-----\n" +
|
private static final String TEXT_SIG = "-----BEGIN PGP SIGNATURE-----\n" +
|
||||||
"Version: PGPainless\n" +
|
"Version: PGPainless\n" +
|
||||||
"\n" +
|
"\n" +
|
||||||
|
@ -104,7 +104,7 @@ public class RoundTripSignVerifyCmdTest extends CLITest {
|
||||||
"=s5xn\n" +
|
"=s5xn\n" +
|
||||||
"-----END PGP SIGNATURE-----";
|
"-----END PGP SIGNATURE-----";
|
||||||
private static final String TEXT_SIG_VERIFICATION =
|
private static final String TEXT_SIG_VERIFICATION =
|
||||||
"2022-11-09T18:41:18Z 444C10AB011EF8424C83F0A9DA9F413986211DC6 9DA09423C9F94BA4CCA30951099B11BF296A373E\n";
|
"2022-11-09T18:41:18Z 444C10AB011EF8424C83F0A9DA9F413986211DC6 9DA09423C9F94BA4CCA30951099B11BF296A373E mode:text\n";
|
||||||
private static final Date TEXT_SIG_CREATION = UTCUtil.parseUTCDate("2022-11-09T18:41:18Z");
|
private static final Date TEXT_SIG_CREATION = UTCUtil.parseUTCDate("2022-11-09T18:41:18Z");
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -12,6 +12,7 @@ import java.util.List;
|
||||||
|
|
||||||
import org.bouncycastle.openpgp.PGPException;
|
import org.bouncycastle.openpgp.PGPException;
|
||||||
import org.bouncycastle.openpgp.PGPPublicKeyRingCollection;
|
import org.bouncycastle.openpgp.PGPPublicKeyRingCollection;
|
||||||
|
import org.bouncycastle.openpgp.PGPSignature;
|
||||||
import org.bouncycastle.util.io.Streams;
|
import org.bouncycastle.util.io.Streams;
|
||||||
import org.pgpainless.PGPainless;
|
import org.pgpainless.PGPainless;
|
||||||
import org.pgpainless.decryption_verification.ConsumerOptions;
|
import org.pgpainless.decryption_verification.ConsumerOptions;
|
||||||
|
@ -20,6 +21,7 @@ import org.pgpainless.decryption_verification.MessageMetadata;
|
||||||
import org.pgpainless.decryption_verification.SignatureVerification;
|
import org.pgpainless.decryption_verification.SignatureVerification;
|
||||||
import org.pgpainless.exception.MalformedOpenPgpMessageException;
|
import org.pgpainless.exception.MalformedOpenPgpMessageException;
|
||||||
import sop.Verification;
|
import sop.Verification;
|
||||||
|
import sop.enums.SignatureMode;
|
||||||
import sop.exception.SOPGPException;
|
import sop.exception.SOPGPException;
|
||||||
import sop.operation.DetachedVerify;
|
import sop.operation.DetachedVerify;
|
||||||
|
|
||||||
|
@ -94,6 +96,19 @@ public class DetachedVerifyImpl implements DetachedVerify {
|
||||||
private Verification map(SignatureVerification sigVerification) {
|
private Verification map(SignatureVerification sigVerification) {
|
||||||
return new Verification(sigVerification.getSignature().getCreationTime(),
|
return new Verification(sigVerification.getSignature().getCreationTime(),
|
||||||
sigVerification.getSigningKey().getSubkeyFingerprint().toString(),
|
sigVerification.getSigningKey().getSubkeyFingerprint().toString(),
|
||||||
sigVerification.getSigningKey().getPrimaryKeyFingerprint().toString());
|
sigVerification.getSigningKey().getPrimaryKeyFingerprint().toString(),
|
||||||
|
getMode(sigVerification.getSignature()),
|
||||||
|
null);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static SignatureMode getMode(PGPSignature signature) {
|
||||||
|
if (signature.getSignatureType() == PGPSignature.BINARY_DOCUMENT) {
|
||||||
|
return SignatureMode.binary;
|
||||||
|
}
|
||||||
|
if (signature.getSignatureType() == PGPSignature.CANONICAL_TEXT_DOCUMENT) {
|
||||||
|
return SignatureMode.text;
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue