diff options
author | Vincent Breitmoser <valodim@mugenguild.com> | 2014-12-30 00:44:12 +0100 |
---|---|---|
committer | Vincent Breitmoser <valodim@mugenguild.com> | 2014-12-30 00:44:12 +0100 |
commit | c7b0b650c1467f7f0d7d8d62798c458597be0225 (patch) | |
tree | 0c7a8218ce00489b1c9cb5430769188525b56194 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java | |
parent | 576e6fd0cca41691a52db8e1325508f00a6e9bc6 (diff) | |
download | open-keychain-c7b0b650c1467f7f0d7d8d62798c458597be0225.tar.gz open-keychain-c7b0b650c1467f7f0d7d8d62798c458597be0225.tar.bz2 open-keychain-c7b0b650c1467f7f0d7d8d62798c458597be0225.zip |
introduce handling of notation direct key signatures, and experimental pin notation packet
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java index 93afb987a..132a28604 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/pgp/WrappedSignature.java @@ -21,6 +21,7 @@ package org.sufficientlysecure.keychain.pgp; import org.spongycastle.bcpg.SignatureSubpacket; import org.spongycastle.bcpg.SignatureSubpacketTags; import org.spongycastle.bcpg.sig.Exportable; +import org.spongycastle.bcpg.sig.NotationData; import org.spongycastle.bcpg.sig.Revocable; import org.spongycastle.bcpg.sig.RevocationReason; import org.spongycastle.openpgp.PGPException; @@ -37,6 +38,7 @@ import java.io.IOException; import java.security.SignatureException; import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; /** OpenKeychain wrapper around PGPSignature objects. * @@ -239,4 +241,20 @@ public class WrappedSignature { SignatureSubpacket p = mSig.getHashedSubPackets().getSubpacket(SignatureSubpacketTags.EXPORTABLE); return ! ((Exportable) p).isExportable(); } + + public HashMap<String,byte[]> getNotation() { + HashMap<String,byte[]> result = new HashMap<String,byte[]>(); + + // If there is any notation data + if (mSig.getHashedSubPackets() != null + && mSig.getHashedSubPackets().hasSubpacket(SignatureSubpacketTags.NOTATION_DATA)) { + // Iterate over notation data + for (NotationData data : mSig.getHashedSubPackets().getNotationDataOccurrences()) { + result.put(data.getNotationName(), data.getNotationValueBytes()); + } + } + + return result; + } + } |