@Override public void addIdentity(KeyPair key, String comment) throws IOException { agent.addIdentity(key, comment); }
protected void closeAgent() throws IOException { if (agent != null) { try { agent.close(); } finally { agent = null; } } }
@Override public List<? extends Map.Entry<PublicKey, String>> getIdentities() throws IOException { return agent.getIdentities(); }
Collection<? extends Map.Entry<PublicKey, String>> keys = agent.getIdentities(); rep.putByte(SshAgentConstants.SSH2_AGENT_IDENTITIES_ANSWER); rep.putInt(keys.size()); "Cannot resolve key type of %s", signingKey.getClass().getSimpleName()); byte[] signature = agent.sign(signingKey, data); Buffer sig = new ByteArrayBuffer(keyType.length() + signature.length + Long.SIZE, false); sig.putString(keyType); log.debug("SSH2_AGENTC_ADD_IDENTITY comment={}", comment); agent.addIdentity(keyToAdd, comment); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break; log.debug("SSH2_AGENTC_REMOVE_IDENTITY {}", keyToRemove.getClass().getSimpleName()); agent.removeIdentity(keyToRemove); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break; agent.removeAllIdentities(); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break;
@Override public byte[] sign(PublicKey key, byte[] data) throws IOException { return agent.sign(key, data); }
@Override public void removeAllIdentities() throws IOException { agent.removeAllIdentities(); } }
@Override public void removeIdentity(PublicKey key) throws IOException { agent.removeIdentity(key); }
@Override public boolean isOpen() { return agent.isOpen(); }
Iterable<? extends Map.Entry<PublicKey, String>> ids = agent.getIdentities(); Collection<? extends Map.Entry<PublicKey, String>> keys; if (ids instanceof Collection<?>) { "Cannot resolve key type of %s", signingKey.getClass().getSimpleName()); byte[] signature = agent.sign(signingKey, data); Buffer sig = new ByteArrayBuffer(keyType.length() + signature.length + Long.SIZE, false); sig.putString(keyType); log.debug("SSH2_AGENTC_ADD_IDENTITY comment={}", comment); agent.addIdentity(keyToAdd, comment); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break; log.debug("SSH2_AGENTC_REMOVE_IDENTITY {}", keyToRemove.getClass().getSimpleName()); agent.removeIdentity(keyToRemove); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break; agent.removeAllIdentities(); rep.putByte(SshAgentConstants.SSH_AGENT_SUCCESS); break;
@Override public byte[] sign(PublicKey key, byte[] data) throws IOException { return agent.sign(key, data); }
@Override public void removeAllIdentities() throws IOException { agent.removeAllIdentities(); } }
@Override public void removeIdentity(PublicKey key) throws IOException { agent.removeIdentity(key); }
@Override public boolean isOpen() { return agent.isOpen(); }
@Override public void addIdentity(KeyPair key, String comment) throws IOException { agent.addIdentity(key, comment); }
private void closeAgent() throws IOException { if (agent == null) { return; } try { agent.close(); } finally { agent = null; } }
private void closeImmediately0() { // We need to close the channel immediately to remove it from the // server session's channel table and *not* send a packet to the // client. A notification was already sent by our caller, or will // be sent after we return. try { if ((agent != null) && agent.isOpen()) { try { agent.close(); } catch (IOException e) { log.error("closeImmediately0({}) Failed ({}) to close open local agent: {}", this, e.getClass().getSimpleName(), e.getMessage()); } } } finally { super.close(true); } }
@Override public Iterable<? extends Map.Entry<PublicKey, String>> getIdentities() throws IOException { return agent.getIdentities(); }
@Override public byte[] sign(byte[] data) throws Exception { return agent.sign(getPublicKey(), data); }