diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/CloudSearch.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/CloudSearch.java index 9db568c23..da2ea9a96 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/CloudSearch.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/CloudSearch.java @@ -63,11 +63,11 @@ public class CloudSearch { } // wait for either all the searches to come back, or 10 seconds. If using proxy, wait 30 seconds. - synchronized(results) { + synchronized (results) { try { if (proxy != null) { results.wait(30 * SECONDS); - } else{ + } else { results.wait(10 * SECONDS); } } catch (InterruptedException e) { @@ -75,7 +75,7 @@ public class CloudSearch { } if (results.outstandingSuppliers() > 0) { - String message = "Launched " + servers.size() + " cloud searchers, but " + + String message = "Launched " + servers.size() + " cloud searchers, but " + results.outstandingSuppliers() + " failed to complete."; problems.add(new Keyserver.QueryFailedException(message)); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/HkpKeyserver.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/HkpKeyserver.java index 76bdde3c7..2b38674ad 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/HkpKeyserver.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/HkpKeyserver.java @@ -18,20 +18,23 @@ package org.sufficientlysecure.keychain.keyimport; -import com.squareup.okhttp.*; -import okio.BufferedSink; +import com.squareup.okhttp.MediaType; +import com.squareup.okhttp.OkHttpClient; +import com.squareup.okhttp.Request; +import com.squareup.okhttp.RequestBody; +import com.squareup.okhttp.Response; import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.pgp.PgpHelper; import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils; import org.sufficientlysecure.keychain.util.Log; import org.sufficientlysecure.keychain.util.TlsHelper; -import java.io.BufferedWriter; import java.io.IOException; -import java.io.OutputStream; -import java.io.OutputStreamWriter; import java.io.UnsupportedEncodingException; -import java.net.*; +import java.net.Proxy; +import java.net.URL; +import java.net.URLDecoder; +import java.net.URLEncoder; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; @@ -197,7 +200,7 @@ public class HkpKeyserver extends Keyserver { * @param proxy * @return */ - public static OkHttpClient getClient(URL url, Proxy proxy) throws IOException { + public static OkHttpClient getClient(URL url, Proxy proxy) throws IOException { OkHttpClient client = new OkHttpClient(); try { @@ -222,8 +225,6 @@ public class HkpKeyserver extends Keyserver { OkHttpClient client = getClient(url, proxy); Response response = client.newCall(new Request.Builder().url(url).build()).execute(); - tempIpTest(proxy); - String responseBody = response.body().string();// contains body both in case of success or failure if (response.isSuccessful()) { @@ -237,12 +238,6 @@ public class HkpKeyserver extends Keyserver { } } - private void tempIpTest(Proxy proxy) throws IOException { - URL url = new URL("https://wtfismyip.com/text"); - Response response = getClient(url, proxy).newCall(new Request.Builder().url(url).build()).execute(); - Log.e("PHILIP", "proxy Test: " + response.body().string()); - } - /** * Results are sorted by creation date of key! * @@ -388,8 +383,6 @@ public class HkpKeyserver extends Keyserver { RequestBody body = RequestBody.create(MediaType.parse("application/x-www-form-urlencoded"), params); - Log.e("PHILIP", "Media Type charset: "+body.contentType().charset()); - Request request = new Request.Builder() .url(url) .addHeader("Content-Type", "application/x-www-form-urlencoded") @@ -397,12 +390,11 @@ public class HkpKeyserver extends Keyserver { .post(body) .build(); - Response response = getClient(url, proxy).newCall(request).execute(); + Response response = getClient(url, proxy).newCall(request).execute(); Log.d(Constants.TAG, "response code: " + response.code()); Log.d(Constants.TAG, "answer: " + response.body().string()); - tempIpTest(proxy); } catch (IOException e) { Log.e(Constants.TAG, "IOException", e); throw new AddKeyException(); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/Keyserver.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/Keyserver.java index 260e2af40..640b39f44 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/Keyserver.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/keyimport/Keyserver.java @@ -32,6 +32,7 @@ public abstract class Keyserver { public CloudSearchFailureException(String message) { super(message); } + public CloudSearchFailureException() { super(); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/CertifyOperation.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/CertifyOperation.java index eacb73818..c061f864d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/CertifyOperation.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/CertifyOperation.java @@ -19,12 +19,9 @@ package org.sufficientlysecure.keychain.operations; import android.content.Context; -import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.keyimport.HkpKeyserver; -import org.sufficientlysecure.keychain.keyimport.Keyserver.AddKeyException; import org.sufficientlysecure.keychain.operations.results.CertifyResult; import org.sufficientlysecure.keychain.operations.results.ExportResult; -import org.sufficientlysecure.keychain.operations.results.OperationResult; import org.sufficientlysecure.keychain.operations.results.OperationResult.LogType; import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog; import org.sufficientlysecure.keychain.operations.results.SaveKeyringResult; @@ -45,26 +42,25 @@ import org.sufficientlysecure.keychain.service.input.CryptoInputParcel; import org.sufficientlysecure.keychain.service.input.RequiredInputParcel; import org.sufficientlysecure.keychain.service.input.RequiredInputParcel.NfcSignOperationsBuilder; import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils; -import org.sufficientlysecure.keychain.util.Log; import org.sufficientlysecure.keychain.util.ParcelableProxy; import org.sufficientlysecure.keychain.util.Passphrase; -import java.net.Proxy; import java.util.ArrayList; import java.util.concurrent.atomic.AtomicBoolean; -/** An operation which implements a high level user id certification operation. - * +/** + * An operation which implements a high level user id certification operation. + *

* This operation takes a specific CertifyActionsParcel as its input. These * contain a masterKeyId to be used for certification, and a list of * masterKeyIds and related user ids to certify. * * @see CertifyActionsParcel - * */ public class CertifyOperation extends BaseOperation { - public CertifyOperation(Context context, ProviderHelper providerHelper, Progressable progressable, AtomicBoolean cancelled) { + public CertifyOperation(Context context, ProviderHelper providerHelper, Progressable progressable, AtomicBoolean + cancelled) { super(context, providerHelper, progressable, cancelled); } @@ -175,7 +171,7 @@ public class CertifyOperation extends BaseOperation { } - if ( ! allRequiredInput.isEmpty()) { + if (!allRequiredInput.isEmpty()) { log.add(LogType.MSG_CRT_NFC_RETURN, 1); return new CertifyResult(log, allRequiredInput.build()); } @@ -202,7 +198,8 @@ public class CertifyOperation extends BaseOperation { // Check if we were cancelled if (checkCancelled()) { log.add(LogType.MSG_OPERATION_CANCELLED, 0); - return new CertifyResult(CertifyResult.RESULT_CANCELLED, log, certifyOk, certifyError, uploadOk, uploadError); + return new CertifyResult(CertifyResult.RESULT_CANCELLED, log, certifyOk, certifyError, uploadOk, + uploadError); } log.add(LogType.MSG_CRT_SAVE, 2, @@ -243,7 +240,8 @@ public class CertifyOperation extends BaseOperation { log.add(LogType.MSG_CRT_SUCCESS, 0); if (uploadError != 0) { - return new CertifyResult(CertifyResult.RESULT_WARNINGS, log, certifyOk, certifyError, uploadOk, uploadError); + return new CertifyResult(CertifyResult.RESULT_WARNINGS, log, certifyOk, certifyError, uploadOk, + uploadError); } else { return new CertifyResult(CertifyResult.RESULT_OK, log, certifyOk, certifyError, uploadOk, uploadError); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/ImportExportOperation.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/ImportExportOperation.java index 79057aa8e..6234c0c9c 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/ImportExportOperation.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/ImportExportOperation.java @@ -30,9 +30,12 @@ import org.sufficientlysecure.keychain.keyimport.KeybaseKeyserver; import org.sufficientlysecure.keychain.keyimport.Keyserver; import org.sufficientlysecure.keychain.keyimport.Keyserver.AddKeyException; import org.sufficientlysecure.keychain.keyimport.ParcelableKeyRing; -import org.sufficientlysecure.keychain.operations.results.*; +import org.sufficientlysecure.keychain.operations.results.ConsolidateResult; +import org.sufficientlysecure.keychain.operations.results.ExportResult; +import org.sufficientlysecure.keychain.operations.results.ImportKeyResult; import org.sufficientlysecure.keychain.operations.results.OperationResult.LogType; import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog; +import org.sufficientlysecure.keychain.operations.results.SaveKeyringResult; import org.sufficientlysecure.keychain.pgp.CanonicalizedKeyRing; import org.sufficientlysecure.keychain.pgp.CanonicalizedPublicKeyRing; import org.sufficientlysecure.keychain.pgp.Progressable; @@ -61,12 +64,13 @@ import java.util.Iterator; import java.util.List; import java.util.concurrent.atomic.AtomicBoolean; -/** An operation class which implements high level import and export +/** + * An operation class which implements high level import and export * operations. - * + *

* This class receives a source and/or destination of keys as input and performs * all steps for this import or export. - * + *

* For the import operation, the only valid source is an Iterator of * ParcelableKeyRing, each of which must contain either a single * keyring encoded as bytes, or a unique reference to a keyring @@ -76,13 +80,13 @@ import java.util.concurrent.atomic.AtomicBoolean; * not include self certificates for user ids in the secret keyring. The import * method here will generally import keyrings in the order given by the * iterator. so this should be ensured beforehand. - * @see org.sufficientlysecure.keychain.ui.adapter.ImportKeysAdapter#getSelectedEntries() * + * @see org.sufficientlysecure.keychain.ui.adapter.ImportKeysAdapter#getSelectedEntries() + *

* For the export operation, the input consists of a set of key ids and * either the name of a file or an output uri to write to. - * + *

* TODO rework uploadKeyRingToServer - * */ public class ImportExportOperation extends BaseOperation { @@ -173,8 +177,8 @@ public class ImportExportOperation extends BaseOperation { * Since the introduction of multithreaded import, we expect calling functions to handle the key sync i,e * ContactSyncAdapterService.requestSync() * - * @param entries keys to import - * @param num number of keys to import + * @param entries keys to import + * @param num number of keys to import * @param keyServerUri contains uri of keyserver to import from, if it is an import from cloud * @return */ @@ -238,7 +242,8 @@ public class ImportExportOperation extends BaseOperation { byte[] data; // Download by fingerprint, or keyId - whichever is available if (entry.mExpectedFingerprint != null) { - log.add(LogType.MSG_IMPORT_FETCH_KEYSERVER, 2, "0x" + entry.mExpectedFingerprint.substring(24)); + log.add(LogType.MSG_IMPORT_FETCH_KEYSERVER, 2, "0x" + entry.mExpectedFingerprint + .substring(24)); data = keyServer.get("0x" + entry.mExpectedFingerprint, proxy).getBytes(); } else { log.add(LogType.MSG_IMPORT_FETCH_KEYSERVER, 2, entry.mKeyIdHex); @@ -316,10 +321,12 @@ public class ImportExportOperation extends BaseOperation { mProviderHelper.clearLog(); if (key.isSecret()) { result = mProviderHelper.saveSecretKeyRing(key, - new ProgressScaler(mProgressable, (int)(position*progSteps), (int)((position+1)*progSteps), 100)); + new ProgressScaler(mProgressable, (int) (position * progSteps), (int) ((position + 1) * + progSteps), 100)); } else { result = mProviderHelper.savePublicKeyRing(key, - new ProgressScaler(mProgressable, (int)(position*progSteps), (int)((position+1)*progSteps), 100)); + new ProgressScaler(mProgressable, (int) (position * progSteps), (int) ((position + 1) * + progSteps), 100)); } if (!result.success()) { badKeys += 1; @@ -390,7 +397,7 @@ public class ImportExportOperation extends BaseOperation { } // Final log entry, it's easier to do this individually - if ( (newKeys > 0 || updatedKeys > 0) && badKeys > 0) { + if ((newKeys > 0 || updatedKeys > 0) && badKeys > 0) { log.add(LogType.MSG_IMPORT_PARTIAL, 1); } else if (newKeys > 0 || updatedKeys > 0) { log.add(LogType.MSG_IMPORT_SUCCESS, 1); @@ -464,7 +471,7 @@ public class ImportExportOperation extends BaseOperation { } ExportResult exportKeyRings(OperationLog log, long[] masterKeyIds, boolean exportSecret, - OutputStream outStream) { + OutputStream outStream) { /* TODO isn't this checked above, with the isStorageMounted call? if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { @@ -473,7 +480,7 @@ public class ImportExportOperation extends BaseOperation { } */ - if ( ! BufferedOutputStream.class.isInstance(outStream)) { + if (!BufferedOutputStream.class.isInstance(outStream)) { outStream = new BufferedOutputStream(outStream); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/results/OperationResult.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/results/OperationResult.java index ccbeba73c..f07a0b8f2 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/results/OperationResult.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/results/OperationResult.java @@ -42,7 +42,7 @@ import java.util.List; /** * Represent the result of an operation. - * + *

* This class holds a result and the log of an operation. It can be subclassed * to include typed additional information specific to the operation. To keep * the class structure (somewhat) simple, this class contains an exhaustive @@ -58,15 +58,18 @@ public abstract class OperationResult implements Parcelable { * Android's Binder. See ParcelableCache */ private static ParcelableCache logCache; + static { logCache = new ParcelableCache<>(); } - /** Holds the overall result, the number specifying varying degrees of success: - * - The first bit is 0 on overall success, 1 on overall failure - * - The second bit indicates if the action was cancelled - may still be an error or success! - * - The third bit should be set if the operation succeeded with warnings - * All other bits may be used for more specific conditions. */ + /** + * Holds the overall result, the number specifying varying degrees of success: + * - The first bit is 0 on overall success, 1 on overall failure + * - The second bit indicates if the action was cancelled - may still be an error or success! + * - The third bit should be set if the operation succeeded with warnings + * All other bits may be used for more specific conditions. + */ final int mResult; public static final int RESULT_OK = 0; @@ -109,7 +112,9 @@ public abstract class OperationResult implements Parcelable { return mLog; } - /** One entry in the log. */ + /** + * One entry in the log. + */ public static class LogEntryParcel implements Parcelable { public final LogType mType; public final Object[] mParameters; @@ -240,151 +245,151 @@ public abstract class OperationResult implements Parcelable { } return Notify.create(activity, logText, Notify.LENGTH_LONG, style, - new ActionListener() { - @Override - public void onAction() { - Intent intent = new Intent( - activity, LogDisplayActivity.class); - intent.putExtra(LogDisplayFragment.EXTRA_RESULT, OperationResult.this); - activity.startActivity(intent); - } - }, R.string.view_log); + new ActionListener() { + @Override + public void onAction() { + Intent intent = new Intent( + activity, LogDisplayActivity.class); + intent.putExtra(LogDisplayFragment.EXTRA_RESULT, OperationResult.this); + activity.startActivity(intent); + } + }, R.string.view_log); } - /** This is an enum of all possible log events. - * + /** + * This is an enum of all possible log events. + *

* Element names should generally be prefixed with MSG_XX_ where XX is an * identifier based on the related activity. - * + *

* Log messages should occur for each distinguishable action group. For * each such group, one message is displayed followed by warnings or * errors, and optionally subactions. The granularity should generally be * optimistic: No "success" messages are printed except for the outermost * operations - the success of an action group is indicated by the * beginning message of the next action group. - * + *

* Log messages should be in present tense, There should be no trailing * punctuation, except for error messages which may end in an exclamation * mark. - * */ public static enum LogType { - MSG_INTERNAL_ERROR (LogLevel.ERROR, R.string.msg_internal_error), - MSG_OPERATION_CANCELLED (LogLevel.CANCELLED, R.string.msg_cancelled), + MSG_INTERNAL_ERROR(LogLevel.ERROR, R.string.msg_internal_error), + MSG_OPERATION_CANCELLED(LogLevel.CANCELLED, R.string.msg_cancelled), // import public MSG_IP(LogLevel.START, R.string.msg_ip), - MSG_IP_APPLY_BATCH (LogLevel.DEBUG, R.string.msg_ip_apply_batch), - MSG_IP_BAD_TYPE_SECRET (LogLevel.WARN, R.string.msg_ip_bad_type_secret), - MSG_IP_DELETE_OLD_FAIL (LogLevel.DEBUG, R.string.msg_ip_delete_old_fail), - MSG_IP_DELETE_OLD_OK (LogLevel.DEBUG, R.string.msg_ip_delete_old_ok), - MSG_IP_ENCODE_FAIL (LogLevel.DEBUG, R.string.msg_ip_encode_fail), - MSG_IP_ERROR_IO_EXC (LogLevel.ERROR, R.string.msg_ip_error_io_exc), - MSG_IP_ERROR_OP_EXC (LogLevel.ERROR, R.string.msg_ip_error_op_exc), - MSG_IP_ERROR_REMOTE_EX (LogLevel.ERROR, R.string.msg_ip_error_remote_ex), - MSG_IP_INSERT_KEYRING (LogLevel.DEBUG, R.string.msg_ip_insert_keyring), - MSG_IP_INSERT_SUBKEYS (LogLevel.DEBUG, R.string.msg_ip_insert_keys), - MSG_IP_PREPARE (LogLevel.DEBUG, R.string.msg_ip_prepare), - MSG_IP_REINSERT_SECRET (LogLevel.DEBUG, R.string.msg_ip_reinsert_secret), - MSG_IP_MASTER (LogLevel.DEBUG, R.string.msg_ip_master), - MSG_IP_MASTER_EXPIRED (LogLevel.DEBUG, R.string.msg_ip_master_expired), - MSG_IP_MASTER_EXPIRES (LogLevel.DEBUG, R.string.msg_ip_master_expires), - MSG_IP_MASTER_FLAGS_UNSPECIFIED (LogLevel.DEBUG, R.string.msg_ip_master_flags_unspecified), - MSG_IP_MASTER_FLAGS_CESA (LogLevel.DEBUG, R.string.msg_ip_master_flags_cesa), - MSG_IP_MASTER_FLAGS_CESX (LogLevel.DEBUG, R.string.msg_ip_master_flags_cesx), - MSG_IP_MASTER_FLAGS_CEXA (LogLevel.DEBUG, R.string.msg_ip_master_flags_cexa), - MSG_IP_MASTER_FLAGS_CEXX (LogLevel.DEBUG, R.string.msg_ip_master_flags_cexx), - MSG_IP_MASTER_FLAGS_CXSA (LogLevel.DEBUG, R.string.msg_ip_master_flags_cxsa), - MSG_IP_MASTER_FLAGS_CXSX (LogLevel.DEBUG, R.string.msg_ip_master_flags_cxsx), - MSG_IP_MASTER_FLAGS_CXXA (LogLevel.DEBUG, R.string.msg_ip_master_flags_cxxa), - MSG_IP_MASTER_FLAGS_CXXX (LogLevel.DEBUG, R.string.msg_ip_master_flags_cxxx), - MSG_IP_MASTER_FLAGS_XESA (LogLevel.DEBUG, R.string.msg_ip_master_flags_xesa), - MSG_IP_MASTER_FLAGS_XESX (LogLevel.DEBUG, R.string.msg_ip_master_flags_xesx), - MSG_IP_MASTER_FLAGS_XEXA (LogLevel.DEBUG, R.string.msg_ip_master_flags_xexa), - MSG_IP_MASTER_FLAGS_XEXX (LogLevel.DEBUG, R.string.msg_ip_master_flags_xexx), - MSG_IP_MASTER_FLAGS_XXSA (LogLevel.DEBUG, R.string.msg_ip_master_flags_xxsa), - MSG_IP_MASTER_FLAGS_XXSX (LogLevel.DEBUG, R.string.msg_ip_master_flags_xxsx), - MSG_IP_MASTER_FLAGS_XXXA (LogLevel.DEBUG, R.string.msg_ip_master_flags_xxxa), - MSG_IP_MASTER_FLAGS_XXXX (LogLevel.DEBUG, R.string.msg_ip_master_flags_xxxx), - MSG_IP_MERGE_PUBLIC (LogLevel.DEBUG, R.string.msg_ip_merge_public), - MSG_IP_MERGE_SECRET (LogLevel.DEBUG, R.string.msg_ip_merge_secret), - MSG_IP_SUBKEY (LogLevel.DEBUG, R.string.msg_ip_subkey), - MSG_IP_SUBKEY_EXPIRED (LogLevel.DEBUG, R.string.msg_ip_subkey_expired), - MSG_IP_SUBKEY_EXPIRES (LogLevel.DEBUG, R.string.msg_ip_subkey_expires), - MSG_IP_SUBKEY_FLAGS_UNSPECIFIED (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesa), - MSG_IP_SUBKEY_FLAGS_CESA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesa), - MSG_IP_SUBKEY_FLAGS_CESX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesx), - MSG_IP_SUBKEY_FLAGS_CEXA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cexa), - MSG_IP_SUBKEY_FLAGS_CEXX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cexx), - MSG_IP_SUBKEY_FLAGS_CXSA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxsa), - MSG_IP_SUBKEY_FLAGS_CXSX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxsx), - MSG_IP_SUBKEY_FLAGS_CXXA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxxa), - MSG_IP_SUBKEY_FLAGS_CXXX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxxx), - MSG_IP_SUBKEY_FLAGS_XESA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xesa), - MSG_IP_SUBKEY_FLAGS_XESX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xesx), - MSG_IP_SUBKEY_FLAGS_XEXA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xexa), - MSG_IP_SUBKEY_FLAGS_XEXX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xexx), - MSG_IP_SUBKEY_FLAGS_XXSA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxsa), - MSG_IP_SUBKEY_FLAGS_XXSX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxsx), - MSG_IP_SUBKEY_FLAGS_XXXA (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxxa), - MSG_IP_SUBKEY_FLAGS_XXXX (LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxxx), - MSG_IP_SUCCESS (LogLevel.OK, R.string.msg_ip_success), - MSG_IP_SUCCESS_IDENTICAL (LogLevel.OK, R.string.msg_ip_success_identical), - MSG_IP_UID_CERT_BAD (LogLevel.WARN, R.string.msg_ip_uid_cert_bad), - MSG_IP_UID_CERT_ERROR (LogLevel.WARN, R.string.msg_ip_uid_cert_error), - MSG_IP_UID_CERT_OLD (LogLevel.DEBUG, R.string.msg_ip_uid_cert_old), - MSG_IP_UID_CERT_NONREVOKE (LogLevel.DEBUG, R.string.msg_ip_uid_cert_nonrevoke), - MSG_IP_UID_CERT_NEW (LogLevel.DEBUG, R.string.msg_ip_uid_cert_new), - MSG_IP_UID_CERT_GOOD (LogLevel.DEBUG, R.string.msg_ip_uid_cert_good), - MSG_IP_UID_CERT_GOOD_REVOKE (LogLevel.DEBUG, R.string.msg_ip_uid_cert_good_revoke), - MSG_IP_UID_CERTS_UNKNOWN (LogLevel.DEBUG, R.plurals.msg_ip_uid_certs_unknown), - MSG_IP_UID_CLASSIFYING_ZERO (LogLevel.DEBUG, R.string.msg_ip_uid_classifying_zero), - MSG_IP_UID_CLASSIFYING (LogLevel.DEBUG, R.plurals.msg_ip_uid_classifying), + MSG_IP_APPLY_BATCH(LogLevel.DEBUG, R.string.msg_ip_apply_batch), + MSG_IP_BAD_TYPE_SECRET(LogLevel.WARN, R.string.msg_ip_bad_type_secret), + MSG_IP_DELETE_OLD_FAIL(LogLevel.DEBUG, R.string.msg_ip_delete_old_fail), + MSG_IP_DELETE_OLD_OK(LogLevel.DEBUG, R.string.msg_ip_delete_old_ok), + MSG_IP_ENCODE_FAIL(LogLevel.DEBUG, R.string.msg_ip_encode_fail), + MSG_IP_ERROR_IO_EXC(LogLevel.ERROR, R.string.msg_ip_error_io_exc), + MSG_IP_ERROR_OP_EXC(LogLevel.ERROR, R.string.msg_ip_error_op_exc), + MSG_IP_ERROR_REMOTE_EX(LogLevel.ERROR, R.string.msg_ip_error_remote_ex), + MSG_IP_INSERT_KEYRING(LogLevel.DEBUG, R.string.msg_ip_insert_keyring), + MSG_IP_INSERT_SUBKEYS(LogLevel.DEBUG, R.string.msg_ip_insert_keys), + MSG_IP_PREPARE(LogLevel.DEBUG, R.string.msg_ip_prepare), + MSG_IP_REINSERT_SECRET(LogLevel.DEBUG, R.string.msg_ip_reinsert_secret), + MSG_IP_MASTER(LogLevel.DEBUG, R.string.msg_ip_master), + MSG_IP_MASTER_EXPIRED(LogLevel.DEBUG, R.string.msg_ip_master_expired), + MSG_IP_MASTER_EXPIRES(LogLevel.DEBUG, R.string.msg_ip_master_expires), + MSG_IP_MASTER_FLAGS_UNSPECIFIED(LogLevel.DEBUG, R.string.msg_ip_master_flags_unspecified), + MSG_IP_MASTER_FLAGS_CESA(LogLevel.DEBUG, R.string.msg_ip_master_flags_cesa), + MSG_IP_MASTER_FLAGS_CESX(LogLevel.DEBUG, R.string.msg_ip_master_flags_cesx), + MSG_IP_MASTER_FLAGS_CEXA(LogLevel.DEBUG, R.string.msg_ip_master_flags_cexa), + MSG_IP_MASTER_FLAGS_CEXX(LogLevel.DEBUG, R.string.msg_ip_master_flags_cexx), + MSG_IP_MASTER_FLAGS_CXSA(LogLevel.DEBUG, R.string.msg_ip_master_flags_cxsa), + MSG_IP_MASTER_FLAGS_CXSX(LogLevel.DEBUG, R.string.msg_ip_master_flags_cxsx), + MSG_IP_MASTER_FLAGS_CXXA(LogLevel.DEBUG, R.string.msg_ip_master_flags_cxxa), + MSG_IP_MASTER_FLAGS_CXXX(LogLevel.DEBUG, R.string.msg_ip_master_flags_cxxx), + MSG_IP_MASTER_FLAGS_XESA(LogLevel.DEBUG, R.string.msg_ip_master_flags_xesa), + MSG_IP_MASTER_FLAGS_XESX(LogLevel.DEBUG, R.string.msg_ip_master_flags_xesx), + MSG_IP_MASTER_FLAGS_XEXA(LogLevel.DEBUG, R.string.msg_ip_master_flags_xexa), + MSG_IP_MASTER_FLAGS_XEXX(LogLevel.DEBUG, R.string.msg_ip_master_flags_xexx), + MSG_IP_MASTER_FLAGS_XXSA(LogLevel.DEBUG, R.string.msg_ip_master_flags_xxsa), + MSG_IP_MASTER_FLAGS_XXSX(LogLevel.DEBUG, R.string.msg_ip_master_flags_xxsx), + MSG_IP_MASTER_FLAGS_XXXA(LogLevel.DEBUG, R.string.msg_ip_master_flags_xxxa), + MSG_IP_MASTER_FLAGS_XXXX(LogLevel.DEBUG, R.string.msg_ip_master_flags_xxxx), + MSG_IP_MERGE_PUBLIC(LogLevel.DEBUG, R.string.msg_ip_merge_public), + MSG_IP_MERGE_SECRET(LogLevel.DEBUG, R.string.msg_ip_merge_secret), + MSG_IP_SUBKEY(LogLevel.DEBUG, R.string.msg_ip_subkey), + MSG_IP_SUBKEY_EXPIRED(LogLevel.DEBUG, R.string.msg_ip_subkey_expired), + MSG_IP_SUBKEY_EXPIRES(LogLevel.DEBUG, R.string.msg_ip_subkey_expires), + MSG_IP_SUBKEY_FLAGS_UNSPECIFIED(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesa), + MSG_IP_SUBKEY_FLAGS_CESA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesa), + MSG_IP_SUBKEY_FLAGS_CESX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cesx), + MSG_IP_SUBKEY_FLAGS_CEXA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cexa), + MSG_IP_SUBKEY_FLAGS_CEXX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cexx), + MSG_IP_SUBKEY_FLAGS_CXSA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxsa), + MSG_IP_SUBKEY_FLAGS_CXSX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxsx), + MSG_IP_SUBKEY_FLAGS_CXXA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxxa), + MSG_IP_SUBKEY_FLAGS_CXXX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_cxxx), + MSG_IP_SUBKEY_FLAGS_XESA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xesa), + MSG_IP_SUBKEY_FLAGS_XESX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xesx), + MSG_IP_SUBKEY_FLAGS_XEXA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xexa), + MSG_IP_SUBKEY_FLAGS_XEXX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xexx), + MSG_IP_SUBKEY_FLAGS_XXSA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxsa), + MSG_IP_SUBKEY_FLAGS_XXSX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxsx), + MSG_IP_SUBKEY_FLAGS_XXXA(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxxa), + MSG_IP_SUBKEY_FLAGS_XXXX(LogLevel.DEBUG, R.string.msg_ip_subkey_flags_xxxx), + MSG_IP_SUCCESS(LogLevel.OK, R.string.msg_ip_success), + MSG_IP_SUCCESS_IDENTICAL(LogLevel.OK, R.string.msg_ip_success_identical), + MSG_IP_UID_CERT_BAD(LogLevel.WARN, R.string.msg_ip_uid_cert_bad), + MSG_IP_UID_CERT_ERROR(LogLevel.WARN, R.string.msg_ip_uid_cert_error), + MSG_IP_UID_CERT_OLD(LogLevel.DEBUG, R.string.msg_ip_uid_cert_old), + MSG_IP_UID_CERT_NONREVOKE(LogLevel.DEBUG, R.string.msg_ip_uid_cert_nonrevoke), + MSG_IP_UID_CERT_NEW(LogLevel.DEBUG, R.string.msg_ip_uid_cert_new), + MSG_IP_UID_CERT_GOOD(LogLevel.DEBUG, R.string.msg_ip_uid_cert_good), + MSG_IP_UID_CERT_GOOD_REVOKE(LogLevel.DEBUG, R.string.msg_ip_uid_cert_good_revoke), + MSG_IP_UID_CERTS_UNKNOWN(LogLevel.DEBUG, R.plurals.msg_ip_uid_certs_unknown), + MSG_IP_UID_CLASSIFYING_ZERO(LogLevel.DEBUG, R.string.msg_ip_uid_classifying_zero), + MSG_IP_UID_CLASSIFYING(LogLevel.DEBUG, R.plurals.msg_ip_uid_classifying), MSG_IP_UID_REORDER(LogLevel.DEBUG, R.string.msg_ip_uid_reorder), - MSG_IP_UID_PROCESSING (LogLevel.DEBUG, R.string.msg_ip_uid_processing), - MSG_IP_UID_REVOKED (LogLevel.DEBUG, R.string.msg_ip_uid_revoked), - MSG_IP_UAT_CLASSIFYING (LogLevel.DEBUG, R.string.msg_ip_uat_classifying), - MSG_IP_UAT_PROCESSING_IMAGE (LogLevel.DEBUG, R.string.msg_ip_uat_processing_image), - MSG_IP_UAT_PROCESSING_UNKNOWN (LogLevel.DEBUG, R.string.msg_ip_uat_processing_unknown), - MSG_IP_UAT_REVOKED (LogLevel.DEBUG, R.string.msg_ip_uat_revoked), - MSG_IP_UAT_CERT_BAD (LogLevel.WARN, R.string.msg_ip_uat_cert_bad), - MSG_IP_UAT_CERT_OLD (LogLevel.DEBUG, R.string.msg_ip_uat_cert_old), - MSG_IP_UAT_CERT_NONREVOKE (LogLevel.DEBUG, R.string.msg_ip_uat_cert_nonrevoke), - MSG_IP_UAT_CERT_NEW (LogLevel.DEBUG, R.string.msg_ip_uat_cert_new), - MSG_IP_UAT_CERT_ERROR (LogLevel.WARN, R.string.msg_ip_uat_cert_error), - MSG_IP_UAT_CERTS_UNKNOWN (LogLevel.DEBUG, R.plurals.msg_ip_uat_certs_unknown), - MSG_IP_UAT_CERT_GOOD_REVOKE (LogLevel.DEBUG, R.string.msg_ip_uat_cert_good_revoke), - MSG_IP_UAT_CERT_GOOD (LogLevel.DEBUG, R.string.msg_ip_uat_cert_good), + MSG_IP_UID_PROCESSING(LogLevel.DEBUG, R.string.msg_ip_uid_processing), + MSG_IP_UID_REVOKED(LogLevel.DEBUG, R.string.msg_ip_uid_revoked), + MSG_IP_UAT_CLASSIFYING(LogLevel.DEBUG, R.string.msg_ip_uat_classifying), + MSG_IP_UAT_PROCESSING_IMAGE(LogLevel.DEBUG, R.string.msg_ip_uat_processing_image), + MSG_IP_UAT_PROCESSING_UNKNOWN(LogLevel.DEBUG, R.string.msg_ip_uat_processing_unknown), + MSG_IP_UAT_REVOKED(LogLevel.DEBUG, R.string.msg_ip_uat_revoked), + MSG_IP_UAT_CERT_BAD(LogLevel.WARN, R.string.msg_ip_uat_cert_bad), + MSG_IP_UAT_CERT_OLD(LogLevel.DEBUG, R.string.msg_ip_uat_cert_old), + MSG_IP_UAT_CERT_NONREVOKE(LogLevel.DEBUG, R.string.msg_ip_uat_cert_nonrevoke), + MSG_IP_UAT_CERT_NEW(LogLevel.DEBUG, R.string.msg_ip_uat_cert_new), + MSG_IP_UAT_CERT_ERROR(LogLevel.WARN, R.string.msg_ip_uat_cert_error), + MSG_IP_UAT_CERTS_UNKNOWN(LogLevel.DEBUG, R.plurals.msg_ip_uat_certs_unknown), + MSG_IP_UAT_CERT_GOOD_REVOKE(LogLevel.DEBUG, R.string.msg_ip_uat_cert_good_revoke), + MSG_IP_UAT_CERT_GOOD(LogLevel.DEBUG, R.string.msg_ip_uat_cert_good), // import secret MSG_IS(LogLevel.START, R.string.msg_is), - MSG_IS_BAD_TYPE_PUBLIC (LogLevel.WARN, R.string.msg_is_bad_type_public), - MSG_IS_DB_EXCEPTION (LogLevel.DEBUG, R.string.msg_is_db_exception), + MSG_IS_BAD_TYPE_PUBLIC(LogLevel.WARN, R.string.msg_is_bad_type_public), + MSG_IS_DB_EXCEPTION(LogLevel.DEBUG, R.string.msg_is_db_exception), MSG_IS_ERROR_IO_EXC(LogLevel.DEBUG, R.string.msg_is_error_io_exc), - MSG_IS_MERGE_PUBLIC (LogLevel.DEBUG, R.string.msg_is_merge_public), - MSG_IS_MERGE_SECRET (LogLevel.DEBUG, R.string.msg_is_merge_secret), - MSG_IS_MERGE_SPECIAL (LogLevel.DEBUG, R.string.msg_is_merge_special), - MSG_IS_IMPORTING_SUBKEYS (LogLevel.DEBUG, R.string.msg_is_importing_subkeys), - MSG_IS_PUBRING_GENERATE (LogLevel.DEBUG, R.string.msg_is_pubring_generate), - MSG_IS_SUBKEY_NONEXISTENT (LogLevel.DEBUG, R.string.msg_is_subkey_nonexistent), - MSG_IS_SUBKEY_OK (LogLevel.OK, R.string.msg_is_subkey_ok), - MSG_IS_SUBKEY_STRIPPED (LogLevel.DEBUG, R.string.msg_is_subkey_stripped), - MSG_IS_SUBKEY_DIVERT (LogLevel.DEBUG, R.string.msg_is_subkey_divert), - MSG_IS_SUBKEY_EMPTY (LogLevel.DEBUG, R.string.msg_is_subkey_empty), - MSG_IS_SUBKEY_PIN (LogLevel.DEBUG, R.string.msg_is_subkey_pin), - MSG_IS_SUCCESS_IDENTICAL (LogLevel.OK, R.string.msg_is_success_identical), - MSG_IS_SUCCESS (LogLevel.OK, R.string.msg_is_success), + MSG_IS_MERGE_PUBLIC(LogLevel.DEBUG, R.string.msg_is_merge_public), + MSG_IS_MERGE_SECRET(LogLevel.DEBUG, R.string.msg_is_merge_secret), + MSG_IS_MERGE_SPECIAL(LogLevel.DEBUG, R.string.msg_is_merge_special), + MSG_IS_IMPORTING_SUBKEYS(LogLevel.DEBUG, R.string.msg_is_importing_subkeys), + MSG_IS_PUBRING_GENERATE(LogLevel.DEBUG, R.string.msg_is_pubring_generate), + MSG_IS_SUBKEY_NONEXISTENT(LogLevel.DEBUG, R.string.msg_is_subkey_nonexistent), + MSG_IS_SUBKEY_OK(LogLevel.OK, R.string.msg_is_subkey_ok), + MSG_IS_SUBKEY_STRIPPED(LogLevel.DEBUG, R.string.msg_is_subkey_stripped), + MSG_IS_SUBKEY_DIVERT(LogLevel.DEBUG, R.string.msg_is_subkey_divert), + MSG_IS_SUBKEY_EMPTY(LogLevel.DEBUG, R.string.msg_is_subkey_empty), + MSG_IS_SUBKEY_PIN(LogLevel.DEBUG, R.string.msg_is_subkey_pin), + MSG_IS_SUCCESS_IDENTICAL(LogLevel.OK, R.string.msg_is_success_identical), + MSG_IS_SUCCESS(LogLevel.OK, R.string.msg_is_success), // keyring canonicalization - MSG_KC_PUBLIC (LogLevel.START, R.string.msg_kc_public), - MSG_KC_SECRET (LogLevel.START, R.string.msg_kc_secret), - MSG_KC_ERROR_V3 (LogLevel.ERROR, R.string.msg_kc_error_v3), - MSG_KC_ERROR_NO_UID (LogLevel.ERROR, R.string.msg_kc_error_no_uid), - MSG_KC_ERROR_MASTER_ALGO (LogLevel.ERROR, R.string.msg_kc_error_master_algo), - MSG_KC_ERROR_DUP_KEY (LogLevel.ERROR, R.string.msg_kc_error_dup_key), - MSG_KC_MASTER (LogLevel.DEBUG, R.string.msg_kc_master), + MSG_KC_PUBLIC(LogLevel.START, R.string.msg_kc_public), + MSG_KC_SECRET(LogLevel.START, R.string.msg_kc_secret), + MSG_KC_ERROR_V3(LogLevel.ERROR, R.string.msg_kc_error_v3), + MSG_KC_ERROR_NO_UID(LogLevel.ERROR, R.string.msg_kc_error_no_uid), + MSG_KC_ERROR_MASTER_ALGO(LogLevel.ERROR, R.string.msg_kc_error_master_algo), + MSG_KC_ERROR_DUP_KEY(LogLevel.ERROR, R.string.msg_kc_error_dup_key), + MSG_KC_MASTER(LogLevel.DEBUG, R.string.msg_kc_master), MSG_KC_MASTER_BAD_TYPE(LogLevel.WARN, R.string.msg_kc_master_bad_type), MSG_KC_MASTER_BAD_LOCAL(LogLevel.WARN, R.string.msg_kc_master_bad_local), MSG_KC_MASTER_BAD_ERR(LogLevel.WARN, R.string.msg_kc_master_bad_err), @@ -392,10 +397,10 @@ public abstract class OperationResult implements Parcelable { MSG_KC_MASTER_BAD_TYPE_UID(LogLevel.WARN, R.string.msg_kc_master_bad_type_uid), MSG_KC_MASTER_BAD(LogLevel.WARN, R.string.msg_kc_master_bad), MSG_KC_MASTER_LOCAL(LogLevel.WARN, R.string.msg_kc_master_local), - MSG_KC_REVOKE_DUP (LogLevel.DEBUG, R.string.msg_kc_revoke_dup), - MSG_KC_NOTATION_DUP (LogLevel.DEBUG, R.string.msg_kc_notation_dup), - MSG_KC_NOTATION_EMPTY (LogLevel.DEBUG, R.string.msg_kc_notation_empty), - MSG_KC_SUB (LogLevel.DEBUG, R.string.msg_kc_sub), + MSG_KC_REVOKE_DUP(LogLevel.DEBUG, R.string.msg_kc_revoke_dup), + MSG_KC_NOTATION_DUP(LogLevel.DEBUG, R.string.msg_kc_notation_dup), + MSG_KC_NOTATION_EMPTY(LogLevel.DEBUG, R.string.msg_kc_notation_empty), + MSG_KC_SUB(LogLevel.DEBUG, R.string.msg_kc_sub), MSG_KC_SUB_BAD(LogLevel.WARN, R.string.msg_kc_sub_bad), MSG_KC_SUB_BAD_ERR(LogLevel.WARN, R.string.msg_kc_sub_bad_err), MSG_KC_SUB_BAD_LOCAL(LogLevel.WARN, R.string.msg_kc_sub_bad_local), @@ -403,97 +408,97 @@ public abstract class OperationResult implements Parcelable { MSG_KC_SUB_BAD_TIME(LogLevel.WARN, R.string.msg_kc_sub_bad_time), MSG_KC_SUB_BAD_TIME_EARLY(LogLevel.WARN, R.string.msg_kc_sub_bad_time_early), MSG_KC_SUB_BAD_TYPE(LogLevel.WARN, R.string.msg_kc_sub_bad_type), - MSG_KC_SUB_DUP (LogLevel.DEBUG, R.string.msg_kc_sub_dup), + MSG_KC_SUB_DUP(LogLevel.DEBUG, R.string.msg_kc_sub_dup), MSG_KC_SUB_PRIMARY_BAD(LogLevel.WARN, R.string.msg_kc_sub_primary_bad), MSG_KC_SUB_PRIMARY_BAD_ERR(LogLevel.WARN, R.string.msg_kc_sub_primary_bad_err), MSG_KC_SUB_PRIMARY_NONE(LogLevel.DEBUG, R.string.msg_kc_sub_primary_none), MSG_KC_SUB_NO_CERT(LogLevel.DEBUG, R.string.msg_kc_sub_no_cert), - MSG_KC_SUB_REVOKE_BAD_ERR (LogLevel.WARN, R.string.msg_kc_sub_revoke_bad_err), - MSG_KC_SUB_REVOKE_BAD (LogLevel.WARN, R.string.msg_kc_sub_revoke_bad), - MSG_KC_SUB_REVOKE_DUP (LogLevel.DEBUG, R.string.msg_kc_sub_revoke_dup), - MSG_KC_SUB_UNKNOWN_ALGO (LogLevel.WARN, R.string.msg_kc_sub_unknown_algo), - MSG_KC_SUB_ALGO_BAD_ENCRYPT (LogLevel.WARN, R.string.msg_kc_sub_algo_bad_encrpyt), - MSG_KC_SUB_ALGO_BAD_SIGN (LogLevel.WARN, R.string.msg_kc_sub_algo_bad_sign), - MSG_KC_SUCCESS_BAD (LogLevel.OK, R.plurals.msg_kc_success_bad), - MSG_KC_SUCCESS_BAD_AND_RED (LogLevel.OK, R.string.msg_kc_success_bad_and_red), - MSG_KC_SUCCESS_REDUNDANT (LogLevel.OK, R.plurals.msg_kc_success_redundant), - MSG_KC_SUCCESS (LogLevel.OK, R.string.msg_kc_success), - MSG_KC_UID_BAD_ERR (LogLevel.WARN, R.string.msg_kc_uid_bad_err), - MSG_KC_UID_BAD_LOCAL (LogLevel.WARN, R.string.msg_kc_uid_bad_local), - MSG_KC_UID_BAD_TIME (LogLevel.WARN, R.string.msg_kc_uid_bad_time), - MSG_KC_UID_BAD_TYPE (LogLevel.WARN, R.string.msg_kc_uid_bad_type), - MSG_KC_UID_BAD (LogLevel.WARN, R.string.msg_kc_uid_bad), - MSG_KC_UID_CERT_DUP (LogLevel.DEBUG, R.string.msg_kc_uid_cert_dup), - MSG_KC_UID_DUP (LogLevel.DEBUG, R.string.msg_kc_uid_dup), - MSG_KC_UID_FOREIGN (LogLevel.DEBUG, R.string.msg_kc_uid_foreign), - MSG_KC_UID_NO_CERT (LogLevel.DEBUG, R.string.msg_kc_uid_no_cert), - MSG_KC_UID_REVOKE_DUP (LogLevel.DEBUG, R.string.msg_kc_uid_revoke_dup), - MSG_KC_UID_REVOKE_OLD (LogLevel.DEBUG, R.string.msg_kc_uid_revoke_old), - MSG_KC_UID_REMOVE (LogLevel.DEBUG, R.string.msg_kc_uid_remove), - MSG_KC_UID_WARN_ENCODING (LogLevel.WARN, R.string.msg_kc_uid_warn_encoding), - MSG_KC_UAT_JPEG (LogLevel.DEBUG, R.string.msg_kc_uat_jpeg), - MSG_KC_UAT_UNKNOWN (LogLevel.DEBUG, R.string.msg_kc_uat_unknown), - MSG_KC_UAT_BAD_ERR (LogLevel.WARN, R.string.msg_kc_uat_bad_err), - MSG_KC_UAT_BAD_LOCAL (LogLevel.WARN, R.string.msg_kc_uat_bad_local), - MSG_KC_UAT_BAD_TIME (LogLevel.WARN, R.string.msg_kc_uat_bad_time), - MSG_KC_UAT_BAD_TYPE (LogLevel.WARN, R.string.msg_kc_uat_bad_type), - MSG_KC_UAT_BAD (LogLevel.WARN, R.string.msg_kc_uat_bad), - MSG_KC_UAT_CERT_DUP (LogLevel.DEBUG, R.string.msg_kc_uat_cert_dup), - MSG_KC_UAT_DUP (LogLevel.DEBUG, R.string.msg_kc_uat_dup), - MSG_KC_UAT_FOREIGN (LogLevel.DEBUG, R.string.msg_kc_uat_foreign), - MSG_KC_UAT_NO_CERT (LogLevel.DEBUG, R.string.msg_kc_uat_no_cert), - MSG_KC_UAT_REVOKE_DUP (LogLevel.DEBUG, R.string.msg_kc_uat_revoke_dup), - MSG_KC_UAT_REVOKE_OLD (LogLevel.DEBUG, R.string.msg_kc_uat_revoke_old), - MSG_KC_UAT_REMOVE (LogLevel.DEBUG, R.string.msg_kc_uat_remove), - MSG_KC_UAT_WARN_ENCODING (LogLevel.WARN, R.string.msg_kc_uat_warn_encoding), + MSG_KC_SUB_REVOKE_BAD_ERR(LogLevel.WARN, R.string.msg_kc_sub_revoke_bad_err), + MSG_KC_SUB_REVOKE_BAD(LogLevel.WARN, R.string.msg_kc_sub_revoke_bad), + MSG_KC_SUB_REVOKE_DUP(LogLevel.DEBUG, R.string.msg_kc_sub_revoke_dup), + MSG_KC_SUB_UNKNOWN_ALGO(LogLevel.WARN, R.string.msg_kc_sub_unknown_algo), + MSG_KC_SUB_ALGO_BAD_ENCRYPT(LogLevel.WARN, R.string.msg_kc_sub_algo_bad_encrpyt), + MSG_KC_SUB_ALGO_BAD_SIGN(LogLevel.WARN, R.string.msg_kc_sub_algo_bad_sign), + MSG_KC_SUCCESS_BAD(LogLevel.OK, R.plurals.msg_kc_success_bad), + MSG_KC_SUCCESS_BAD_AND_RED(LogLevel.OK, R.string.msg_kc_success_bad_and_red), + MSG_KC_SUCCESS_REDUNDANT(LogLevel.OK, R.plurals.msg_kc_success_redundant), + MSG_KC_SUCCESS(LogLevel.OK, R.string.msg_kc_success), + MSG_KC_UID_BAD_ERR(LogLevel.WARN, R.string.msg_kc_uid_bad_err), + MSG_KC_UID_BAD_LOCAL(LogLevel.WARN, R.string.msg_kc_uid_bad_local), + MSG_KC_UID_BAD_TIME(LogLevel.WARN, R.string.msg_kc_uid_bad_time), + MSG_KC_UID_BAD_TYPE(LogLevel.WARN, R.string.msg_kc_uid_bad_type), + MSG_KC_UID_BAD(LogLevel.WARN, R.string.msg_kc_uid_bad), + MSG_KC_UID_CERT_DUP(LogLevel.DEBUG, R.string.msg_kc_uid_cert_dup), + MSG_KC_UID_DUP(LogLevel.DEBUG, R.string.msg_kc_uid_dup), + MSG_KC_UID_FOREIGN(LogLevel.DEBUG, R.string.msg_kc_uid_foreign), + MSG_KC_UID_NO_CERT(LogLevel.DEBUG, R.string.msg_kc_uid_no_cert), + MSG_KC_UID_REVOKE_DUP(LogLevel.DEBUG, R.string.msg_kc_uid_revoke_dup), + MSG_KC_UID_REVOKE_OLD(LogLevel.DEBUG, R.string.msg_kc_uid_revoke_old), + MSG_KC_UID_REMOVE(LogLevel.DEBUG, R.string.msg_kc_uid_remove), + MSG_KC_UID_WARN_ENCODING(LogLevel.WARN, R.string.msg_kc_uid_warn_encoding), + MSG_KC_UAT_JPEG(LogLevel.DEBUG, R.string.msg_kc_uat_jpeg), + MSG_KC_UAT_UNKNOWN(LogLevel.DEBUG, R.string.msg_kc_uat_unknown), + MSG_KC_UAT_BAD_ERR(LogLevel.WARN, R.string.msg_kc_uat_bad_err), + MSG_KC_UAT_BAD_LOCAL(LogLevel.WARN, R.string.msg_kc_uat_bad_local), + MSG_KC_UAT_BAD_TIME(LogLevel.WARN, R.string.msg_kc_uat_bad_time), + MSG_KC_UAT_BAD_TYPE(LogLevel.WARN, R.string.msg_kc_uat_bad_type), + MSG_KC_UAT_BAD(LogLevel.WARN, R.string.msg_kc_uat_bad), + MSG_KC_UAT_CERT_DUP(LogLevel.DEBUG, R.string.msg_kc_uat_cert_dup), + MSG_KC_UAT_DUP(LogLevel.DEBUG, R.string.msg_kc_uat_dup), + MSG_KC_UAT_FOREIGN(LogLevel.DEBUG, R.string.msg_kc_uat_foreign), + MSG_KC_UAT_NO_CERT(LogLevel.DEBUG, R.string.msg_kc_uat_no_cert), + MSG_KC_UAT_REVOKE_DUP(LogLevel.DEBUG, R.string.msg_kc_uat_revoke_dup), + MSG_KC_UAT_REVOKE_OLD(LogLevel.DEBUG, R.string.msg_kc_uat_revoke_old), + MSG_KC_UAT_REMOVE(LogLevel.DEBUG, R.string.msg_kc_uat_remove), + MSG_KC_UAT_WARN_ENCODING(LogLevel.WARN, R.string.msg_kc_uat_warn_encoding), // keyring consolidation MSG_MG_ERROR_SECRET_DUMMY(LogLevel.ERROR, R.string.msg_mg_error_secret_dummy), MSG_MG_ERROR_ENCODE(LogLevel.ERROR, R.string.msg_mg_error_encode), MSG_MG_ERROR_HETEROGENEOUS(LogLevel.ERROR, R.string.msg_mg_error_heterogeneous), - MSG_MG_PUBLIC (LogLevel.START, R.string.msg_mg_public), - MSG_MG_SECRET (LogLevel.START, R.string.msg_mg_secret), - MSG_MG_NEW_SUBKEY (LogLevel.DEBUG, R.string.msg_mg_new_subkey), - MSG_MG_FOUND_NEW (LogLevel.OK, R.string.msg_mg_found_new), - MSG_MG_UNCHANGED (LogLevel.OK, R.string.msg_mg_unchanged), + MSG_MG_PUBLIC(LogLevel.START, R.string.msg_mg_public), + MSG_MG_SECRET(LogLevel.START, R.string.msg_mg_secret), + MSG_MG_NEW_SUBKEY(LogLevel.DEBUG, R.string.msg_mg_new_subkey), + MSG_MG_FOUND_NEW(LogLevel.OK, R.string.msg_mg_found_new), + MSG_MG_UNCHANGED(LogLevel.OK, R.string.msg_mg_unchanged), // secret key create - MSG_CR (LogLevel.START, R.string.msg_cr), - MSG_CR_ERROR_NO_MASTER (LogLevel.ERROR, R.string.msg_cr_error_no_master), - MSG_CR_ERROR_NO_USER_ID (LogLevel.ERROR, R.string.msg_cr_error_no_user_id), - MSG_CR_ERROR_NO_CERTIFY (LogLevel.ERROR, R.string.msg_cr_error_no_certify), + MSG_CR(LogLevel.START, R.string.msg_cr), + MSG_CR_ERROR_NO_MASTER(LogLevel.ERROR, R.string.msg_cr_error_no_master), + MSG_CR_ERROR_NO_USER_ID(LogLevel.ERROR, R.string.msg_cr_error_no_user_id), + MSG_CR_ERROR_NO_CERTIFY(LogLevel.ERROR, R.string.msg_cr_error_no_certify), MSG_CR_ERROR_NULL_EXPIRY(LogLevel.ERROR, R.string.msg_cr_error_null_expiry), - MSG_CR_ERROR_KEYSIZE_512 (LogLevel.ERROR, R.string.msg_cr_error_keysize_512), - MSG_CR_ERROR_NO_KEYSIZE (LogLevel.ERROR, R.string.msg_cr_error_no_keysize), - MSG_CR_ERROR_NO_CURVE (LogLevel.ERROR, R.string.msg_cr_error_no_curve), - MSG_CR_ERROR_UNKNOWN_ALGO (LogLevel.ERROR, R.string.msg_cr_error_unknown_algo), - MSG_CR_ERROR_INTERNAL_PGP (LogLevel.ERROR, R.string.msg_cr_error_internal_pgp), - MSG_CR_ERROR_FLAGS_DSA (LogLevel.ERROR, R.string.msg_cr_error_flags_dsa), - MSG_CR_ERROR_FLAGS_ELGAMAL (LogLevel.ERROR, R.string.msg_cr_error_flags_elgamal), - MSG_CR_ERROR_FLAGS_ECDSA (LogLevel.ERROR, R.string.msg_cr_error_flags_ecdsa), - MSG_CR_ERROR_FLAGS_ECDH (LogLevel.ERROR, R.string.msg_cr_error_flags_ecdh), + MSG_CR_ERROR_KEYSIZE_512(LogLevel.ERROR, R.string.msg_cr_error_keysize_512), + MSG_CR_ERROR_NO_KEYSIZE(LogLevel.ERROR, R.string.msg_cr_error_no_keysize), + MSG_CR_ERROR_NO_CURVE(LogLevel.ERROR, R.string.msg_cr_error_no_curve), + MSG_CR_ERROR_UNKNOWN_ALGO(LogLevel.ERROR, R.string.msg_cr_error_unknown_algo), + MSG_CR_ERROR_INTERNAL_PGP(LogLevel.ERROR, R.string.msg_cr_error_internal_pgp), + MSG_CR_ERROR_FLAGS_DSA(LogLevel.ERROR, R.string.msg_cr_error_flags_dsa), + MSG_CR_ERROR_FLAGS_ELGAMAL(LogLevel.ERROR, R.string.msg_cr_error_flags_elgamal), + MSG_CR_ERROR_FLAGS_ECDSA(LogLevel.ERROR, R.string.msg_cr_error_flags_ecdsa), + MSG_CR_ERROR_FLAGS_ECDH(LogLevel.ERROR, R.string.msg_cr_error_flags_ecdh), // secret key modify - MSG_MF (LogLevel.START, R.string.msg_mr), - MSG_MF_DIVERT (LogLevel.DEBUG, R.string.msg_mf_divert), - MSG_MF_ERROR_DIVERT_SERIAL (LogLevel.ERROR, R.string.msg_mf_error_divert_serial), - MSG_MF_ERROR_ENCODE (LogLevel.ERROR, R.string.msg_mf_error_encode), - MSG_MF_ERROR_FINGERPRINT (LogLevel.ERROR, R.string.msg_mf_error_fingerprint), - MSG_MF_ERROR_KEYID (LogLevel.ERROR, R.string.msg_mf_error_keyid), - MSG_MF_ERROR_INTEGRITY (LogLevel.ERROR, R.string.msg_mf_error_integrity), + MSG_MF(LogLevel.START, R.string.msg_mr), + MSG_MF_DIVERT(LogLevel.DEBUG, R.string.msg_mf_divert), + MSG_MF_ERROR_DIVERT_SERIAL(LogLevel.ERROR, R.string.msg_mf_error_divert_serial), + MSG_MF_ERROR_ENCODE(LogLevel.ERROR, R.string.msg_mf_error_encode), + MSG_MF_ERROR_FINGERPRINT(LogLevel.ERROR, R.string.msg_mf_error_fingerprint), + MSG_MF_ERROR_KEYID(LogLevel.ERROR, R.string.msg_mf_error_keyid), + MSG_MF_ERROR_INTEGRITY(LogLevel.ERROR, R.string.msg_mf_error_integrity), MSG_MF_ERROR_MASTER_NONE(LogLevel.ERROR, R.string.msg_mf_error_master_none), - MSG_MF_ERROR_NO_CERTIFY (LogLevel.ERROR, R.string.msg_cr_error_no_certify), - MSG_MF_ERROR_NOEXIST_PRIMARY (LogLevel.ERROR, R.string.msg_mf_error_noexist_primary), - MSG_MF_ERROR_NOEXIST_REVOKE (LogLevel.ERROR, R.string.msg_mf_error_noexist_revoke), - MSG_MF_ERROR_NOOP (LogLevel.ERROR, R.string.msg_mf_error_noop), - MSG_MF_ERROR_NULL_EXPIRY (LogLevel.ERROR, R.string.msg_mf_error_null_expiry), + MSG_MF_ERROR_NO_CERTIFY(LogLevel.ERROR, R.string.msg_cr_error_no_certify), + MSG_MF_ERROR_NOEXIST_PRIMARY(LogLevel.ERROR, R.string.msg_mf_error_noexist_primary), + MSG_MF_ERROR_NOEXIST_REVOKE(LogLevel.ERROR, R.string.msg_mf_error_noexist_revoke), + MSG_MF_ERROR_NOOP(LogLevel.ERROR, R.string.msg_mf_error_noop), + MSG_MF_ERROR_NULL_EXPIRY(LogLevel.ERROR, R.string.msg_mf_error_null_expiry), MSG_MF_ERROR_PASSPHRASE_MASTER(LogLevel.ERROR, R.string.msg_mf_error_passphrase_master), MSG_MF_ERROR_PAST_EXPIRY(LogLevel.ERROR, R.string.msg_mf_error_past_expiry), - MSG_MF_ERROR_PGP (LogLevel.ERROR, R.string.msg_mf_error_pgp), + MSG_MF_ERROR_PGP(LogLevel.ERROR, R.string.msg_mf_error_pgp), MSG_MF_ERROR_RESTRICTED(LogLevel.ERROR, R.string.msg_mf_error_restricted), - MSG_MF_ERROR_REVOKED_PRIMARY (LogLevel.ERROR, R.string.msg_mf_error_revoked_primary), - MSG_MF_ERROR_SIG (LogLevel.ERROR, R.string.msg_mf_error_sig), + MSG_MF_ERROR_REVOKED_PRIMARY(LogLevel.ERROR, R.string.msg_mf_error_revoked_primary), + MSG_MF_ERROR_SIG(LogLevel.ERROR, R.string.msg_mf_error_sig), MSG_MF_ERROR_SUBKEY_MISSING(LogLevel.ERROR, R.string.msg_mf_error_subkey_missing), MSG_MF_ERROR_CONFLICTING_NFC_COMMANDS(LogLevel.ERROR, R.string.msg_mf_error_conflicting_nfc_commands), MSG_MF_ERROR_DUPLICATE_KEYTOCARD_FOR_SLOT(LogLevel.ERROR, R.string.msg_mf_error_duplicate_keytocard_for_slot), @@ -501,235 +506,235 @@ public abstract class OperationResult implements Parcelable { MSG_MF_ERROR_BAD_NFC_ALGO(LogLevel.ERROR, R.string.edit_key_error_bad_nfc_algo), MSG_MF_ERROR_BAD_NFC_SIZE(LogLevel.ERROR, R.string.edit_key_error_bad_nfc_size), MSG_MF_ERROR_BAD_NFC_STRIPPED(LogLevel.ERROR, R.string.edit_key_error_bad_nfc_stripped), - MSG_MF_MASTER (LogLevel.DEBUG, R.string.msg_mf_master), - MSG_MF_NOTATION_PIN (LogLevel.DEBUG, R.string.msg_mf_notation_pin), - MSG_MF_NOTATION_EMPTY (LogLevel.DEBUG, R.string.msg_mf_notation_empty), - MSG_MF_PASSPHRASE (LogLevel.INFO, R.string.msg_mf_passphrase), - MSG_MF_PASSPHRASE_KEY (LogLevel.DEBUG, R.string.msg_mf_passphrase_key), - MSG_MF_PASSPHRASE_EMPTY_RETRY (LogLevel.DEBUG, R.string.msg_mf_passphrase_empty_retry), - MSG_MF_PASSPHRASE_FAIL (LogLevel.WARN, R.string.msg_mf_passphrase_fail), - MSG_MF_PRIMARY_REPLACE_OLD (LogLevel.DEBUG, R.string.msg_mf_primary_replace_old), - MSG_MF_PRIMARY_NEW (LogLevel.DEBUG, R.string.msg_mf_primary_new), - MSG_MF_RESTRICTED_MODE (LogLevel.INFO, R.string.msg_mf_restricted_mode), - MSG_MF_REQUIRE_DIVERT (LogLevel.OK, R.string.msg_mf_require_divert), - MSG_MF_REQUIRE_PASSPHRASE (LogLevel.OK, R.string.msg_mf_require_passphrase), - MSG_MF_SUBKEY_CHANGE (LogLevel.INFO, R.string.msg_mf_subkey_change), - MSG_MF_SUBKEY_NEW_ID (LogLevel.DEBUG, R.string.msg_mf_subkey_new_id), - MSG_MF_SUBKEY_NEW (LogLevel.INFO, R.string.msg_mf_subkey_new), - MSG_MF_SUBKEY_REVOKE (LogLevel.INFO, R.string.msg_mf_subkey_revoke), - MSG_MF_SUBKEY_STRIP (LogLevel.INFO, R.string.msg_mf_subkey_strip), - MSG_MF_KEYTOCARD_START (LogLevel.INFO, R.string.msg_mf_keytocard_start), - MSG_MF_KEYTOCARD_FINISH (LogLevel.OK, R.string.msg_mf_keytocard_finish), - MSG_MF_SUCCESS (LogLevel.OK, R.string.msg_mf_success), - MSG_MF_UID_ADD (LogLevel.INFO, R.string.msg_mf_uid_add), - MSG_MF_UID_PRIMARY (LogLevel.INFO, R.string.msg_mf_uid_primary), - MSG_MF_UID_REVOKE (LogLevel.INFO, R.string.msg_mf_uid_revoke), - MSG_MF_UID_ERROR_EMPTY (LogLevel.ERROR, R.string.msg_mf_uid_error_empty), - MSG_MF_UAT_ERROR_EMPTY (LogLevel.ERROR, R.string.msg_mf_uat_error_empty), - MSG_MF_UAT_ADD_IMAGE (LogLevel.INFO, R.string.msg_mf_uat_add_image), - MSG_MF_UAT_ADD_UNKNOWN (LogLevel.INFO, R.string.msg_mf_uat_add_unknown), - MSG_MF_UNLOCK_ERROR (LogLevel.ERROR, R.string.msg_mf_unlock_error), - MSG_MF_UNLOCK (LogLevel.DEBUG, R.string.msg_mf_unlock), + MSG_MF_MASTER(LogLevel.DEBUG, R.string.msg_mf_master), + MSG_MF_NOTATION_PIN(LogLevel.DEBUG, R.string.msg_mf_notation_pin), + MSG_MF_NOTATION_EMPTY(LogLevel.DEBUG, R.string.msg_mf_notation_empty), + MSG_MF_PASSPHRASE(LogLevel.INFO, R.string.msg_mf_passphrase), + MSG_MF_PASSPHRASE_KEY(LogLevel.DEBUG, R.string.msg_mf_passphrase_key), + MSG_MF_PASSPHRASE_EMPTY_RETRY(LogLevel.DEBUG, R.string.msg_mf_passphrase_empty_retry), + MSG_MF_PASSPHRASE_FAIL(LogLevel.WARN, R.string.msg_mf_passphrase_fail), + MSG_MF_PRIMARY_REPLACE_OLD(LogLevel.DEBUG, R.string.msg_mf_primary_replace_old), + MSG_MF_PRIMARY_NEW(LogLevel.DEBUG, R.string.msg_mf_primary_new), + MSG_MF_RESTRICTED_MODE(LogLevel.INFO, R.string.msg_mf_restricted_mode), + MSG_MF_REQUIRE_DIVERT(LogLevel.OK, R.string.msg_mf_require_divert), + MSG_MF_REQUIRE_PASSPHRASE(LogLevel.OK, R.string.msg_mf_require_passphrase), + MSG_MF_SUBKEY_CHANGE(LogLevel.INFO, R.string.msg_mf_subkey_change), + MSG_MF_SUBKEY_NEW_ID(LogLevel.DEBUG, R.string.msg_mf_subkey_new_id), + MSG_MF_SUBKEY_NEW(LogLevel.INFO, R.string.msg_mf_subkey_new), + MSG_MF_SUBKEY_REVOKE(LogLevel.INFO, R.string.msg_mf_subkey_revoke), + MSG_MF_SUBKEY_STRIP(LogLevel.INFO, R.string.msg_mf_subkey_strip), + MSG_MF_KEYTOCARD_START(LogLevel.INFO, R.string.msg_mf_keytocard_start), + MSG_MF_KEYTOCARD_FINISH(LogLevel.OK, R.string.msg_mf_keytocard_finish), + MSG_MF_SUCCESS(LogLevel.OK, R.string.msg_mf_success), + MSG_MF_UID_ADD(LogLevel.INFO, R.string.msg_mf_uid_add), + MSG_MF_UID_PRIMARY(LogLevel.INFO, R.string.msg_mf_uid_primary), + MSG_MF_UID_REVOKE(LogLevel.INFO, R.string.msg_mf_uid_revoke), + MSG_MF_UID_ERROR_EMPTY(LogLevel.ERROR, R.string.msg_mf_uid_error_empty), + MSG_MF_UAT_ERROR_EMPTY(LogLevel.ERROR, R.string.msg_mf_uat_error_empty), + MSG_MF_UAT_ADD_IMAGE(LogLevel.INFO, R.string.msg_mf_uat_add_image), + MSG_MF_UAT_ADD_UNKNOWN(LogLevel.INFO, R.string.msg_mf_uat_add_unknown), + MSG_MF_UNLOCK_ERROR(LogLevel.ERROR, R.string.msg_mf_unlock_error), + MSG_MF_UNLOCK(LogLevel.DEBUG, R.string.msg_mf_unlock), // consolidate - MSG_CON_CRITICAL_IN (LogLevel.DEBUG, R.string.msg_con_critical_in), - MSG_CON_CRITICAL_OUT (LogLevel.DEBUG, R.string.msg_con_critical_out), - MSG_CON_DB_CLEAR (LogLevel.DEBUG, R.string.msg_con_db_clear), - MSG_CON_DELETE_PUBLIC (LogLevel.DEBUG, R.string.msg_con_delete_public), - MSG_CON_DELETE_SECRET (LogLevel.DEBUG, R.string.msg_con_delete_secret), - MSG_CON_ERROR_BAD_STATE (LogLevel.ERROR, R.string.msg_con_error_bad_state), + MSG_CON_CRITICAL_IN(LogLevel.DEBUG, R.string.msg_con_critical_in), + MSG_CON_CRITICAL_OUT(LogLevel.DEBUG, R.string.msg_con_critical_out), + MSG_CON_DB_CLEAR(LogLevel.DEBUG, R.string.msg_con_db_clear), + MSG_CON_DELETE_PUBLIC(LogLevel.DEBUG, R.string.msg_con_delete_public), + MSG_CON_DELETE_SECRET(LogLevel.DEBUG, R.string.msg_con_delete_secret), + MSG_CON_ERROR_BAD_STATE(LogLevel.ERROR, R.string.msg_con_error_bad_state), MSG_CON_ERROR_CONCURRENT(LogLevel.ERROR, R.string.msg_con_error_concurrent), - MSG_CON_ERROR_DB (LogLevel.ERROR, R.string.msg_con_error_db), - MSG_CON_ERROR_IO_PUBLIC (LogLevel.ERROR, R.string.msg_con_error_io_public), - MSG_CON_ERROR_IO_SECRET (LogLevel.ERROR, R.string.msg_con_error_io_secret), - MSG_CON_ERROR_PUBLIC (LogLevel.ERROR, R.string.msg_con_error_public), - MSG_CON_ERROR_SECRET (LogLevel.ERROR, R.string.msg_con_error_secret), - MSG_CON_RECOVER (LogLevel.DEBUG, R.string.msg_con_recover), - MSG_CON_RECURSIVE (LogLevel.OK, R.string.msg_con_recursive), - MSG_CON_REIMPORT_PUBLIC (LogLevel.DEBUG, R.plurals.msg_con_reimport_public), - MSG_CON_REIMPORT_PUBLIC_SKIP (LogLevel.DEBUG, R.string.msg_con_reimport_public_skip), - MSG_CON_REIMPORT_SECRET (LogLevel.DEBUG, R.plurals.msg_con_reimport_secret), - MSG_CON_REIMPORT_SECRET_SKIP (LogLevel.DEBUG, R.string.msg_con_reimport_secret_skip), - MSG_CON (LogLevel.START, R.string.msg_con), - MSG_CON_SAVE_PUBLIC (LogLevel.DEBUG, R.string.msg_con_save_public), - MSG_CON_SAVE_SECRET (LogLevel.DEBUG, R.string.msg_con_save_secret), - MSG_CON_SUCCESS (LogLevel.OK, R.string.msg_con_success), - MSG_CON_WARN_DELETE_PUBLIC (LogLevel.WARN, R.string.msg_con_warn_delete_public), - MSG_CON_WARN_DELETE_SECRET (LogLevel.WARN, R.string.msg_con_warn_delete_secret), + MSG_CON_ERROR_DB(LogLevel.ERROR, R.string.msg_con_error_db), + MSG_CON_ERROR_IO_PUBLIC(LogLevel.ERROR, R.string.msg_con_error_io_public), + MSG_CON_ERROR_IO_SECRET(LogLevel.ERROR, R.string.msg_con_error_io_secret), + MSG_CON_ERROR_PUBLIC(LogLevel.ERROR, R.string.msg_con_error_public), + MSG_CON_ERROR_SECRET(LogLevel.ERROR, R.string.msg_con_error_secret), + MSG_CON_RECOVER(LogLevel.DEBUG, R.string.msg_con_recover), + MSG_CON_RECURSIVE(LogLevel.OK, R.string.msg_con_recursive), + MSG_CON_REIMPORT_PUBLIC(LogLevel.DEBUG, R.plurals.msg_con_reimport_public), + MSG_CON_REIMPORT_PUBLIC_SKIP(LogLevel.DEBUG, R.string.msg_con_reimport_public_skip), + MSG_CON_REIMPORT_SECRET(LogLevel.DEBUG, R.plurals.msg_con_reimport_secret), + MSG_CON_REIMPORT_SECRET_SKIP(LogLevel.DEBUG, R.string.msg_con_reimport_secret_skip), + MSG_CON(LogLevel.START, R.string.msg_con), + MSG_CON_SAVE_PUBLIC(LogLevel.DEBUG, R.string.msg_con_save_public), + MSG_CON_SAVE_SECRET(LogLevel.DEBUG, R.string.msg_con_save_secret), + MSG_CON_SUCCESS(LogLevel.OK, R.string.msg_con_success), + MSG_CON_WARN_DELETE_PUBLIC(LogLevel.WARN, R.string.msg_con_warn_delete_public), + MSG_CON_WARN_DELETE_SECRET(LogLevel.WARN, R.string.msg_con_warn_delete_secret), // edit key (higher level operation than modify) - MSG_ED (LogLevel.START, R.string.msg_ed), - MSG_ED_CACHING_NEW (LogLevel.DEBUG, R.string.msg_ed_caching_new), - MSG_ED_ERROR_NO_PARCEL (LogLevel.ERROR, R.string.msg_ed_error_no_parcel), - MSG_ED_ERROR_KEY_NOT_FOUND (LogLevel.ERROR, R.string.msg_ed_error_key_not_found), - MSG_ED_FETCHING (LogLevel.DEBUG, R.string.msg_ed_fetching), - MSG_ED_SUCCESS (LogLevel.OK, R.string.msg_ed_success), + MSG_ED(LogLevel.START, R.string.msg_ed), + MSG_ED_CACHING_NEW(LogLevel.DEBUG, R.string.msg_ed_caching_new), + MSG_ED_ERROR_NO_PARCEL(LogLevel.ERROR, R.string.msg_ed_error_no_parcel), + MSG_ED_ERROR_KEY_NOT_FOUND(LogLevel.ERROR, R.string.msg_ed_error_key_not_found), + MSG_ED_FETCHING(LogLevel.DEBUG, R.string.msg_ed_fetching), + MSG_ED_SUCCESS(LogLevel.OK, R.string.msg_ed_success), // promote key - MSG_PR (LogLevel.START, R.string.msg_pr), - MSG_PR_ALL (LogLevel.DEBUG, R.string.msg_pr_all), - MSG_PR_ERROR_KEY_NOT_FOUND (LogLevel.ERROR, R.string.msg_pr_error_key_not_found), - MSG_PR_FETCHING (LogLevel.DEBUG, R.string.msg_pr_fetching), - MSG_PR_SUBKEY_MATCH (LogLevel.DEBUG, R.string.msg_pr_subkey_match), - MSG_PR_SUBKEY_NOMATCH (LogLevel.WARN, R.string.msg_pr_subkey_nomatch), - MSG_PR_SUCCESS (LogLevel.OK, R.string.msg_pr_success), + MSG_PR(LogLevel.START, R.string.msg_pr), + MSG_PR_ALL(LogLevel.DEBUG, R.string.msg_pr_all), + MSG_PR_ERROR_KEY_NOT_FOUND(LogLevel.ERROR, R.string.msg_pr_error_key_not_found), + MSG_PR_FETCHING(LogLevel.DEBUG, R.string.msg_pr_fetching), + MSG_PR_SUBKEY_MATCH(LogLevel.DEBUG, R.string.msg_pr_subkey_match), + MSG_PR_SUBKEY_NOMATCH(LogLevel.WARN, R.string.msg_pr_subkey_nomatch), + MSG_PR_SUCCESS(LogLevel.OK, R.string.msg_pr_success), // messages used in UI code - MSG_EK_ERROR_DUMMY (LogLevel.ERROR, R.string.msg_ek_error_dummy), - MSG_EK_ERROR_NOT_FOUND (LogLevel.ERROR, R.string.msg_ek_error_not_found), + MSG_EK_ERROR_DUMMY(LogLevel.ERROR, R.string.msg_ek_error_dummy), + MSG_EK_ERROR_NOT_FOUND(LogLevel.ERROR, R.string.msg_ek_error_not_found), // decryptverify - MSG_DC_ASKIP_NO_KEY (LogLevel.DEBUG, R.string.msg_dc_askip_no_key), - MSG_DC_ASKIP_NOT_ALLOWED (LogLevel.DEBUG, R.string.msg_dc_askip_not_allowed), - MSG_DC_ASYM (LogLevel.DEBUG, R.string.msg_dc_asym), - MSG_DC_CHARSET (LogLevel.DEBUG, R.string.msg_dc_charset), - MSG_DC_CLEAR_DATA (LogLevel.DEBUG, R.string.msg_dc_clear_data), - MSG_DC_CLEAR_DECOMPRESS (LogLevel.DEBUG, R.string.msg_dc_clear_decompress), - MSG_DC_CLEAR_META_FILE (LogLevel.DEBUG, R.string.msg_dc_clear_meta_file), - MSG_DC_CLEAR_META_MIME (LogLevel.DEBUG, R.string.msg_dc_clear_meta_mime), - MSG_DC_CLEAR_META_SIZE (LogLevel.DEBUG, R.string.msg_dc_clear_meta_size), - MSG_DC_CLEAR_META_SIZE_UNKNOWN (LogLevel.DEBUG, R.string.msg_dc_clear_meta_size_unknown), - MSG_DC_CLEAR_META_TIME (LogLevel.DEBUG, R.string.msg_dc_clear_meta_time), - MSG_DC_CLEAR (LogLevel.DEBUG, R.string.msg_dc_clear), - MSG_DC_CLEAR_SIGNATURE_BAD (LogLevel.WARN, R.string.msg_dc_clear_signature_bad), - MSG_DC_CLEAR_SIGNATURE_CHECK (LogLevel.DEBUG, R.string.msg_dc_clear_signature_check), - MSG_DC_CLEAR_SIGNATURE_OK (LogLevel.OK, R.string.msg_dc_clear_signature_ok), - MSG_DC_CLEAR_SIGNATURE (LogLevel.DEBUG, R.string.msg_dc_clear_signature), - MSG_DC_ERROR_BAD_PASSPHRASE (LogLevel.ERROR, R.string.msg_dc_error_bad_passphrase), - MSG_DC_ERROR_CORRUPT_DATA (LogLevel.ERROR, R.string.msg_dc_error_corrupt_data), - MSG_DC_ERROR_EXTRACT_KEY (LogLevel.ERROR, R.string.msg_dc_error_extract_key), - MSG_DC_ERROR_INTEGRITY_CHECK (LogLevel.ERROR, R.string.msg_dc_error_integrity_check), - MSG_DC_ERROR_INTEGRITY_MISSING (LogLevel.ERROR, R.string.msg_dc_error_integrity_missing), - MSG_DC_ERROR_INVALID_DATA (LogLevel.ERROR, R.string.msg_dc_error_invalid_data), - MSG_DC_ERROR_IO (LogLevel.ERROR, R.string.msg_dc_error_io), - MSG_DC_ERROR_NO_DATA (LogLevel.ERROR, R.string.msg_dc_error_no_data), - MSG_DC_ERROR_NO_KEY (LogLevel.ERROR, R.string.msg_dc_error_no_key), - MSG_DC_ERROR_PGP_EXCEPTION (LogLevel.ERROR, R.string.msg_dc_error_pgp_exception), - MSG_DC_ERROR_UNSUPPORTED_HASH_ALGO (LogLevel.ERROR, R.string.msg_dc_error_unsupported_hash_algo), - MSG_DC_INTEGRITY_CHECK_OK (LogLevel.INFO, R.string.msg_dc_integrity_check_ok), - MSG_DC_OK_META_ONLY (LogLevel.OK, R.string.msg_dc_ok_meta_only), - MSG_DC_OK (LogLevel.OK, R.string.msg_dc_ok), - MSG_DC_PASS_CACHED (LogLevel.DEBUG, R.string.msg_dc_pass_cached), - MSG_DC_PENDING_NFC (LogLevel.INFO, R.string.msg_dc_pending_nfc), - MSG_DC_PENDING_PASSPHRASE (LogLevel.INFO, R.string.msg_dc_pending_passphrase), - MSG_DC_PREP_STREAMS (LogLevel.DEBUG, R.string.msg_dc_prep_streams), - MSG_DC (LogLevel.DEBUG, R.string.msg_dc), - MSG_DC_SYM (LogLevel.DEBUG, R.string.msg_dc_sym), - MSG_DC_SYM_SKIP (LogLevel.DEBUG, R.string.msg_dc_sym_skip), - MSG_DC_TRAIL_ASYM (LogLevel.DEBUG, R.string.msg_dc_trail_asym), - MSG_DC_TRAIL_SYM (LogLevel.DEBUG, R.string.msg_dc_trail_sym), - MSG_DC_TRAIL_UNKNOWN (LogLevel.DEBUG, R.string.msg_dc_trail_unknown), - MSG_DC_UNLOCKING (LogLevel.INFO, R.string.msg_dc_unlocking), - MSG_DC_OLD_SYMMETRIC_ENCRYPTION_ALGO (LogLevel.WARN, R.string.msg_dc_old_symmetric_encryption_algo), + MSG_DC_ASKIP_NO_KEY(LogLevel.DEBUG, R.string.msg_dc_askip_no_key), + MSG_DC_ASKIP_NOT_ALLOWED(LogLevel.DEBUG, R.string.msg_dc_askip_not_allowed), + MSG_DC_ASYM(LogLevel.DEBUG, R.string.msg_dc_asym), + MSG_DC_CHARSET(LogLevel.DEBUG, R.string.msg_dc_charset), + MSG_DC_CLEAR_DATA(LogLevel.DEBUG, R.string.msg_dc_clear_data), + MSG_DC_CLEAR_DECOMPRESS(LogLevel.DEBUG, R.string.msg_dc_clear_decompress), + MSG_DC_CLEAR_META_FILE(LogLevel.DEBUG, R.string.msg_dc_clear_meta_file), + MSG_DC_CLEAR_META_MIME(LogLevel.DEBUG, R.string.msg_dc_clear_meta_mime), + MSG_DC_CLEAR_META_SIZE(LogLevel.DEBUG, R.string.msg_dc_clear_meta_size), + MSG_DC_CLEAR_META_SIZE_UNKNOWN(LogLevel.DEBUG, R.string.msg_dc_clear_meta_size_unknown), + MSG_DC_CLEAR_META_TIME(LogLevel.DEBUG, R.string.msg_dc_clear_meta_time), + MSG_DC_CLEAR(LogLevel.DEBUG, R.string.msg_dc_clear), + MSG_DC_CLEAR_SIGNATURE_BAD(LogLevel.WARN, R.string.msg_dc_clear_signature_bad), + MSG_DC_CLEAR_SIGNATURE_CHECK(LogLevel.DEBUG, R.string.msg_dc_clear_signature_check), + MSG_DC_CLEAR_SIGNATURE_OK(LogLevel.OK, R.string.msg_dc_clear_signature_ok), + MSG_DC_CLEAR_SIGNATURE(LogLevel.DEBUG, R.string.msg_dc_clear_signature), + MSG_DC_ERROR_BAD_PASSPHRASE(LogLevel.ERROR, R.string.msg_dc_error_bad_passphrase), + MSG_DC_ERROR_CORRUPT_DATA(LogLevel.ERROR, R.string.msg_dc_error_corrupt_data), + MSG_DC_ERROR_EXTRACT_KEY(LogLevel.ERROR, R.string.msg_dc_error_extract_key), + MSG_DC_ERROR_INTEGRITY_CHECK(LogLevel.ERROR, R.string.msg_dc_error_integrity_check), + MSG_DC_ERROR_INTEGRITY_MISSING(LogLevel.ERROR, R.string.msg_dc_error_integrity_missing), + MSG_DC_ERROR_INVALID_DATA(LogLevel.ERROR, R.string.msg_dc_error_invalid_data), + MSG_DC_ERROR_IO(LogLevel.ERROR, R.string.msg_dc_error_io), + MSG_DC_ERROR_NO_DATA(LogLevel.ERROR, R.string.msg_dc_error_no_data), + MSG_DC_ERROR_NO_KEY(LogLevel.ERROR, R.string.msg_dc_error_no_key), + MSG_DC_ERROR_PGP_EXCEPTION(LogLevel.ERROR, R.string.msg_dc_error_pgp_exception), + MSG_DC_ERROR_UNSUPPORTED_HASH_ALGO(LogLevel.ERROR, R.string.msg_dc_error_unsupported_hash_algo), + MSG_DC_INTEGRITY_CHECK_OK(LogLevel.INFO, R.string.msg_dc_integrity_check_ok), + MSG_DC_OK_META_ONLY(LogLevel.OK, R.string.msg_dc_ok_meta_only), + MSG_DC_OK(LogLevel.OK, R.string.msg_dc_ok), + MSG_DC_PASS_CACHED(LogLevel.DEBUG, R.string.msg_dc_pass_cached), + MSG_DC_PENDING_NFC(LogLevel.INFO, R.string.msg_dc_pending_nfc), + MSG_DC_PENDING_PASSPHRASE(LogLevel.INFO, R.string.msg_dc_pending_passphrase), + MSG_DC_PREP_STREAMS(LogLevel.DEBUG, R.string.msg_dc_prep_streams), + MSG_DC(LogLevel.DEBUG, R.string.msg_dc), + MSG_DC_SYM(LogLevel.DEBUG, R.string.msg_dc_sym), + MSG_DC_SYM_SKIP(LogLevel.DEBUG, R.string.msg_dc_sym_skip), + MSG_DC_TRAIL_ASYM(LogLevel.DEBUG, R.string.msg_dc_trail_asym), + MSG_DC_TRAIL_SYM(LogLevel.DEBUG, R.string.msg_dc_trail_sym), + MSG_DC_TRAIL_UNKNOWN(LogLevel.DEBUG, R.string.msg_dc_trail_unknown), + MSG_DC_UNLOCKING(LogLevel.INFO, R.string.msg_dc_unlocking), + MSG_DC_OLD_SYMMETRIC_ENCRYPTION_ALGO(LogLevel.WARN, R.string.msg_dc_old_symmetric_encryption_algo), // verify signed literal data - MSG_VL (LogLevel.INFO, R.string.msg_vl), - MSG_VL_ERROR_MISSING_SIGLIST (LogLevel.ERROR, R.string.msg_vl_error_no_siglist), - MSG_VL_ERROR_MISSING_LITERAL (LogLevel.ERROR, R.string.msg_vl_error_missing_literal), - MSG_VL_ERROR_MISSING_KEY (LogLevel.ERROR, R.string.msg_vl_error_wrong_key), - MSG_VL_CLEAR_SIGNATURE_CHECK (LogLevel.DEBUG, R.string.msg_vl_clear_signature_check), - MSG_VL_ERROR_INTEGRITY_CHECK (LogLevel.ERROR, R.string.msg_vl_error_integrity_check), - MSG_VL_OK (LogLevel.OK, R.string.msg_vl_ok), + MSG_VL(LogLevel.INFO, R.string.msg_vl), + MSG_VL_ERROR_MISSING_SIGLIST(LogLevel.ERROR, R.string.msg_vl_error_no_siglist), + MSG_VL_ERROR_MISSING_LITERAL(LogLevel.ERROR, R.string.msg_vl_error_missing_literal), + MSG_VL_ERROR_MISSING_KEY(LogLevel.ERROR, R.string.msg_vl_error_wrong_key), + MSG_VL_CLEAR_SIGNATURE_CHECK(LogLevel.DEBUG, R.string.msg_vl_clear_signature_check), + MSG_VL_ERROR_INTEGRITY_CHECK(LogLevel.ERROR, R.string.msg_vl_error_integrity_check), + MSG_VL_OK(LogLevel.OK, R.string.msg_vl_ok), // signencrypt - MSG_SE (LogLevel.START, R.string.msg_se), - MSG_SE_INPUT_BYTES (LogLevel.INFO, R.string.msg_se_input_bytes), - MSG_SE_INPUT_URI (LogLevel.INFO, R.string.msg_se_input_uri), - MSG_SE_ERROR_NO_INPUT (LogLevel.DEBUG, R.string.msg_se_error_no_input), - MSG_SE_ERROR_INPUT_URI_NOT_FOUND (LogLevel.ERROR, R.string.msg_se_error_input_uri_not_found), - MSG_SE_ERROR_OUTPUT_URI_NOT_FOUND (LogLevel.ERROR, R.string.msg_se_error_output_uri_not_found), - MSG_SE_ERROR_TOO_MANY_INPUTS (LogLevel.ERROR, R.string.msg_se_error_too_many_inputs), - MSG_SE_SUCCESS (LogLevel.OK, R.string.msg_se_success), + MSG_SE(LogLevel.START, R.string.msg_se), + MSG_SE_INPUT_BYTES(LogLevel.INFO, R.string.msg_se_input_bytes), + MSG_SE_INPUT_URI(LogLevel.INFO, R.string.msg_se_input_uri), + MSG_SE_ERROR_NO_INPUT(LogLevel.DEBUG, R.string.msg_se_error_no_input), + MSG_SE_ERROR_INPUT_URI_NOT_FOUND(LogLevel.ERROR, R.string.msg_se_error_input_uri_not_found), + MSG_SE_ERROR_OUTPUT_URI_NOT_FOUND(LogLevel.ERROR, R.string.msg_se_error_output_uri_not_found), + MSG_SE_ERROR_TOO_MANY_INPUTS(LogLevel.ERROR, R.string.msg_se_error_too_many_inputs), + MSG_SE_SUCCESS(LogLevel.OK, R.string.msg_se_success), // pgpsignencrypt - MSG_PSE_ASYMMETRIC (LogLevel.INFO, R.string.msg_pse_asymmetric), - MSG_PSE_CLEARSIGN_ONLY (LogLevel.DEBUG, R.string.msg_pse_clearsign_only), - MSG_PSE_COMPRESSING (LogLevel.DEBUG, R.string.msg_pse_compressing), - MSG_PSE_ENCRYPTING (LogLevel.DEBUG, R.string.msg_pse_encrypting), - MSG_PSE_ERROR_BAD_PASSPHRASE (LogLevel.ERROR, R.string.msg_pse_error_bad_passphrase), - MSG_PSE_ERROR_HASH_ALGO (LogLevel.ERROR, R.string.msg_pse_error_hash_algo), - MSG_PSE_ERROR_IO (LogLevel.ERROR, R.string.msg_pse_error_io), + MSG_PSE_ASYMMETRIC(LogLevel.INFO, R.string.msg_pse_asymmetric), + MSG_PSE_CLEARSIGN_ONLY(LogLevel.DEBUG, R.string.msg_pse_clearsign_only), + MSG_PSE_COMPRESSING(LogLevel.DEBUG, R.string.msg_pse_compressing), + MSG_PSE_ENCRYPTING(LogLevel.DEBUG, R.string.msg_pse_encrypting), + MSG_PSE_ERROR_BAD_PASSPHRASE(LogLevel.ERROR, R.string.msg_pse_error_bad_passphrase), + MSG_PSE_ERROR_HASH_ALGO(LogLevel.ERROR, R.string.msg_pse_error_hash_algo), + MSG_PSE_ERROR_IO(LogLevel.ERROR, R.string.msg_pse_error_io), MSG_PSE_ERROR_SIGN_KEY(LogLevel.ERROR, R.string.msg_pse_error_sign_key), - MSG_PSE_ERROR_KEY_SIGN (LogLevel.ERROR, R.string.msg_pse_error_key_sign), - MSG_PSE_ERROR_NFC (LogLevel.ERROR, R.string.msg_pse_error_nfc), - MSG_PSE_ERROR_PGP (LogLevel.ERROR, R.string.msg_pse_error_pgp), - MSG_PSE_ERROR_SIG (LogLevel.ERROR, R.string.msg_pse_error_sig), - MSG_PSE_ERROR_UNLOCK (LogLevel.ERROR, R.string.msg_pse_error_unlock), - MSG_PSE_KEY_OK (LogLevel.OK, R.string.msg_pse_key_ok), - MSG_PSE_KEY_UNKNOWN (LogLevel.DEBUG, R.string.msg_pse_key_unknown), - MSG_PSE_KEY_WARN (LogLevel.WARN, R.string.msg_pse_key_warn), - MSG_PSE_OK (LogLevel.OK, R.string.msg_pse_ok), - MSG_PSE_PENDING_NFC (LogLevel.INFO, R.string.msg_pse_pending_nfc), - MSG_PSE_PENDING_PASSPHRASE (LogLevel.INFO, R.string.msg_pse_pending_passphrase), - MSG_PSE (LogLevel.DEBUG, R.string.msg_pse), - MSG_PSE_SIGNING (LogLevel.DEBUG, R.string.msg_pse_signing), - MSG_PSE_SIGNING_CLEARTEXT (LogLevel.DEBUG, R.string.msg_pse_signing_cleartext), - MSG_PSE_SIGNING_DETACHED (LogLevel.DEBUG, R.string.msg_pse_signing_detached), - MSG_PSE_SIGCRYPTING (LogLevel.DEBUG, R.string.msg_pse_sigcrypting), - MSG_PSE_SYMMETRIC (LogLevel.INFO, R.string.msg_pse_symmetric), + MSG_PSE_ERROR_KEY_SIGN(LogLevel.ERROR, R.string.msg_pse_error_key_sign), + MSG_PSE_ERROR_NFC(LogLevel.ERROR, R.string.msg_pse_error_nfc), + MSG_PSE_ERROR_PGP(LogLevel.ERROR, R.string.msg_pse_error_pgp), + MSG_PSE_ERROR_SIG(LogLevel.ERROR, R.string.msg_pse_error_sig), + MSG_PSE_ERROR_UNLOCK(LogLevel.ERROR, R.string.msg_pse_error_unlock), + MSG_PSE_KEY_OK(LogLevel.OK, R.string.msg_pse_key_ok), + MSG_PSE_KEY_UNKNOWN(LogLevel.DEBUG, R.string.msg_pse_key_unknown), + MSG_PSE_KEY_WARN(LogLevel.WARN, R.string.msg_pse_key_warn), + MSG_PSE_OK(LogLevel.OK, R.string.msg_pse_ok), + MSG_PSE_PENDING_NFC(LogLevel.INFO, R.string.msg_pse_pending_nfc), + MSG_PSE_PENDING_PASSPHRASE(LogLevel.INFO, R.string.msg_pse_pending_passphrase), + MSG_PSE(LogLevel.DEBUG, R.string.msg_pse), + MSG_PSE_SIGNING(LogLevel.DEBUG, R.string.msg_pse_signing), + MSG_PSE_SIGNING_CLEARTEXT(LogLevel.DEBUG, R.string.msg_pse_signing_cleartext), + MSG_PSE_SIGNING_DETACHED(LogLevel.DEBUG, R.string.msg_pse_signing_detached), + MSG_PSE_SIGCRYPTING(LogLevel.DEBUG, R.string.msg_pse_sigcrypting), + MSG_PSE_SYMMETRIC(LogLevel.INFO, R.string.msg_pse_symmetric), - MSG_CRT_CERTIFYING (LogLevel.DEBUG, R.string.msg_crt_certifying), - MSG_CRT_CERTIFY_UIDS (LogLevel.DEBUG, R.plurals.msg_crt_certify_uids), - MSG_CRT_CERTIFY_UATS (LogLevel.DEBUG, R.plurals.msg_crt_certify_uats), - MSG_CRT_ERROR_SELF (LogLevel.ERROR, R.string.msg_crt_error_self), - MSG_CRT_ERROR_MASTER_NOT_FOUND (LogLevel.ERROR, R.string.msg_crt_error_master_not_found), - MSG_CRT_ERROR_NOTHING (LogLevel.ERROR, R.string.msg_crt_error_nothing), - MSG_CRT_ERROR_UNLOCK (LogLevel.ERROR, R.string.msg_crt_error_unlock), - MSG_CRT (LogLevel.START, R.string.msg_crt), - MSG_CRT_MASTER_FETCH (LogLevel.DEBUG, R.string.msg_crt_master_fetch), - MSG_CRT_NFC_RETURN (LogLevel.OK, R.string.msg_crt_nfc_return), - MSG_CRT_SAVE (LogLevel.DEBUG, R.string.msg_crt_save), - MSG_CRT_SAVING (LogLevel.DEBUG, R.string.msg_crt_saving), - MSG_CRT_SUCCESS (LogLevel.OK, R.string.msg_crt_success), - MSG_CRT_UNLOCK (LogLevel.DEBUG, R.string.msg_crt_unlock), - MSG_CRT_WARN_NOT_FOUND (LogLevel.WARN, R.string.msg_crt_warn_not_found), - MSG_CRT_WARN_CERT_FAILED (LogLevel.WARN, R.string.msg_crt_warn_cert_failed), - MSG_CRT_WARN_SAVE_FAILED (LogLevel.WARN, R.string.msg_crt_warn_save_failed), - MSG_CRT_WARN_UPLOAD_FAILED (LogLevel.WARN, R.string.msg_crt_warn_upload_failed), + MSG_CRT_CERTIFYING(LogLevel.DEBUG, R.string.msg_crt_certifying), + MSG_CRT_CERTIFY_UIDS(LogLevel.DEBUG, R.plurals.msg_crt_certify_uids), + MSG_CRT_CERTIFY_UATS(LogLevel.DEBUG, R.plurals.msg_crt_certify_uats), + MSG_CRT_ERROR_SELF(LogLevel.ERROR, R.string.msg_crt_error_self), + MSG_CRT_ERROR_MASTER_NOT_FOUND(LogLevel.ERROR, R.string.msg_crt_error_master_not_found), + MSG_CRT_ERROR_NOTHING(LogLevel.ERROR, R.string.msg_crt_error_nothing), + MSG_CRT_ERROR_UNLOCK(LogLevel.ERROR, R.string.msg_crt_error_unlock), + MSG_CRT(LogLevel.START, R.string.msg_crt), + MSG_CRT_MASTER_FETCH(LogLevel.DEBUG, R.string.msg_crt_master_fetch), + MSG_CRT_NFC_RETURN(LogLevel.OK, R.string.msg_crt_nfc_return), + MSG_CRT_SAVE(LogLevel.DEBUG, R.string.msg_crt_save), + MSG_CRT_SAVING(LogLevel.DEBUG, R.string.msg_crt_saving), + MSG_CRT_SUCCESS(LogLevel.OK, R.string.msg_crt_success), + MSG_CRT_UNLOCK(LogLevel.DEBUG, R.string.msg_crt_unlock), + MSG_CRT_WARN_NOT_FOUND(LogLevel.WARN, R.string.msg_crt_warn_not_found), + MSG_CRT_WARN_CERT_FAILED(LogLevel.WARN, R.string.msg_crt_warn_cert_failed), + MSG_CRT_WARN_SAVE_FAILED(LogLevel.WARN, R.string.msg_crt_warn_save_failed), + MSG_CRT_WARN_UPLOAD_FAILED(LogLevel.WARN, R.string.msg_crt_warn_upload_failed), - MSG_IMPORT (LogLevel.START, R.plurals.msg_import), + MSG_IMPORT(LogLevel.START, R.plurals.msg_import), - MSG_IMPORT_FETCH_ERROR (LogLevel.ERROR, R.string.msg_import_fetch_error), - MSG_IMPORT_FETCH_ERROR_DECODE (LogLevel.ERROR, R.string.msg_import_fetch_error_decode), - MSG_IMPORT_FETCH_KEYSERVER (LogLevel.INFO, R.string.msg_import_fetch_keyserver), - MSG_IMPORT_FETCH_KEYSERVER_OK (LogLevel.DEBUG, R.string.msg_import_fetch_keyserver_ok), - MSG_IMPORT_FETCH_KEYSERVER_ERROR (LogLevel.ERROR, R.string.msg_import_fetch_keyserver_error), - MSG_IMPORT_FETCH_KEYBASE (LogLevel.INFO, R.string.msg_import_fetch_keybase), - MSG_IMPORT_KEYSERVER (LogLevel.DEBUG, R.string.msg_import_keyserver), - MSG_IMPORT_MERGE (LogLevel.DEBUG, R.string.msg_import_merge), - MSG_IMPORT_MERGE_ERROR (LogLevel.ERROR, R.string.msg_import_merge_error), - MSG_IMPORT_FINGERPRINT_ERROR (LogLevel.ERROR, R.string.msg_import_fingerprint_error), - MSG_IMPORT_FINGERPRINT_OK (LogLevel.DEBUG, R.string.msg_import_fingerprint_ok), - MSG_IMPORT_ERROR (LogLevel.ERROR, R.string.msg_import_error), - MSG_IMPORT_ERROR_IO (LogLevel.ERROR, R.string.msg_import_error_io), - MSG_IMPORT_PARTIAL (LogLevel.ERROR, R.string.msg_import_partial), - MSG_IMPORT_SUCCESS (LogLevel.OK, R.string.msg_import_success), + MSG_IMPORT_FETCH_ERROR(LogLevel.ERROR, R.string.msg_import_fetch_error), + MSG_IMPORT_FETCH_ERROR_DECODE(LogLevel.ERROR, R.string.msg_import_fetch_error_decode), + MSG_IMPORT_FETCH_KEYSERVER(LogLevel.INFO, R.string.msg_import_fetch_keyserver), + MSG_IMPORT_FETCH_KEYSERVER_OK(LogLevel.DEBUG, R.string.msg_import_fetch_keyserver_ok), + MSG_IMPORT_FETCH_KEYSERVER_ERROR(LogLevel.ERROR, R.string.msg_import_fetch_keyserver_error), + MSG_IMPORT_FETCH_KEYBASE(LogLevel.INFO, R.string.msg_import_fetch_keybase), + MSG_IMPORT_KEYSERVER(LogLevel.DEBUG, R.string.msg_import_keyserver), + MSG_IMPORT_MERGE(LogLevel.DEBUG, R.string.msg_import_merge), + MSG_IMPORT_MERGE_ERROR(LogLevel.ERROR, R.string.msg_import_merge_error), + MSG_IMPORT_FINGERPRINT_ERROR(LogLevel.ERROR, R.string.msg_import_fingerprint_error), + MSG_IMPORT_FINGERPRINT_OK(LogLevel.DEBUG, R.string.msg_import_fingerprint_ok), + MSG_IMPORT_ERROR(LogLevel.ERROR, R.string.msg_import_error), + MSG_IMPORT_ERROR_IO(LogLevel.ERROR, R.string.msg_import_error_io), + MSG_IMPORT_PARTIAL(LogLevel.ERROR, R.string.msg_import_partial), + MSG_IMPORT_SUCCESS(LogLevel.OK, R.string.msg_import_success), - MSG_EXPORT (LogLevel.START, R.plurals.msg_export), + MSG_EXPORT(LogLevel.START, R.plurals.msg_export), MSG_EXPORT_UPLOAD_PUBLIC(LogLevel.START, R.string.msg_export_upload_public), - MSG_EXPORT_PUBLIC (LogLevel.DEBUG, R.string.msg_export_public), - MSG_EXPORT_SECRET (LogLevel.DEBUG, R.string.msg_export_secret), - MSG_EXPORT_ALL (LogLevel.START, R.string.msg_export_all), - MSG_EXPORT_ERROR_NO_FILE (LogLevel.ERROR, R.string.msg_export_error_no_file), - MSG_EXPORT_ERROR_FOPEN (LogLevel.ERROR, R.string.msg_export_error_fopen), - MSG_EXPORT_ERROR_NO_URI (LogLevel.ERROR, R.string.msg_export_error_no_uri), - MSG_EXPORT_ERROR_URI_OPEN (LogLevel.ERROR, R.string.msg_export_error_uri_open), - MSG_EXPORT_ERROR_STORAGE (LogLevel.ERROR, R.string.msg_export_error_storage), - MSG_EXPORT_ERROR_DB (LogLevel.ERROR, R.string.msg_export_error_db), - MSG_EXPORT_ERROR_IO (LogLevel.ERROR, R.string.msg_export_error_io), - MSG_EXPORT_ERROR_KEY (LogLevel.ERROR, R.string.msg_export_error_key), - MSG_EXPORT_ERROR_UPLOAD (LogLevel.ERROR, R.string.msg_export_error_upload), - MSG_EXPORT_SUCCESS (LogLevel.OK, R.string.msg_export_success), - MSG_EXPORT_UPLOAD_SUCCESS (LogLevel.OK, R.string.msg_export_upload_success), + MSG_EXPORT_PUBLIC(LogLevel.DEBUG, R.string.msg_export_public), + MSG_EXPORT_SECRET(LogLevel.DEBUG, R.string.msg_export_secret), + MSG_EXPORT_ALL(LogLevel.START, R.string.msg_export_all), + MSG_EXPORT_ERROR_NO_FILE(LogLevel.ERROR, R.string.msg_export_error_no_file), + MSG_EXPORT_ERROR_FOPEN(LogLevel.ERROR, R.string.msg_export_error_fopen), + MSG_EXPORT_ERROR_NO_URI(LogLevel.ERROR, R.string.msg_export_error_no_uri), + MSG_EXPORT_ERROR_URI_OPEN(LogLevel.ERROR, R.string.msg_export_error_uri_open), + MSG_EXPORT_ERROR_STORAGE(LogLevel.ERROR, R.string.msg_export_error_storage), + MSG_EXPORT_ERROR_DB(LogLevel.ERROR, R.string.msg_export_error_db), + MSG_EXPORT_ERROR_IO(LogLevel.ERROR, R.string.msg_export_error_io), + MSG_EXPORT_ERROR_KEY(LogLevel.ERROR, R.string.msg_export_error_key), + MSG_EXPORT_ERROR_UPLOAD(LogLevel.ERROR, R.string.msg_export_error_upload), + MSG_EXPORT_SUCCESS(LogLevel.OK, R.string.msg_export_success), + MSG_EXPORT_UPLOAD_SUCCESS(LogLevel.OK, R.string.msg_export_upload_success), - MSG_CRT_UPLOAD_SUCCESS (LogLevel.OK, R.string.msg_crt_upload_success), + MSG_CRT_UPLOAD_SUCCESS(LogLevel.OK, R.string.msg_crt_upload_success), - MSG_ACC_SAVED (LogLevel.INFO, R.string.api_settings_save_msg), + MSG_ACC_SAVED(LogLevel.INFO, R.string.api_settings_save_msg), - MSG_WRONG_QR_CODE (LogLevel.ERROR, R.string.import_qr_code_wrong), + MSG_WRONG_QR_CODE(LogLevel.ERROR, R.string.import_qr_code_wrong), MSG_WRONG_QR_CODE_FP(LogLevel.ERROR, R.string.import_qr_code_fp), - MSG_NO_VALID_ENC (LogLevel.ERROR, R.string.error_invalid_data), + MSG_NO_VALID_ENC(LogLevel.ERROR, R.string.error_invalid_data), // get key MSG_GET_SUCCESS(LogLevel.OK, R.string.msg_download_success), @@ -737,38 +742,42 @@ public abstract class OperationResult implements Parcelable { MSG_GET_NO_PGP_PARTS(LogLevel.ERROR, R.string.msg_download_no_pgp_parts), MSG_GET_QUERY_TOO_SHORT(LogLevel.ERROR, R.string.msg_download_query_too_short), MSG_GET_TOO_MANY_RESPONSES(LogLevel.ERROR, R.string.msg_download_too_many_responses), - MSG_GET_QUERY_TOO_SHORT_OR_TOO_MANY_RESPONSES(LogLevel.ERROR, R.string.msg_download_query_too_short_or_too_many_responses), + MSG_GET_QUERY_TOO_SHORT_OR_TOO_MANY_RESPONSES(LogLevel.ERROR, R.string + .msg_download_query_too_short_or_too_many_responses), MSG_GET_QUERY_FAILED(LogLevel.ERROR, R.string.msg_download_query_failed), - MSG_DEL_ERROR_EMPTY (LogLevel.ERROR, R.string.msg_del_error_empty), - MSG_DEL_ERROR_MULTI_SECRET (LogLevel.DEBUG, R.string.msg_del_error_multi_secret), - MSG_DEL (LogLevel.START, R.plurals.msg_del), - MSG_DEL_KEY (LogLevel.DEBUG, R.string.msg_del_key), - MSG_DEL_KEY_FAIL (LogLevel.WARN, R.string.msg_del_key_fail), - MSG_DEL_CONSOLIDATE (LogLevel.DEBUG, R.string.msg_del_consolidate), - MSG_DEL_OK (LogLevel.OK, R.plurals.msg_del_ok), - MSG_DEL_FAIL (LogLevel.WARN, R.plurals.msg_del_fail), + MSG_DEL_ERROR_EMPTY(LogLevel.ERROR, R.string.msg_del_error_empty), + MSG_DEL_ERROR_MULTI_SECRET(LogLevel.DEBUG, R.string.msg_del_error_multi_secret), + MSG_DEL(LogLevel.START, R.plurals.msg_del), + MSG_DEL_KEY(LogLevel.DEBUG, R.string.msg_del_key), + MSG_DEL_KEY_FAIL(LogLevel.WARN, R.string.msg_del_key_fail), + MSG_DEL_CONSOLIDATE(LogLevel.DEBUG, R.string.msg_del_consolidate), + MSG_DEL_OK(LogLevel.OK, R.plurals.msg_del_ok), + MSG_DEL_FAIL(LogLevel.WARN, R.plurals.msg_del_fail), //export log - MSG_EXPORT_LOG(LogLevel.START,R.string.msg_export_log_start), - MSG_EXPORT_LOG_EXPORT_ERROR_NO_FILE(LogLevel.ERROR,R.string.msg_export_log_error_no_file), - MSG_EXPORT_LOG_EXPORT_ERROR_FOPEN(LogLevel.ERROR,R.string.msg_export_log_error_fopen), - MSG_EXPORT_LOG_EXPORT_ERROR_WRITING(LogLevel.ERROR,R.string.msg_export_log_error_writing), - MSG_EXPORT_LOG_EXPORT_SUCCESS (LogLevel.OK, R.string.msg_export_log_success), - ; + MSG_EXPORT_LOG(LogLevel.START, R.string.msg_export_log_start), + MSG_EXPORT_LOG_EXPORT_ERROR_NO_FILE(LogLevel.ERROR, R.string.msg_export_log_error_no_file), + MSG_EXPORT_LOG_EXPORT_ERROR_FOPEN(LogLevel.ERROR, R.string.msg_export_log_error_fopen), + MSG_EXPORT_LOG_EXPORT_ERROR_WRITING(LogLevel.ERROR, R.string.msg_export_log_error_writing), + MSG_EXPORT_LOG_EXPORT_SUCCESS(LogLevel.OK, R.string.msg_export_log_success),; public final int mMsgId; public final LogLevel mLevel; + LogType(LogLevel level, int msgId) { mLevel = level; mMsgId = msgId; } + public int getMsgId() { return mMsgId; } } - /** Enumeration of possible log levels. */ + /** + * Enumeration of possible log levels. + */ public static enum LogLevel { DEBUG, INFO, @@ -806,7 +815,8 @@ public abstract class OperationResult implements Parcelable { public void add(OperationResult subResult, int indent) { OperationLog subLog = subResult.getLog(); - mParcels.add(new SubLogEntryParcel(subResult, subLog.getFirst().mType, indent, subLog.getFirst().mParameters)); + mParcels.add(new SubLogEntryParcel(subResult, subLog.getFirst().mType, indent, subLog.getFirst() + .mParameters)); } boolean isSingleCompound() { @@ -818,7 +828,7 @@ public abstract class OperationResult implements Parcelable { } public boolean containsType(LogType type) { - for(LogEntryParcel entry : new IterableIterator<>(mParcels.iterator())) { + for (LogEntryParcel entry : new IterableIterator<>(mParcels.iterator())) { if (entry.mType == type) { return true; } @@ -827,7 +837,7 @@ public abstract class OperationResult implements Parcelable { } public boolean containsWarnings() { - for(LogEntryParcel entry : new IterableIterator<>(mParcels.iterator())) { + for (LogEntryParcel entry : new IterableIterator<>(mParcels.iterator())) { if (entry.mType.mLevel == LogLevel.WARN || entry.mType.mLevel == LogLevel.ERROR) { return true; } @@ -858,7 +868,7 @@ public abstract class OperationResult implements Parcelable { if (mParcels.isEmpty()) { return null; } - return mParcels.get(mParcels.size() -1); + return mParcels.get(mParcels.size() - 1); } @Override diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java index bf139e843..98b6c99d9 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java @@ -906,7 +906,8 @@ public class ProviderHelper { // If there is a secret key, merge new data (if any) and save the key for later CanonicalizedSecretKeyRing canSecretRing; try { - UncachedKeyRing secretRing = getCanonicalizedSecretKeyRing(publicRing.getMasterKeyId()).getUncachedKeyRing(); + UncachedKeyRing secretRing = getCanonicalizedSecretKeyRing(publicRing.getMasterKeyId()) + .getUncachedKeyRing(); // Merge data from new public ring into secret one log(LogType.MSG_IP_MERGE_SECRET); @@ -1031,7 +1032,8 @@ public class ProviderHelper { publicRing = secretRing.extractPublicKeyRing(); } - CanonicalizedPublicKeyRing canPublicRing = (CanonicalizedPublicKeyRing) publicRing.canonicalize(mLog, mIndent); + CanonicalizedPublicKeyRing canPublicRing = (CanonicalizedPublicKeyRing) publicRing.canonicalize(mLog, + mIndent); if (canPublicRing == null) { return new SaveKeyringResult(SaveKeyringResult.RESULT_ERROR, mLog, null); } @@ -1082,7 +1084,7 @@ public class ProviderHelper { indent += 1; final Cursor cursor = mContentResolver.query(KeyRingData.buildSecretKeyRingUri(), - new String[]{ KeyRingData.KEY_RING_DATA }, null, null, null); + new String[]{KeyRingData.KEY_RING_DATA}, null, null, null); if (cursor == null) { log.add(LogType.MSG_CON_ERROR_DB, indent); @@ -1143,7 +1145,7 @@ public class ProviderHelper { final Cursor cursor = mContentResolver.query( KeyRingData.buildPublicKeyRingUri(), - new String[]{ KeyRingData.KEY_RING_DATA }, null, null, null); + new String[]{KeyRingData.KEY_RING_DATA}, null, null, null); if (cursor == null) { log.add(LogType.MSG_CON_ERROR_DB, indent); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/CertifyActionsParcel.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/CertifyActionsParcel.java index 05d5546f6..d32d75279 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/CertifyActionsParcel.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/CertifyActionsParcel.java @@ -22,13 +22,9 @@ import android.os.Parcel; import android.os.Parcelable; import java.io.Serializable; -import java.nio.ByteBuffer; import java.util.ArrayList; -import java.util.Date; -import java.util.Map; import org.sufficientlysecure.keychain.pgp.WrappedUserAttribute; -import org.sufficientlysecure.keychain.service.input.CryptoInputParcel; import org.sufficientlysecure.keychain.util.ParcelableProxy; @@ -100,7 +96,7 @@ public class CertifyActionsParcel implements Parcelable { } public CertifyAction(long masterKeyId, ArrayList userIds, - ArrayList attributes) { + ArrayList attributes) { mMasterKeyId = masterKeyId; mUserIds = userIds; mUserAttributes = attributes; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainService.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainService.java index 6125363a5..048f58318 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainService.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainService.java @@ -35,15 +35,11 @@ import org.spongycastle.openpgp.PGPUtil; import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.keyimport.HkpKeyserver; -import org.sufficientlysecure.keychain.keyimport.Keyserver; import org.sufficientlysecure.keychain.keyimport.ParcelableKeyRing; -import org.sufficientlysecure.keychain.operations.CertifyOperation; import org.sufficientlysecure.keychain.operations.DeleteOperation; import org.sufficientlysecure.keychain.operations.EditKeyOperation; import org.sufficientlysecure.keychain.operations.ImportExportOperation; import org.sufficientlysecure.keychain.operations.PromoteKeyOperation; -import org.sufficientlysecure.keychain.operations.SignEncryptOperation; -import org.sufficientlysecure.keychain.operations.results.CertifyResult; import org.sufficientlysecure.keychain.operations.results.ConsolidateResult; import org.sufficientlysecure.keychain.operations.results.DecryptVerifyResult; import org.sufficientlysecure.keychain.operations.results.DeleteResult; @@ -52,12 +48,10 @@ import org.sufficientlysecure.keychain.operations.results.ImportKeyResult; import org.sufficientlysecure.keychain.operations.results.OperationResult; import org.sufficientlysecure.keychain.operations.results.OperationResult.OperationLog; import org.sufficientlysecure.keychain.operations.results.PromoteKeyResult; -import org.sufficientlysecure.keychain.operations.results.SignEncryptResult; import org.sufficientlysecure.keychain.pgp.CanonicalizedPublicKeyRing; import org.sufficientlysecure.keychain.pgp.PgpDecryptVerify; import org.sufficientlysecure.keychain.pgp.PgpDecryptVerifyInputParcel; import org.sufficientlysecure.keychain.pgp.Progressable; -import org.sufficientlysecure.keychain.pgp.SignEncryptParcel; import org.sufficientlysecure.keychain.pgp.exception.PgpGeneralException; import org.sufficientlysecure.keychain.pgp.exception.PgpGeneralMsgIdException; import org.sufficientlysecure.keychain.provider.ProviderHelper; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyFragment.java index 17e4f78f2..ae5bb77a4 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CertifyKeyFragment.java @@ -187,10 +187,12 @@ public class CertifyKeyFragment }; if (!OrbotHelper.isOrbotInstalled(getActivity())) { OrbotHelper.getInstallDialogFragmentWithThirdButton(new Messenger(ignoreTorHandler), - R.string.orbot_install_dialog_ignore_tor).show(getActivity().getSupportFragmentManager(), "installOrbot"); + R.string.orbot_install_dialog_ignore_tor).show(getActivity() + .getSupportFragmentManager(), "installOrbot"); } else if (!OrbotHelper.isOrbotRunning()) { OrbotHelper.getOrbotStartDialogFragment(new Messenger(ignoreTorHandler), - R.string.orbot_install_dialog_ignore_tor).show(getActivity().getSupportFragmentManager(), "startOrbot"); + R.string.orbot_install_dialog_ignore_tor).show(getActivity() + .getSupportFragmentManager(), "startOrbot"); } else { cryptoOperation(); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CreateKeyYubiKeyImportFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CreateKeyYubiKeyImportFragment.java index a91178eb7..eaabb3e65 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CreateKeyYubiKeyImportFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CreateKeyYubiKeyImportFragment.java @@ -129,7 +129,7 @@ public class CreateKeyYubiKeyImportFragment extends Fragment implements NfcListe } }; - if(OrbotHelper.isOrbotInRequiredState(R.string.orbot_ignore_tor, ignoreTor, proxyPrefs, + if (OrbotHelper.isOrbotInRequiredState(R.string.orbot_ignore_tor, ignoreTor, proxyPrefs, getActivity())) { importKey(proxyPrefs.parcelableProxy); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java index 4b4790a4e..45111fc0d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java @@ -47,7 +47,6 @@ import org.sufficientlysecure.keychain.util.Preferences; import org.sufficientlysecure.keychain.util.orbot.OrbotHelper; import java.io.IOException; -import java.net.Proxy; import java.util.ArrayList; public class ImportKeysActivity extends BaseNfcActivity { @@ -317,7 +316,8 @@ public class ImportKeysActivity extends BaseNfcActivity { * specified in user preferences */ - private void startCloudFragment(Bundle savedInstanceState, String query, boolean disableQueryEdit, String keyserver) { + private void startCloudFragment(Bundle savedInstanceState, String query, boolean disableQueryEdit, String + keyserver) { // However, if we're being restored from a previous state, // then we don't need to do anything and should return or else // we could end up with overlapping fragments. diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java index e94342cf9..afeaec4ea 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java @@ -71,12 +71,16 @@ import org.sufficientlysecure.keychain.ui.dialog.DeleteKeyDialogFragment; import org.sufficientlysecure.keychain.ui.util.KeyFormattingUtils; import org.sufficientlysecure.keychain.ui.adapter.KeyAdapter; import org.sufficientlysecure.keychain.ui.util.Notify; -import org.sufficientlysecure.keychain.util.*; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; +import org.sufficientlysecure.keychain.util.ExportHelper; +import org.sufficientlysecure.keychain.util.FabContainer; +import org.sufficientlysecure.keychain.util.Log; +import org.sufficientlysecure.keychain.util.ParcelableProxy; +import org.sufficientlysecure.keychain.util.Preferences; import org.sufficientlysecure.keychain.util.orbot.OrbotHelper; import se.emilsjolander.stickylistheaders.StickyListHeadersAdapter; import se.emilsjolander.stickylistheaders.StickyListHeadersListView; @@ -464,7 +468,7 @@ public class KeyListFragment extends LoaderFragment case R.id.menu_key_list_update_all_keys: final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(getActivity()) - .getProxyPrefs(); + .getProxyPrefs(); Runnable ignoreTor = new Runnable() { @Override public void run() { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java index c54f7cb87..7dd60b811 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java @@ -68,7 +68,7 @@ public class SettingsActivity extends PreferenceActivity { String action = getIntent().getAction(); if (action == null) return; - switch(action) { + switch (action) { case ACTION_PREFS_CLOUD: { addPreferencesFromResource(R.xml.cloud_search_prefs); @@ -319,7 +319,7 @@ public class SettingsActivity extends PreferenceActivity { } public Preference automaticallyFindPreference(String key) { - if(mFragment != null) { + if (mFragment != null) { return mFragment.findPreference(key); } else { return mActivity.findPreference(key); @@ -333,8 +333,7 @@ public class SettingsActivity extends PreferenceActivity { Preferences.setPreferenceManagerFileAndMode(mFragment.getPreferenceManager()); // Load the preferences from an XML resource mFragment.addPreferencesFromResource(R.xml.proxy_prefs); - } - else { + } else { Preferences.setPreferenceManagerFileAndMode(mActivity.getPreferenceManager()); // Load the preferences from an XML resource mActivity.addPreferencesFromResource(R.xml.proxy_prefs); @@ -359,7 +358,7 @@ public class SettingsActivity extends PreferenceActivity { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { Activity activity = mFragment != null ? mFragment.getActivity() : mActivity; - if ((Boolean)newValue) { + if ((Boolean) newValue) { boolean installed = OrbotHelper.isOrbotInstalled(activity); if (!installed) { Log.d(Constants.TAG, "Prompting to install Tor"); @@ -372,8 +371,7 @@ public class SettingsActivity extends PreferenceActivity { // let the enable tor box be checked return true; } - } - else { + } else { // we're unchecking Tor, so enable other proxy enableNormalProxyPrefs(); return true; @@ -424,7 +422,7 @@ public class SettingsActivity extends PreferenceActivity { Activity activity = mFragment != null ? mFragment.getActivity() : mActivity; try { int port = Integer.parseInt((String) newValue); - if(port < 0 || port > 65535) { + if (port < 0 || port > 65535) { Notify.create( activity, R.string.pref_proxy_port_err_invalid, diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java index 71f528ffb..a63c5b687 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java @@ -53,7 +53,6 @@ import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; import com.getbase.floatingactionbutton.FloatingActionButton; -import edu.cmu.cylab.starslinger.exchange.ExchangeActivity; import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.keyimport.ParcelableKeyRing; @@ -79,7 +78,12 @@ import org.sufficientlysecure.keychain.ui.util.Notify; import org.sufficientlysecure.keychain.ui.util.Notify.ActionListener; import org.sufficientlysecure.keychain.ui.util.Notify.Style; import org.sufficientlysecure.keychain.ui.util.QrCodeUtils; -import org.sufficientlysecure.keychain.util.*; +import org.sufficientlysecure.keychain.util.ContactHelper; +import org.sufficientlysecure.keychain.util.ExportHelper; +import org.sufficientlysecure.keychain.util.Log; +import org.sufficientlysecure.keychain.util.NfcHelper; +import org.sufficientlysecure.keychain.util.ParcelableProxy; +import org.sufficientlysecure.keychain.util.Preferences; import org.sufficientlysecure.keychain.util.orbot.OrbotHelper; import java.io.IOException; @@ -409,7 +413,7 @@ public class ViewKeyActivity extends BaseNfcActivity implements private void certifyImmediate() { Intent intent = new Intent(this, CertifyKeyActivity.class); - intent.putExtra(CertifyKeyActivity.EXTRA_KEY_IDS, new long[] {mMasterKeyId}); + intent.putExtra(CertifyKeyActivity.EXTRA_KEY_IDS, new long[]{mMasterKeyId}); startCertifyIntent(intent); } @@ -465,11 +469,11 @@ public class ViewKeyActivity extends BaseNfcActivity implements HashMap data = providerHelper.getGenericData( baseUri, - new String[] {KeychainContract.Keys.MASTER_KEY_ID, KeychainContract.KeyRings.HAS_SECRET}, - new int[] {ProviderHelper.FIELD_TYPE_INTEGER, ProviderHelper.FIELD_TYPE_INTEGER}); + new String[]{KeychainContract.Keys.MASTER_KEY_ID, KeychainContract.KeyRings.HAS_SECRET}, + new int[]{ProviderHelper.FIELD_TYPE_INTEGER, ProviderHelper.FIELD_TYPE_INTEGER}); exportHelper.showExportKeysDialog( - new long[] {(Long) data.get(KeychainContract.KeyRings.MASTER_KEY_ID)}, + new long[]{(Long) data.get(KeychainContract.KeyRings.MASTER_KEY_ID)}, Constants.Path.APP_DIR_FILE, ((Long) data.get(KeychainContract.KeyRings.HAS_SECRET) != 0) ); } catch (ProviderHelper.NotFoundException e) { @@ -493,7 +497,7 @@ public class ViewKeyActivity extends BaseNfcActivity implements // Create a new Messenger for the communication back Messenger messenger = new Messenger(returnHandler); DeleteKeyDialogFragment deleteKeyDialog = DeleteKeyDialogFragment.newInstance(messenger, - new long[] {mMasterKeyId}); + new long[]{mMasterKeyId}); deleteKeyDialog.show(getSupportFragmentManager(), "deleteKeyDialog"); } @@ -630,7 +634,7 @@ public class ViewKeyActivity extends BaseNfcActivity implements long keyId = new ProviderHelper(this) .getCachedPublicKeyRing(dataUri) .extractOrGetMasterKeyId(); - long[] encryptionKeyIds = new long[] {keyId}; + long[] encryptionKeyIds = new long[]{keyId}; Intent intent; if (text) { intent = new Intent(this, EncryptTextActivity.class); @@ -774,7 +778,7 @@ public class ViewKeyActivity extends BaseNfcActivity implements // These are the rows that we will retrieve. - static final String[] PROJECTION = new String[] { + static final String[] PROJECTION = new String[]{ KeychainContract.KeyRings._ID, KeychainContract.KeyRings.MASTER_KEY_ID, KeychainContract.KeyRings.USER_ID, @@ -862,7 +866,8 @@ public class ViewKeyActivity extends BaseNfcActivity implements AsyncTask photoTask = new AsyncTask() { protected Bitmap doInBackground(Long... mMasterKeyId) { - return ContactHelper.loadPhotoByMasterKeyId(getContentResolver(), mMasterKeyId[0], true); + return ContactHelper.loadPhotoByMasterKeyId(getContentResolver(), + mMasterKeyId[0], true); } protected void onPostExecute(Bitmap photo) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java index 5bdd25f4c..3b88462e5 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java @@ -57,7 +57,6 @@ import org.sufficientlysecure.keychain.util.ParcelableProxy; import org.sufficientlysecure.keychain.util.Preferences; import org.sufficientlysecure.keychain.util.orbot.OrbotHelper; -import java.net.Proxy; import java.util.ArrayList; import java.util.Hashtable; import java.util.List; @@ -194,7 +193,8 @@ public class ViewKeyTrustFragment extends LoaderFragment implements mStartSearch.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(getActivity()).getProxyPrefs(); + final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(getActivity()) + .getProxyPrefs(); Runnable ignoreTor = new Runnable() { @Override @@ -283,11 +283,13 @@ public class ViewKeyTrustFragment extends LoaderFragment implements return new ResultPage(getString(R.string.key_trust_results_prefix), proofList); } - private SpannableStringBuilder appendProofLinks(SpannableStringBuilder ssb, final String fingerprint, final Proof proof) throws KeybaseException { + private SpannableStringBuilder appendProofLinks(SpannableStringBuilder ssb, final String fingerprint, final + Proof proof) throws KeybaseException { int startAt = ssb.length(); String handle = proof.getHandle(); ssb.append(handle); - ssb.setSpan(new URLSpan(proof.getServiceUrl()), startAt, startAt + handle.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + ssb.setSpan(new URLSpan(proof.getServiceUrl()), startAt, startAt + handle.length(), Spanned + .SPAN_EXCLUSIVE_EXCLUSIVE); if (haveProofFor(proof.getType())) { ssb.append("\u00a0["); startAt = ssb.length(); @@ -296,7 +298,8 @@ public class ViewKeyTrustFragment extends LoaderFragment implements ClickableSpan clicker = new ClickableSpan() { @Override public void onClick(View view) { - final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(getActivity()).getProxyPrefs(); + final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(getActivity()) + .getProxyPrefs(); Runnable ignoreTor = new Runnable() { @Override @@ -349,19 +352,35 @@ public class ViewKeyTrustFragment extends LoaderFragment implements private String getProofNarrative(int proofType) { int stringIndex; switch (proofType) { - case Proof.PROOF_TYPE_TWITTER: stringIndex = R.string.keybase_narrative_twitter; break; - case Proof.PROOF_TYPE_GITHUB: stringIndex = R.string.keybase_narrative_github; break; - case Proof.PROOF_TYPE_DNS: stringIndex = R.string.keybase_narrative_dns; break; - case Proof.PROOF_TYPE_WEB_SITE: stringIndex = R.string.keybase_narrative_web_site; break; - case Proof.PROOF_TYPE_HACKERNEWS: stringIndex = R.string.keybase_narrative_hackernews; break; - case Proof.PROOF_TYPE_COINBASE: stringIndex = R.string.keybase_narrative_coinbase; break; - case Proof.PROOF_TYPE_REDDIT: stringIndex = R.string.keybase_narrative_reddit; break; - default: stringIndex = R.string.keybase_narrative_unknown; + case Proof.PROOF_TYPE_TWITTER: + stringIndex = R.string.keybase_narrative_twitter; + break; + case Proof.PROOF_TYPE_GITHUB: + stringIndex = R.string.keybase_narrative_github; + break; + case Proof.PROOF_TYPE_DNS: + stringIndex = R.string.keybase_narrative_dns; + break; + case Proof.PROOF_TYPE_WEB_SITE: + stringIndex = R.string.keybase_narrative_web_site; + break; + case Proof.PROOF_TYPE_HACKERNEWS: + stringIndex = R.string.keybase_narrative_hackernews; + break; + case Proof.PROOF_TYPE_COINBASE: + stringIndex = R.string.keybase_narrative_coinbase; + break; + case Proof.PROOF_TYPE_REDDIT: + stringIndex = R.string.keybase_narrative_reddit; + break; + default: + stringIndex = R.string.keybase_narrative_unknown; } return getActivity().getString(stringIndex); } - private void appendIfOK(Hashtable> table, Integer proofType, Proof proof) throws KeybaseException { + private void appendIfOK(Hashtable> table, Integer proofType, Proof proof) throws + KeybaseException { ArrayList list = table.get(proofType); if (list == null) { list = new ArrayList(); @@ -373,14 +392,22 @@ public class ViewKeyTrustFragment extends LoaderFragment implements // which proofs do we have working verifiers for? private boolean haveProofFor(int proofType) { switch (proofType) { - case Proof.PROOF_TYPE_TWITTER: return true; - case Proof.PROOF_TYPE_GITHUB: return true; - case Proof.PROOF_TYPE_DNS: return true; - case Proof.PROOF_TYPE_WEB_SITE: return true; - case Proof.PROOF_TYPE_HACKERNEWS: return true; - case Proof.PROOF_TYPE_COINBASE: return true; - case Proof.PROOF_TYPE_REDDIT: return true; - default: return false; + case Proof.PROOF_TYPE_TWITTER: + return true; + case Proof.PROOF_TYPE_GITHUB: + return true; + case Proof.PROOF_TYPE_DNS: + return true; + case Proof.PROOF_TYPE_WEB_SITE: + return true; + case Proof.PROOF_TYPE_HACKERNEWS: + return true; + case Proof.PROOF_TYPE_COINBASE: + return true; + case Proof.PROOF_TYPE_REDDIT: + return true; + default: + return false; } } @@ -447,7 +474,8 @@ public class ViewKeyTrustFragment extends LoaderFragment implements ssb.append(proofLabel); if (proofUrl != null) { URLSpan postLink = new URLSpan(proofUrl); - ssb.setSpan(postLink, length, length + proofLabel.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + ssb.setSpan(postLink, length, length + proofLabel.length(), Spanned + .SPAN_EXCLUSIVE_EXCLUSIVE); } if (Proof.PROOF_TYPE_DNS == proof.getType()) { ssb.append(" ").append(getString(R.string.keybase_for_the_domain)).append(" "); @@ -457,7 +485,8 @@ public class ViewKeyTrustFragment extends LoaderFragment implements length = ssb.length(); URLSpan presenceLink = new URLSpan(presenceUrl); ssb.append(presenceLabel); - ssb.setSpan(presenceLink, length, length + presenceLabel.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + ssb.setSpan(presenceLink, length, length + presenceLabel.length(), Spanned + .SPAN_EXCLUSIVE_EXCLUSIVE); if (Proof.PROOF_TYPE_REDDIT == proof.getType()) { ssb.append(", "). append(getString(R.string.keybase_reddit_attribution)). diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/ImportKeysListCloudLoader.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/ImportKeysListCloudLoader.java index a4f8f22e0..c7f69207c 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/ImportKeysListCloudLoader.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/ImportKeysListCloudLoader.java @@ -30,7 +30,6 @@ import org.sufficientlysecure.keychain.util.Log; import org.sufficientlysecure.keychain.util.ParcelableProxy; import org.sufficientlysecure.keychain.util.Preferences; -import java.net.Proxy; import java.util.ArrayList; public class ImportKeysListCloudLoader diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/AddKeyserverDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/AddKeyserverDialogFragment.java index 9a2842edd..f6d97b300 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/AddKeyserverDialogFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/AddKeyserverDialogFragment.java @@ -30,7 +30,6 @@ import android.os.Message; import android.os.Messenger; import android.os.RemoteException; import android.support.v4.app.DialogFragment; -import android.test.suitebuilder.TestSuiteBuilder; import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.View; @@ -48,15 +47,15 @@ import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.keyimport.HkpKeyserver; import org.sufficientlysecure.keychain.util.Log; -import org.sufficientlysecure.keychain.util.ParcelableProxy; import org.sufficientlysecure.keychain.util.Preferences; import org.sufficientlysecure.keychain.util.TlsHelper; import org.sufficientlysecure.keychain.util.orbot.OrbotHelper; import java.io.IOException; -import java.net.*; - -import javax.net.ssl.HttpsURLConnection; +import java.net.MalformedURLException; +import java.net.Proxy; +import java.net.URI; +import java.net.URISyntaxException; public class AddKeyserverDialogFragment extends DialogFragment implements OnEditorActionListener { private static final String ARG_MESSENGER = "messenger"; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/InstallDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/InstallDialogFragment.java index 01ff4715d..7b3f9ad28 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/InstallDialogFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/InstallDialogFragment.java @@ -48,15 +48,16 @@ public class InstallDialogFragment extends DialogFragment { * Creates a dialog which prompts the user to install an application. Consists of two default buttons ("Install" * and "Cancel") and an optional third button. Callbacks are provided only for the middle button, if set. * - * @param messenger required only for callback from middle button if it has been set + * @param messenger required only for callback from middle button if it has been set * @param title - * @param message content of dialog + * @param message content of dialog * @param packageToInstall package name of application to install - * @param middleButton if not null, adds a third button to the app with a call back + * @param middleButton if not null, adds a third button to the app with a call back * @return The dialog to display */ public static InstallDialogFragment newInstance(Messenger messenger, int title, int message, - String packageToInstall, int middleButton, boolean useMiddleButton) { + String packageToInstall, int middleButton, boolean + useMiddleButton) { InstallDialogFragment frag = new InstallDialogFragment(); Bundle args = new Bundle(); args.putParcelable(ARG_MESSENGER, messenger); @@ -125,7 +126,7 @@ public class InstallDialogFragment extends DialogFragment { @Override public void onClick(DialogInterface dialog, int which) { Message msg = new Message(); - msg.what=MESSAGE_MIDDLE_CLICKED; + msg.what = MESSAGE_MIDDLE_CLICKED; try { messenger.send(msg); } catch (RemoteException e) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/OrbotStartDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/OrbotStartDialogFragment.java index e9092b14a..4736eddca 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/OrbotStartDialogFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/OrbotStartDialogFragment.java @@ -25,6 +25,7 @@ import android.os.Message; import android.os.Messenger; import android.os.RemoteException; import android.support.v4.app.DialogFragment; + import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.util.Log; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PreferenceInstallDialogFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PreferenceInstallDialogFragment.java index 8236ff9d7..b9b4da83a 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PreferenceInstallDialogFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/PreferenceInstallDialogFragment.java @@ -27,6 +27,7 @@ import android.os.Message; import android.os.Messenger; import android.os.RemoteException; import android.app.DialogFragment; + import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.util.Log; @@ -47,15 +48,16 @@ public class PreferenceInstallDialogFragment extends DialogFragment { * Creates a dialog which prompts the user to install an application. Consists of two default buttons ("Install" * and "Cancel") and an optional third button. Callbacks are provided only for the middle button, if set. * - * @param messenger required only for callback from middle button if it has been set + * @param messenger required only for callback from middle button if it has been set * @param title - * @param message content of dialog + * @param message content of dialog * @param packageToInstall package name of application to install - * @param middleButton if not null, adds a third button to the app with a call back + * @param middleButton if not null, adds a third button to the app with a call back * @return The dialog to display */ public static PreferenceInstallDialogFragment newInstance(Messenger messenger, int title, int message, - String packageToInstall, int middleButton, boolean useMiddleButton) { + String packageToInstall, int middleButton, boolean + useMiddleButton) { PreferenceInstallDialogFragment frag = new PreferenceInstallDialogFragment(); Bundle args = new Bundle(); args.putParcelable(ARG_MESSENGER, messenger); @@ -80,7 +82,7 @@ public class PreferenceInstallDialogFragment extends DialogFragment { * @return */ public static PreferenceInstallDialogFragment newInstance(int title, int message, - String packageToInstall) { + String packageToInstall) { return newInstance(null, title, message, packageToInstall, -1, false); } @@ -125,7 +127,7 @@ public class PreferenceInstallDialogFragment extends DialogFragment { @Override public void onClick(DialogInterface dialog, int which) { Message msg = new Message(); - msg.what=MESSAGE_MIDDLE_CLICKED; + msg.what = MESSAGE_MIDDLE_CLICKED; try { messenger.send(msg); } catch (RemoteException e) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ParcelableProxy.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ParcelableProxy.java index 601547fa9..4898e7f1a 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ParcelableProxy.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ParcelableProxy.java @@ -54,7 +54,7 @@ public class ParcelableProxy implements Parcelable { } public Proxy getProxy() { - if(mProxyHost == null) return null; + if (mProxyHost == null) return null; Proxy.Type type = null; switch (mProxyType) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java index 9351f6b3b..37d4c2289 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/Preferences.java @@ -292,8 +292,7 @@ public class Preferences { if (useTor) { return new ProxyPrefs(true, false, Constants.Orbot.PROXY_HOST, Constants.Orbot.PROXY_PORT, Constants.Orbot.PROXY_TYPE); - } - else if (useNormalProxy) { + } else if (useNormalProxy) { return new ProxyPrefs(useTor, useNormalProxy, getProxyHost(), getProxyPort(), getProxyType()); } else { return new ProxyPrefs(false, false, null, -1, null); @@ -314,7 +313,7 @@ public class Preferences { public ProxyPrefs(boolean torEnabled, boolean normalPorxyEnabled, String hostName, int port, Proxy.Type type) { this.torEnabled = torEnabled; this.normalPorxyEnabled = normalPorxyEnabled; - if(!torEnabled && !normalPorxyEnabled) this.parcelableProxy = new ParcelableProxy(null, -1, null); + if (!torEnabled && !normalPorxyEnabled) this.parcelableProxy = new ParcelableProxy(null, -1, null); else this.parcelableProxy = new ParcelableProxy(hostName, port, type); } } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/TlsHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/TlsHelper.java index 58c250cab..843d853c2 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/TlsHelper.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/TlsHelper.java @@ -62,7 +62,7 @@ public class TlsHelper { ByteArrayOutputStream baos = new ByteArrayOutputStream(); int reads = is.read(); - while(reads != -1){ + while (reads != -1) { baos.write(reads); reads = is.read(); } @@ -75,17 +75,6 @@ public class TlsHelper { } } - public static URLConnection opeanConnection(URL url) throws IOException, TlsHelperException { - if (url.getProtocol().equals("https")) { - for (String domain : sStaticCA.keySet()) { - if (url.getHost().endsWith(domain)) { - return openCAConnection(sStaticCA.get(domain), url); - } - } - } - return url.openConnection(); - } - public static void pinCertificateIfNecessary(OkHttpClient client, URL url) throws TlsHelperException, IOException { if (url.getProtocol().equals("https")) { for (String domain : sStaticCA.keySet()) { @@ -103,7 +92,7 @@ public class TlsHelper { * TODO: Refactor - More like SSH StrictHostKeyChecking than pinning? * * @param certificate certificate to pin - * @param client OkHttpClient to enforce pinning on + * @param client OkHttpClient to enforce pinning on * @throws TlsHelperException * @throws IOException */ diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/OrbotHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/OrbotHelper.java index 5e0e393c5..f57496767 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/OrbotHelper.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/OrbotHelper.java @@ -77,15 +77,13 @@ public class OrbotHelper { public final static String ACTION_START_TOR = "org.torproject.android.START_TOR"; - public static boolean isOrbotRunning() - { + public static boolean isOrbotRunning() { int procId = TorServiceUtils.findProcessId(TOR_BIN_PATH); return (procId != -1); } - public static boolean isOrbotInstalled(Context context) - { + public static boolean isOrbotInstalled(Context context) { return isAppInstalled(ORBOT_PACKAGE_NAME, context); } @@ -102,30 +100,28 @@ public class OrbotHelper { } /** - * hack to get around teh fact that PreferenceActivity still supports only android.app.DialogFragment + * hack to get around the fact that PreferenceActivity still supports only android.app.DialogFragment * * @return */ - public static android.app.DialogFragment getPreferenceInstallDialogFragment() - { + public static android.app.DialogFragment getPreferenceInstallDialogFragment() { return PreferenceInstallDialogFragment.newInstance(R.string.orbot_install_dialog_title, R.string.orbot_install_dialog_content, ORBOT_PACKAGE_NAME); } - public static DialogFragment getInstallDialogFragment() - { + public static DialogFragment getInstallDialogFragment() { return InstallDialogFragment.newInstance(R.string.orbot_install_dialog_title, R.string.orbot_install_dialog_content, ORBOT_PACKAGE_NAME); } - public static DialogFragment getInstallDialogFragmentWithThirdButton(Messenger messenger, int middleButton) - { + public static DialogFragment getInstallDialogFragmentWithThirdButton(Messenger messenger, int middleButton) { return InstallDialogFragment.newInstance(messenger, R.string.orbot_install_dialog_title, R.string.orbot_install_dialog_content, ORBOT_PACKAGE_NAME, middleButton, true); } public static DialogFragment getOrbotStartDialogFragment(Messenger messenger, int middleButton) { - return OrbotStartDialogFragment.newInstance(messenger, R.string.orbot_start_dialog_title, R.string.orbot_start_dialog_content, + return OrbotStartDialogFragment.newInstance(messenger, R.string.orbot_start_dialog_title, R.string + .orbot_start_dialog_content, middleButton); } @@ -139,7 +135,7 @@ public class OrbotHelper { /** * checks if Tor is enabled and if it is, that Orbot is installed and runnign. Generates appropriate dialogs. * - * @param middleButton resourceId of string to display as the middle button of install and enable dialogs + * @param middleButton resourceId of string to display as the middle button of install and enable dialogs * @param middleButtonRunnable runnable to be executed if the user clicks on the middle button * @param proxyPrefs * @param fragmentActivity @@ -159,7 +155,7 @@ public class OrbotHelper { return true; } - if(!OrbotHelper.isOrbotInstalled(fragmentActivity)) { + if (!OrbotHelper.isOrbotInstalled(fragmentActivity)) { OrbotHelper.getInstallDialogFragmentWithThirdButton( new Messenger(ignoreTorHandler), @@ -167,7 +163,7 @@ public class OrbotHelper { ).show(fragmentActivity.getSupportFragmentManager(), "OrbotHelperOrbotInstallDialog"); return false; - } else if(!OrbotHelper.isOrbotRunning()) { + } else if (!OrbotHelper.isOrbotRunning()) { OrbotHelper.getOrbotStartDialogFragment(new Messenger(ignoreTorHandler), R.string.orbot_install_dialog_ignore_tor) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/TorServiceUtils.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/TorServiceUtils.java index 127e9d43f..b1d8327fb 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/TorServiceUtils.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/orbot/TorServiceUtils.java @@ -49,14 +49,14 @@ package org.sufficientlysecure.keychain.util.orbot; +import android.util.Log; + import java.io.BufferedReader; import java.io.File; import java.io.InputStreamReader; import java.net.URLEncoder; import java.util.StringTokenizer; -import android.util.Log; - /** * This class is taken from the NetCipher library: https://github.com/guardianproject/NetCipher/ */ @@ -68,23 +68,18 @@ public class TorServiceUtils { public final static String SHELL_CMD_PS = "ps"; public final static String SHELL_CMD_PIDOF = "pidof"; - public static int findProcessId(String command) - { + public static int findProcessId(String command) { int procId = -1; - try - { + try { procId = findProcessIdWithPidOf(command); if (procId == -1) procId = findProcessIdWithPS(command); - } catch (Exception e) - { - try - { + } catch (Exception e) { + try { procId = findProcessIdWithPS(command); - } catch (Exception e2) - { + } catch (Exception e2) { Log.e(TAG, "Unable to get proc id for command: " + URLEncoder.encode(command), e2); } } @@ -93,8 +88,7 @@ public class TorServiceUtils { } // use 'pidof' command - public static int findProcessIdWithPidOf(String command) throws Exception - { + public static int findProcessIdWithPidOf(String command) throws Exception { int procId = -1; @@ -104,7 +98,7 @@ public class TorServiceUtils { String baseName = new File(command).getName(); // fix contributed my mikos on 2010.12.10 - procPs = r.exec(new String[] { + procPs = r.exec(new String[]{ SHELL_CMD_PIDOF, baseName }); // procPs = r.exec(SHELL_CMD_PIDOF); @@ -112,16 +106,13 @@ public class TorServiceUtils { BufferedReader reader = new BufferedReader(new InputStreamReader(procPs.getInputStream())); String line = null; - while ((line = reader.readLine()) != null) - { + while ((line = reader.readLine()) != null) { - try - { + try { // this line should just be the process id procId = Integer.parseInt(line.trim()); break; - } catch (NumberFormatException e) - { + } catch (NumberFormatException e) { Log.e("TorServiceUtils", "unable to parse process pid: " + line, e); } } @@ -131,8 +122,7 @@ public class TorServiceUtils { } // use 'ps' command - public static int findProcessIdWithPS(String command) throws Exception - { + public static int findProcessIdWithPS(String command) throws Exception { int procId = -1; @@ -145,10 +135,8 @@ public class TorServiceUtils { BufferedReader reader = new BufferedReader(new InputStreamReader(procPs.getInputStream())); String line = null; - while ((line = reader.readLine()) != null) - { - if (line.indexOf(' ' + command) != -1) - { + while ((line = reader.readLine()) != null) { + if (line.indexOf(' ' + command) != -1) { StringTokenizer st = new StringTokenizer(line, " "); st.nextToken(); // proc owner