diff options
author | Kenny Root <kenny@the-b.org> | 2009-06-26 06:25:39 +0000 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2009-06-26 06:25:39 +0000 |
commit | 724af8e4bbf86f6c42654b72b272d83d6fa7164a (patch) | |
tree | d245d26397f7fb372d005dcfe2a5689723e9550d /src/org | |
parent | 12c1e528b5c5dc325d2b3887104f0cf277b83d0b (diff) | |
download | connectbot-724af8e4bbf86f6c42654b72b272d83d6fa7164a.tar.gz connectbot-724af8e4bbf86f6c42654b72b272d83d6fa7164a.tar.bz2 connectbot-724af8e4bbf86f6c42654b72b272d83d6fa7164a.zip |
Clean up auth agent forwarder, add auth agent locking
git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@332 df292f66-193f-0410-a5fc-6d59da041ff2
Diffstat (limited to 'src/org')
-rw-r--r-- | src/org/connectbot/transport/SSH.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/org/connectbot/transport/SSH.java b/src/org/connectbot/transport/SSH.java index 9d08592..a54e091 100644 --- a/src/org/connectbot/transport/SSH.java +++ b/src/org/connectbot/transport/SSH.java @@ -131,6 +131,7 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC private int height; private String useAuthAgent = HostDatabase.AUTHAGENT_NO; + private String agentLockPassphrase; public class HostKeyVerifier implements ServerHostKeyVerifier { public boolean verifyServerHostKey(String hostname, int port, @@ -883,4 +884,26 @@ public class SSH extends AbsTransport implements ConnectionMonitor, InteractiveC public boolean removeIdentity(byte[] publicKey) { return manager.removeKey(publicKey); } + + public boolean isAgentLocked() { + return agentLockPassphrase != null; + } + + public boolean requestAgentUnlock(String unlockPassphrase) { + if (agentLockPassphrase == null) + return false; + + if (agentLockPassphrase.equals(unlockPassphrase)) + agentLockPassphrase = null; + + return agentLockPassphrase == null; + } + + public boolean setAgentLock(String lockPassphrase) { + if (agentLockPassphrase != null) + return false; + + agentLockPassphrase = lockPassphrase; + return true; + } } |