Package org.apache.sshd.agent.common
Class AbstractAgentProxy
java.lang.Object
org.apache.sshd.common.util.logging.AbstractLoggingBean
org.apache.sshd.agent.common.AbstractAgentProxy
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Channel
,SshAgent
,ExecutorServiceCarrier
- Direct Known Subclasses:
AgentClient
public abstract class AbstractAgentProxy
extends AbstractLoggingBean
implements SshAgent, ExecutorServiceCarrier
- Author:
- Apache MINA SSHD Project
-
Field Summary
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
Fields inherited from interface org.apache.sshd.agent.SshAgent
SSH_AUTHSOCKET_ENV_NAME
-
Constructor Summary
ModifierConstructorDescriptionprotected
AbstractAgentProxy
(CloseableExecutorService executorService) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addIdentity
(KeyPair kp, String comment, SshAgentKeyConstraint... constraints) Adds a key to the agent.void
close()
protected Buffer
createBuffer
(byte cmd) protected Buffer
createBuffer
(byte cmd, int extraLen) protected Buffer
void
void
removeIdentity
(PublicKey key) protected abstract Buffer
void
setChannelType
(String channelType) sign
(SessionContext session, PublicKey key, String algo, byte[] data) Methods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.sshd.agent.SshAgent
resolveLocalIdentity
-
Constructor Details
-
AbstractAgentProxy
-
-
Method Details
-
getChannelType
-
setChannelType
-
getExecutorService
- Specified by:
getExecutorService
in interfaceExecutorServiceCarrier
-
getIdentities
- Specified by:
getIdentities
in interfaceSshAgent
- Throws:
IOException
-
sign
public Map.Entry<String,byte[]> sign(SessionContext session, PublicKey key, String algo, byte[] data) throws IOException - Specified by:
sign
in interfaceSshAgent
- Parameters:
session
- The currentSessionContext
key
- ThePublicKey
to use for signingalgo
- Recommended signature algorithm - ifnull
/empty then one will be selected based on the key type and/or signature factories. Note: even if specific algorithm specified, the implementation may disregard and choose anotherdata
- Data to sign- Returns:
- used algorithm + signed data - using the identity
- Throws:
IOException
- If failed to sign
-
addIdentity
public void addIdentity(KeyPair kp, String comment, SshAgentKeyConstraint... constraints) throws IOException Description copied from interface:SshAgent
Adds a key to the agent.- Specified by:
addIdentity
in interfaceSshAgent
- Parameters:
kp
-KeyPair
to addcomment
- to associate with the keyconstraints
-SshAgentKeyConstraint
s for this key to pass on to the agent- Throws:
IOException
- if an error in the communication with the agent occurred, or the agent did not return a reply indicating successful addition of the key
-
removeIdentity
- Specified by:
removeIdentity
in interfaceSshAgent
- Throws:
IOException
-
removeAllIdentities
- Specified by:
removeAllIdentities
in interfaceSshAgent
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceChannel
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
createBuffer
-
createBuffer
-
prepare
-
request
- Throws:
IOException
-