public class TcpipServerChannel extends AbstractServerChannel implements ForwardingTunnelEndpointsProvider
Modifier and Type | Class and Description |
---|---|
(package private) class |
TcpipServerChannel.PortIoHandler |
static class |
TcpipServerChannel.TcpipFactory |
AbstractChannel.GracefulChannelCloseable, AbstractChannel.GracefulState
AbstractCloseable.State
AttributeRepository.AttributeKey<T>
Modifier and Type | Field and Description |
---|---|
private IoConnector |
connector |
private java.net.SocketAddress |
localAddress |
private SshdSocketAddress |
originatorAddress |
private ChannelAsyncOutputStream |
out |
private ChannelToPortHandler |
port |
private SshdSocketAddress |
tunnelEntrance |
private SshdSocketAddress |
tunnelExit |
private TcpForwardingFilter.Type |
type |
exitStatusSent
channelListenerProxy, channelListeners, closeSignaled, eofReceived, eofSent, gracefulFuture, gracefulState, initialized, RESPONSE_BUFFER_GROWTH_FACTOR, service, unregisterSignaled
closeFuture, futureLock, state
log
CHANNEL_EXEC, CHANNEL_SHELL, CHANNEL_SUBSYSTEM
EMPTY
NONE
Constructor and Description |
---|
TcpipServerChannel(TcpForwardingFilter.Type type,
CloseableExecutorService executor) |
Modifier and Type | Method and Description |
---|---|
protected ChannelToPortHandler |
createChannelToPortHandler(IoSession session) |
protected OpenFuture |
doInit(Buffer buffer) |
protected void |
doWriteData(byte[] data,
int off,
long len) |
protected void |
doWriteExtendedData(byte[] data,
int off,
long len) |
protected Closeable |
getInnerCloseable() |
java.net.SocketAddress |
getLocalAddress() |
SshdSocketAddress |
getOriginatorAddress() |
TcpForwardingFilter.Type |
getTcpipChannelType() |
SshdSocketAddress |
getTunnelEntrance() |
SshdSocketAddress |
getTunnelExit() |
protected void |
handleChannelConnectResult(OpenFuture f,
IoConnectFuture future) |
protected void |
handleChannelOpenFailure(OpenFuture f,
java.lang.Throwable problem) |
protected void |
handleChannelOpenSuccess(OpenFuture f,
IoSession session) |
void |
handleEof()
Invoked when
SSH_MSG_CHANNEL_EOF received |
void |
handleWindowAdjust(Buffer buffer)
Invoked when
SSH_MSG_CHANNEL_WINDOW_ADJUST received |
protected boolean |
mayWrite() |
void |
setLocalAddress(java.net.SocketAddress localAddress) |
handleOpenFailure, handleOpenSuccess, open, sendExitStatus
addChannelListener, addPendingRequest, addRequestHandler, attributeKeys, clearAttributes, computeAttributeIfAbsent, configureWindow, getAttribute, getAttributesCount, getChannelId, getChannelListenerProxy, getChannelStreamWriterResolver, getExecutorService, getLocalWindow, getParentPropertyResolver, getProperties, getRecipient, getRemoteWindow, getRequestHandlers, getSession, handleChannelRegistrationResult, handleChannelRequest, handleChannelUnregistration, handleClose, handleData, handleExtendedData, handleFailure, handleInternalRequest, handleRequest, handleSuccess, handleUnknownChannelRequest, init, invokeChannelSignaller, isEofSent, isEofSignalled, isInitialized, notifyStateChanged, notifyStateChanged, preClose, removeAttribute, removeChannelListener, removePendingRequest, removeRequestHandler, resolveChannelStreamWriterResolver, sendEof, sendResponse, sendWindowAdjust, setAttribute, setChannelStreamWriterResolver, setRecipient, signalChannelClosed, signalChannelClosed, signalChannelInitialized, signalChannelInitialized, signalChannelOpenFailure, signalChannelOpenFailure, signalChannelOpenSuccess, signalChannelOpenSuccess, toString, validateIncomingDataSize, writePacket
doCloseGracefully, doCloseImmediately
addCloseFutureListener, builder, close, getFutureLock, isClosed, isClosing, removeCloseFutureListener
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getServerSession
addRequestHandler, addRequestHandlers, getLocalWindow, getRecipient, getRemoteWindow, getRequestHandlers, handleChannelRegistrationResult, handleChannelUnregistration, handleClose, handleData, handleExtendedData, handleFailure, handleRequest, handleSuccess, init, isEofSignalled, isInitialized, removeRequestHandler, removeRequestHandlers, resolveAttribute, resolveAttribute, writePacket
getSession, getSessionContext
getChannelId
addChannelListener, getChannelListenerProxy, removeChannelListener
getBoolean, getBooleanProperty, getCharset, getInteger, getIntProperty, getLong, getLongProperty, getObject, getParentPropertyResolver, getProperties, getString, getStringProperty, isEmpty, isEmpty
clearAttributes, computeAttributeIfAbsent, removeAttribute, setAttribute
attributeKeys, getAttribute, getAttributesCount, ofAttributesMap, ofKeyValuePair
getChannelStreamWriterResolver, resolveChannelStreamWriter, resolveChannelStreamWriterResolver, setChannelStreamWriterResolver
addCloseFutureListener, close, close, close, getMaxCloseWaitTime, isClosed, isClosing, isOpen, removeCloseFutureListener
private final TcpForwardingFilter.Type type
private IoConnector connector
private ChannelToPortHandler port
private ChannelAsyncOutputStream out
private SshdSocketAddress tunnelEntrance
private SshdSocketAddress tunnelExit
private SshdSocketAddress originatorAddress
private java.net.SocketAddress localAddress
public TcpipServerChannel(TcpForwardingFilter.Type type, CloseableExecutorService executor)
public TcpForwardingFilter.Type getTcpipChannelType()
public java.net.SocketAddress getLocalAddress()
public void setLocalAddress(java.net.SocketAddress localAddress)
public SshdSocketAddress getTunnelEntrance()
getTunnelEntrance
in interface ForwardingTunnelEndpointsProvider
public SshdSocketAddress getTunnelExit()
getTunnelExit
in interface ForwardingTunnelEndpointsProvider
public SshdSocketAddress getOriginatorAddress()
public void handleWindowAdjust(Buffer buffer) throws java.io.IOException
Channel
SSH_MSG_CHANNEL_WINDOW_ADJUST
receivedhandleWindowAdjust
in class AbstractChannel
buffer
- The rest of the message data Buffer
after decoding the channel identifiersjava.io.IOException
- If failed to handle the messageprotected OpenFuture doInit(Buffer buffer)
doInit
in class AbstractServerChannel
protected boolean mayWrite()
mayWrite
in class AbstractChannel
protected void handleChannelConnectResult(OpenFuture f, IoConnectFuture future)
protected void handleChannelOpenSuccess(OpenFuture f, IoSession session)
protected void handleChannelOpenFailure(OpenFuture f, java.lang.Throwable problem)
public void handleEof() throws java.io.IOException
Channel
SSH_MSG_CHANNEL_EOF
receivedhandleEof
in class AbstractChannel
java.io.IOException
- If failed to handle the messageprotected Closeable getInnerCloseable()
getInnerCloseable
in class AbstractChannel
protected void doWriteData(byte[] data, int off, long len) throws java.io.IOException
doWriteData
in class AbstractChannel
java.io.IOException
protected void doWriteExtendedData(byte[] data, int off, long len) throws java.io.IOException
doWriteExtendedData
in class AbstractChannel
java.io.IOException
protected ChannelToPortHandler createChannelToPortHandler(IoSession session)