aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java
diff options
context:
space:
mode:
authorAdithya Abraham Philip <adithyaphilip@gmail.com>2015-06-11 05:33:31 +0530
committerAdithya Abraham Philip <adithyaphilip@gmail.com>2015-07-03 20:46:15 +0530
commit79fc0f97eafd6a70bd40bb8cddd50de52ef84f7c (patch)
treeb98f56851448e3ee5f49d548fcf414074ebdd5ba /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java
parentaa7ad4ac634123db73dbbd59930df49086c9395c (diff)
downloadopen-keychain-79fc0f97eafd6a70bd40bb8cddd50de52ef84f7c.tar.gz
open-keychain-79fc0f97eafd6a70bd40bb8cddd50de52ef84f7c.tar.bz2
open-keychain-79fc0f97eafd6a70bd40bb8cddd50de52ef84f7c.zip
added proxy to all import operations using KeychainService
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java30
1 files changed, 21 insertions, 9 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java
index da713d0d8..1a03b8102 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysProxyActivity.java
@@ -44,7 +44,9 @@ import org.sufficientlysecure.keychain.service.ImportKeyringParcel;
import org.sufficientlysecure.keychain.ui.base.CryptoOperationHelper;
import org.sufficientlysecure.keychain.util.IntentIntegratorSupportV4;
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 java.util.ArrayList;
import java.util.Locale;
@@ -157,8 +159,7 @@ public class ImportKeysProxyActivity extends FragmentActivity
returnResult(intent);
return;
}
-
- String fingerprint = uri.getEncodedSchemeSpecificPart().toLowerCase(Locale.ENGLISH);
+ final String fingerprint = uri.getEncodedSchemeSpecificPart().toLowerCase(Locale.ENGLISH);
if (!fingerprint.matches("[a-fA-F0-9]{40}")) {
SingletonResult result = new SingletonResult(
SingletonResult.RESULT_ERROR, LogType.MSG_WRONG_QR_CODE_FP);
@@ -194,23 +195,23 @@ public class ImportKeysProxyActivity extends FragmentActivity
}
}
- public void importKeys(byte[] keyringData) {
+ public void importKeys(byte[] keyringData, ParcelableProxy parcelableProxy) {
ParcelableKeyRing keyEntry = new ParcelableKeyRing(keyringData);
ArrayList<ParcelableKeyRing> selectedEntries = new ArrayList<>();
selectedEntries.add(keyEntry);
- startImportService(selectedEntries);
+ startImportService(selectedEntries, parcelableProxy);
}
- public void importKeys(String fingerprint) {
+ public void importKeys(String fingerprint, ParcelableProxy parcelableProxy) {
ParcelableKeyRing keyEntry = new ParcelableKeyRing(fingerprint, null, null);
ArrayList<ParcelableKeyRing> selectedEntries = new ArrayList<>();
selectedEntries.add(keyEntry);
- startImportService(selectedEntries);
+ startImportService(selectedEntries, parcelableProxy);
}
- private void startImportService(ArrayList<ParcelableKeyRing> keyRings) {
+ private void startImportService(ArrayList<ParcelableKeyRing> keyRings, ParcelableProxy parcelableProxy) {
// search config
{
@@ -273,8 +274,19 @@ public class ImportKeysProxyActivity extends FragmentActivity
// only one message sent during the beam
NdefMessage msg = (NdefMessage) rawMsgs[0];
// record 0 contains the MIME type, record 1 is the AAR, if present
- byte[] receivedKeyringBytes = msg.getRecords()[0].getPayload();
- importKeys(receivedKeyringBytes);
+ final byte[] receivedKeyringBytes = msg.getRecords()[0].getPayload();
+ final Preferences.ProxyPrefs proxyPrefs = Preferences.getPreferences(this)
+ .getProxyPrefs();
+ Runnable ignoreTor = new Runnable() {
+ @Override
+ public void run() {
+ importKeys(receivedKeyringBytes, new ParcelableProxy(null, -1, null));
+ }
+ };
+
+ if (OrbotHelper.isOrbotInRequiredState(R.string.orbot_ignore_tor, ignoreTor, proxyPrefs, this)) {
+ importKeys(receivedKeyringBytes, proxyPrefs.parcelableProxy);
+ }
}
}