From 4b6bc5a956dc3268ca9f50e0171f10894fd6428f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Tue, 10 Mar 2015 11:34:44 +0100 Subject: API 7 --- .../org/openintents/openpgp/util/OpenPgpApi.java | 45 +++++++++++++++++++++- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java b/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java index dbfb797..907a058 100644 --- a/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java +++ b/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java @@ -57,8 +57,15 @@ public class OpenPgpApi { * - New extra for ACTION_DETACHED_SIGN: EXTRA_DETACHED_SIGNATURE * - New result for ACTION_DECRYPT_VERIFY: RESULT_DETACHED_SIGNATURE * - New result for ACTION_DECRYPT_VERIFY: RESULT_CHARSET + * 7: + * - Deprecation of ACCOUNT_NAME, please use ACTION_GET_SIGN_KEY_ID to get key id + * - Introduce EXTRA_SIGN_KEY_ID + * - New extra for ACTION_ENCRYPT and ACTION_SIGN_AND_ENCRYPT: EXTRA_ENABLE_COMPRESSION (default to true) + * - Return PendingIntent to view key for signatures + * - New result for ACTION_DECRYPT_VERIFY: RESULT_TYPE + * - New ACTION_GET_SIGN_KEY_ID */ - public static final int API_VERSION = 6; + public static final int API_VERSION = 7; /** * General extras @@ -90,6 +97,9 @@ public class OpenPgpApi { * - end cleartext with newline * - remove whitespaces on line endings *

+ * required extras: + * long EXTRA_SIGN_KEY_ID (key id of signing key) + *

* optional extras: * String EXTRA_PASSPHRASE (key passphrase) */ @@ -100,6 +110,9 @@ public class OpenPgpApi { * No OutputStream necessary for ACTION_DETACHED_SIGN (No magic pre-processing like in ACTION_CLEARTEXT_SIGN)! * The detached signature is returned separately in RESULT_DETACHED_SIGNATURE. *

+ * required extras: + * long EXTRA_SIGN_KEY_ID (key id of signing key) + *

* optional extras: * boolean EXTRA_REQUEST_ASCII_ARMOR (request ascii armor for detached signature) * String EXTRA_PASSPHRASE (key passphrase) @@ -121,6 +134,7 @@ public class OpenPgpApi { * boolean EXTRA_REQUEST_ASCII_ARMOR (request ascii armor for output) * String EXTRA_PASSPHRASE (key passphrase) * String EXTRA_ORIGINAL_FILENAME (original filename to be encrypted as metadata) + * boolean EXTRA_ENABLE_COMPRESSION (enable ZLIB compression, default ist true) */ public static final String ACTION_ENCRYPT = "org.openintents.openpgp.action.ENCRYPT"; @@ -133,9 +147,11 @@ public class OpenPgpApi { * long[] EXTRA_KEY_IDS *

* optional extras: + * long EXTRA_SIGN_KEY_ID (key id of signing key) * boolean EXTRA_REQUEST_ASCII_ARMOR (request ascii armor for output) * String EXTRA_PASSPHRASE (key passphrase) * String EXTRA_ORIGINAL_FILENAME (original filename to be encrypted as metadata) + * boolean EXTRA_ENABLE_COMPRESSION (enable ZLIB compression, default ist true) */ public static final String ACTION_SIGN_AND_ENCRYPT = "org.openintents.openpgp.action.SIGN_AND_ENCRYPT"; @@ -146,6 +162,8 @@ public class OpenPgpApi { *

* If OpenPgpSignatureResult.getStatus() == OpenPgpSignatureResult.SIGNATURE_KEY_MISSING * in addition a PendingIntent is returned via RESULT_INTENT to download missing keys. + * On all other status, in addition a PendingIntent is returned via RESULT_INTENT to open + * the key view in OpenKeychain. *

* optional extras: * byte[] EXTRA_DETACHED_SIGNATURE (detached signature) @@ -154,6 +172,7 @@ public class OpenPgpApi { * OpenPgpSignatureResult RESULT_SIGNATURE * OpenPgpDecryptMetadata RESULT_METADATA * String RESULT_CHARSET (charset which was specified in the headers of ascii armored input, if any) + * int RESULT_TYPE */ public static final String ACTION_DECRYPT_VERIFY = "org.openintents.openpgp.action.DECRYPT_VERIFY"; @@ -168,6 +187,17 @@ public class OpenPgpApi { */ public static final String ACTION_DECRYPT_METADATA = "org.openintents.openpgp.action.DECRYPT_METADATA"; + /** + * Select key id for signing + *

+ * optional extras: + * String EXTRA_USER_ID + *

+ * returned extras: + * long EXTRA_SIGN_KEY_ID + */ + public static final String ACTION_GET_SIGN_KEY_ID = "org.openintents.openpgp.action.GET_SIGN_KEY_ID"; + /** * Get key ids based on given user ids (=emails) *

@@ -191,9 +221,11 @@ public class OpenPgpApi { */ public static final String ACTION_GET_KEY = "org.openintents.openpgp.action.GET_KEY"; + /* Intent extras */ public static final String EXTRA_API_VERSION = "api_version"; + // DEPRECATED!!! public static final String EXTRA_ACCOUNT_NAME = "account_name"; // ACTION_DETACHED_SIGN, ENCRYPT, SIGN_AND_ENCRYPT, DECRYPT_VERIFY @@ -207,15 +239,20 @@ public class OpenPgpApi { // ENCRYPT, SIGN_AND_ENCRYPT public static final String EXTRA_USER_IDS = "user_ids"; public static final String EXTRA_KEY_IDS = "key_ids"; + public static final String EXTRA_SIGN_KEY_ID = "sign_key_id"; // optional extras: public static final String EXTRA_PASSPHRASE = "passphrase"; public static final String EXTRA_ORIGINAL_FILENAME = "original_filename"; + public static final String EXTRA_ENABLE_COMPRESSION = "enable_compression"; // internal NFC states public static final String EXTRA_NFC_SIGNED_HASH = "nfc_signed_hash"; public static final String EXTRA_NFC_SIG_CREATION_TIMESTAMP = "nfc_sig_creation_timestamp"; public static final String EXTRA_NFC_DECRYPTED_SESSION_KEY = "nfc_decrypted_session_key"; + // GET_SIGN_KEY_ID + public static final String EXTRA_USER_ID = "user_id"; + // GET_KEY public static final String EXTRA_KEY_ID = "key_id"; public static final String RESULT_KEY_IDS = "key_ids"; @@ -236,12 +273,16 @@ public class OpenPgpApi { // DECRYPT_VERIFY public static final String EXTRA_DETACHED_SIGNATURE = "detached_signature"; - public static final String RESULT_SIGNATURE = "signature"; public static final String RESULT_METADATA = "metadata"; // This will be the charset which was specified in the headers of ascii armored input, if any public static final String RESULT_CHARSET = "charset"; + public static final String RESULT_TYPE = "type"; + public static final int RESULT_TYPE_UNENCRYPTED_UNSIGNED = 0; + public static final int RESULT_TYPE_ENCRYPTED = 8; + public static final int RESULT_TYPE_SIGNED = 16; + IOpenPgpService mService; Context mContext; -- cgit v1.2.3