aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2016-01-11 17:30:03 +0100
committerVincent Breitmoser <valodim@mugenguild.com>2016-01-11 17:30:03 +0100
commite66c27c08129b278bcc699a7f2511d69d5dc0a29 (patch)
tree35135cd2323f2bcf383ac2b9c123791ef395fcb1 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service
parentdfeb1223783b5b47c8c3d8e9b1703df4e5512bb7 (diff)
downloadopen-keychain-e66c27c08129b278bcc699a7f2511d69d5dc0a29.tar.gz
open-keychain-e66c27c08129b278bcc699a7f2511d69d5dc0a29.tar.bz2
open-keychain-e66c27c08129b278bcc699a7f2511d69d5dc0a29.zip
passphrasecache: update defaults, add "forever" setting
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java
index 606daabed..f9ab58f5b 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/PassphraseCacheService.java
@@ -365,6 +365,8 @@ public class PassphraseCacheService extends Service {
CachedPassphrase cachedPassphrase;
if (timeoutTtl == 0L) {
cachedPassphrase = CachedPassphrase.getPassphraseLock(passphrase, primaryUserID);
+ } else if (timeoutTtl >= Integer.MAX_VALUE) {
+ cachedPassphrase = CachedPassphrase.getPassphraseNoTimeout(passphrase, primaryUserID);
} else {
cachedPassphrase = CachedPassphrase.getPassphraseTtlTimeout(passphrase, primaryUserID, timeoutTtl);
@@ -427,7 +429,10 @@ public class PassphraseCacheService extends Service {
// Stop all ttl alarms
for (int i = 0; i < mPassphraseCache.size(); i++) {
- am.cancel(buildIntent(this, mPassphraseCache.keyAt(i)));
+ CachedPassphrase cachedPassphrase = mPassphraseCache.valueAt(i);
+ if (cachedPassphrase.mTimeoutMode == TimeoutMode.TTL) {
+ am.cancel(buildIntent(this, mPassphraseCache.keyAt(i)));
+ }
}
mPassphraseCache.clear();