aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2015-10-21 21:54:39 +0200
committerVincent Breitmoser <valodim@mugenguild.com>2015-10-21 21:54:39 +0200
commitd149bfd3dbc1010d661b81e72e442c4d4f7b9fa0 (patch)
treeab3fdc8212d34a1355c7a8557559ce609dc8a7b0
parentf7bfe932ec146ae26be347fbbdade9188b15af80 (diff)
downloadopen-keychain-d149bfd3dbc1010d661b81e72e442c4d4f7b9fa0.tar.gz
open-keychain-d149bfd3dbc1010d661b81e72e442c4d4f7b9fa0.tar.bz2
open-keychain-d149bfd3dbc1010d661b81e72e442c4d4f7b9fa0.zip
displaytextactivity: truncate displayed text if too long
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java3
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DisplayTextActivity.java8
-rw-r--r--OpenKeychain/src/main/res/values/strings.xml2
3 files changed, 13 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
index 9623eaeda..79175e9ad 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
@@ -79,6 +79,9 @@ public final class Constants {
public static final int TEMPFILE_TTL = 24 * 60 * 60 * 1000; // 1 day
+ // the maximal length of plaintext to read in encrypt/decrypt text activities
+ public static final int TEXT_LENGTH_LIMIT = 1024 * 50;
+
public static final String SAFESLINGER_SERVER = "safeslinger-openpgp.appspot.com";
public static final class Path {
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DisplayTextActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DisplayTextActivity.java
index 4bcca09f1..2fa1aa1c2 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DisplayTextActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DisplayTextActivity.java
@@ -28,9 +28,12 @@ import android.support.v4.app.Fragment;
import android.widget.Toast;
import org.openintents.openpgp.OpenPgpMetadata;
+import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.operations.results.DecryptVerifyResult;
import org.sufficientlysecure.keychain.ui.base.BaseActivity;
+import org.sufficientlysecure.keychain.ui.util.Notify;
+import org.sufficientlysecure.keychain.ui.util.Notify.Style;
import org.sufficientlysecure.keychain.util.FileHelper;
public class DisplayTextActivity extends BaseActivity {
@@ -73,6 +76,11 @@ public class DisplayTextActivity extends BaseActivity {
}
if (plaintext != null) {
+ if (plaintext.length() > Constants.TEXT_LENGTH_LIMIT) {
+ plaintext = plaintext.substring(0, Constants.TEXT_LENGTH_LIMIT);
+ Notify.create(this, R.string.snack_text_too_long, Style.WARN).show();
+ }
+
loadFragment(plaintext, result);
} else {
Toast.makeText(this, R.string.error_invalid_data, Toast.LENGTH_LONG).show();
diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml
index dd120023b..4df144531 100644
--- a/OpenKeychain/src/main/res/values/strings.xml
+++ b/OpenKeychain/src/main/res/values/strings.xml
@@ -1663,10 +1663,12 @@
<string name="snack_backup_exists">"Backup already exists!"</string>
<string name="snack_backup_saved_dir">"Saved to OpenKeychain directory"</string>
<string name="btn_backup_back">Go back to check</string>
+ <string name="snack_text_too_long">"Text is too long to show in full!"</string>
<string name="share_log_dialog_title">"Share log?"</string>
<string name="share_log_dialog_message">"While logs can be super helpful for developers to find bugs in OpenKeychain, they can contain potential sensitive information such as data about the updated keys. Please make sure you are okay with sharing this information."</string>
<string name="share_log_dialog_share_button">"Share"</string>
<string name="share_log_dialog_cancel_button">"Cancel"</string>
+
</resources>