diff options
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java index ab88d1b4b..3d41c928b 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/OpenPgpSignatureResultBuilder.java @@ -19,6 +19,7 @@ package org.sufficientlysecure.keychain.pgp; import org.openintents.openpgp.OpenPgpSignatureResult; import org.sufficientlysecure.keychain.Constants; +import org.sufficientlysecure.keychain.pgp.exception.PgpGeneralException; import org.sufficientlysecure.keychain.util.Log; import java.util.ArrayList; @@ -86,6 +87,27 @@ public class OpenPgpSignatureResultBuilder { return mValidSignature; } + public void initValid(CanonicalizedPublicKeyRing signingRing, + CanonicalizedPublicKey signingKey) { + setSignatureAvailable(true); + setKnownKey(true); + + // from RING + setKeyId(signingRing.getMasterKeyId()); + try { + setPrimaryUserId(signingRing.getPrimaryUserIdWithFallback()); + } catch (PgpGeneralException e) { + Log.d(Constants.TAG, "No primary user id in keyring with master key id " + signingRing.getMasterKeyId()); + } + setSignatureKeyCertified(signingRing.getVerified() > 0); + Log.d(Constants.TAG, "signingRing.getUnorderedUserIds(): " + signingRing.getUnorderedUserIds()); + setUserIds(signingRing.getUnorderedUserIds()); + + // from KEY + setKeyExpired(signingKey.isExpired()); + setKeyRevoked(signingKey.isRevoked()); + } + public OpenPgpSignatureResult build() { if (mSignatureAvailable) { OpenPgpSignatureResult result = new OpenPgpSignatureResult(); |