Class Session

    • Field Detail

      • daemon_thread

        protected boolean daemon_thread
    • Method Detail

      • run

        public void run()
        Specified by:
        run in interface Runnable
      • disconnect

        public void disconnect()
      • setPortForwardingL

        public int setPortForwardingL​(String bind_address,
                                      int lport,
                                      String host,
                                      int rport)
                               throws JSchException
        Registers the local port forwarding. If bind_address is an empty string or '*', the port should be available from all interfaces. If bind_address is "localhost" or null, the listening port will be bound for local use only. If lport is 0, the tcp port will be allocated.
        Parameters:
        bind_address - bind address for local port forwarding
        lport - local port for local port forwarding
        host - host address for local port forwarding
        rport - remote port number for local port forwarding
        Returns:
        an allocated local TCP port number
        Throws:
        JSchException
        See Also:
        setPortForwardingL(String bind_address, int lport, String host, int rport, ServerSocketFactory ssf, int connectTimeout)
      • setPortForwardingL

        public int setPortForwardingL​(String bind_address,
                                      int lport,
                                      String host,
                                      int rport,
                                      ServerSocketFactory ssf,
                                      int connectTimeout)
                               throws JSchException
        Registers the local port forwarding. If bind_address is an empty string or "*", the port should be available from all interfaces. If bind_address is "localhost" or null, the listening port will be bound for local use only. If lport is 0, the tcp port will be allocated.
        Parameters:
        bind_address - bind address for local port forwarding
        lport - local port for local port forwarding
        host - host address for local port forwarding
        rport - remote port number for local port forwarding
        ssf - socket factory
        connectTimeout - timeout for establishing port connection
        Returns:
        an allocated local TCP port number
        Throws:
        JSchException
      • delPortForwardingL

        public void delPortForwardingL​(int lport)
                                throws JSchException
        Cancels the local port forwarding assigned at local TCP port lport on loopback interface.
        Parameters:
        lport - local TCP port
        Throws:
        JSchException
      • delPortForwardingL

        public void delPortForwardingL​(String bind_address,
                                       int lport)
                                throws JSchException
        Cancels the local port forwarding assigned at local TCP port lport on bind_address interface.
        Parameters:
        bind_address - bind_address of network interfaces
        lport - local TCP port
        Throws:
        JSchException
      • getPortForwardingL

        public String[] getPortForwardingL()
                                    throws JSchException
        Lists the registered local port forwarding.
        Returns:
        a list of "lport:host:hostport"
        Throws:
        JSchException
      • setPortForwardingR

        public void setPortForwardingR​(String bind_address,
                                       int rport,
                                       String host,
                                       int lport)
                                throws JSchException
        Registers the remote port forwarding. If bind_address is an empty string or "*", the port should be available from all interfaces. If bind_address is "localhost" or is not given, the listening port will be bound for local use only. Note that if GatewayPorts is "no" on the remote, "localhost" is always used as a bind_address.
        Parameters:
        bind_address - bind address
        rport - remote port
        host - host address
        lport - local port
        Throws:
        JSchException
        See Also:
        setPortForwardingR(String bind_address, int rport, String host, int lport, SocketFactory sf)
      • setPortForwardingR

        public void setPortForwardingR​(String bind_address,
                                       int rport,
                                       String host,
                                       int lport,
                                       SocketFactory sf)
                                throws JSchException
        Registers the remote port forwarding. If bind_address is an empty string or "*", the port should be available from all interfaces. If bind_address is "localhost" or is not given, the listening port will be bound for local use only. Note that if GatewayPorts is "no" on the remote, "localhost" is always used as a bind_address. If rport is 0, the TCP port will be allocated on the remote.
        Parameters:
        bind_address - bind address
        rport - remote port
        host - host address
        lport - local port
        sf - socket factory
        Throws:
        JSchException
      • setPortForwardingR

        public void setPortForwardingR​(int rport,
                                       String daemon,
                                       Object[] arg)
                                throws JSchException
        Registers the remote port forwarding for the loopback interface of the remote. The TCP connection to rport on the remote will be forwarded to an instance of the class daemon with the argument arg. The class specified by daemon must implement ForwardedTCPIPDaemon.
        Parameters:
        rport - remote port
        daemon - class name, which implements "ForwardedTCPIPDaemon"
        arg - arguments for "daemon"
        Throws:
        JSchException
        See Also:
        setPortForwardingR(String bind_address, int rport, String daemon, Object[] arg)
      • setPortForwardingR

        public void setPortForwardingR​(String bind_address,
                                       int rport,
                                       String daemon,
                                       Object[] arg)
                                throws JSchException
        Registers the remote port forwarding. If bind_address is an empty string or "*", the port should be available from all interfaces. If bind_address is "localhost" or is not given, the listening port will be bound for local use only. Note that if GatewayPorts is "no" on the remote, "localhost" is always used as a bind_address. The TCP connection to rport on the remote will be forwarded to an instance of the class daemon with the argument arg. The class specified by daemon must implement ForwardedTCPIPDaemon.
        Parameters:
        bind_address - bind address
        rport - remote port
        daemon - class name, which implements "ForwardedTCPIPDaemon"
        arg - arguments for "daemon"
        Throws:
        JSchException
        See Also:
        setPortForwardingR(String bind_address, int rport, String daemon, Object[] arg)
      • getPortForwardingR

        public String[] getPortForwardingR()
                                    throws JSchException
        Lists the registered remote port forwarding.
        Returns:
        a list of "rport:host:hostport"
        Throws:
        JSchException
      • setPortForwardingL

        public int setPortForwardingL​(String conf)
                               throws JSchException
        Registers the local port forwarding. The argument should be in the format like "[bind_address:]port:host:hostport". If bind_address is an empty string or "*", the port should be available from all interfaces. If bind_address is "localhost" or is not given, the listening port will be bound for local use only.
        Parameters:
        conf - configuration of local port forwarding
        Returns:
        an assigned port number
        Throws:
        JSchException
        See Also:
        setPortForwardingL(String bind_address, int lport, String host, int rport)
      • setPortForwardingR

        public int setPortForwardingR​(String conf)
                               throws JSchException
        Registers the remote port forwarding. The argument should be in the format like "[bind_address:]port:host:hostport". If the bind_address is not given, the default is to only bind to loopback addresses. If the bind_address is "*" or an empty string, then the forwarding is requested to listen on all interfaces. Note that if GatewayPorts is "no" on the remote, "localhost" is always used for bind_address. If the specified remote is "0", the TCP port will be allocated on the remote.
        Parameters:
        conf - configuration of remote port forwarding
        Returns:
        an allocated TCP port on the remote.
        Throws:
        JSchException
        See Also:
        setPortForwardingR(String bind_address, int rport, String host, int rport)
      • getStreamForwarder

        public Channel getStreamForwarder​(String host,
                                          int port)
                                   throws JSchException
        Instantiates an instance of stream-forwarder to host:port. Set I/O stream to the given channel, and then invoke Channel#connect() method.
        Parameters:
        host - remote host, which the given stream will be plugged to.
        port - remote port, which the given stream will be plugged to.
        Throws:
        JSchException
      • delPortForwardingR

        public void delPortForwardingR​(int rport)
                                throws JSchException
        Cancels the remote port forwarding assigned at remote TCP port rport.
        Parameters:
        rport - remote TCP port
        Throws:
        JSchException
      • delPortForwardingR

        public void delPortForwardingR​(String bind_address,
                                       int rport)
                                throws JSchException
        Cancels the remote port forwarding assigned at remote TCP port rport bound on the interface at bind_address.
        Parameters:
        bind_address - bind address of the interface on the remote
        rport - remote TCP port
        Throws:
        JSchException
      • setProxy

        public void setProxy​(Proxy proxy)
      • setHost

        public void setHost​(String host)
      • setPort

        public void setPort​(int port)
      • setUserInfo

        public void setUserInfo​(UserInfo userinfo)
      • getUserInfo

        public UserInfo getUserInfo()
      • setInputStream

        public void setInputStream​(InputStream in)
      • setOutputStream

        public void setOutputStream​(OutputStream out)
      • setX11Host

        public void setX11Host​(String host)
      • setX11Port

        public void setX11Port​(int port)
      • setX11Cookie

        public void setX11Cookie​(String cookie)
      • setPassword

        public void setPassword​(String password)
      • setPassword

        public void setPassword​(byte[] password)
      • setConfig

        public void setConfig​(Properties newconf)
      • setConfig

        public void setConfig​(Hashtable newconf)
      • setConfig

        public void setConfig​(String key,
                              String value)
      • setSocketFactory

        public void setSocketFactory​(SocketFactory sfactory)
      • isConnected

        public boolean isConnected()
      • getTimeout

        public int getTimeout()
      • getServerVersion

        public String getServerVersion()
      • getClientVersion

        public String getClientVersion()
      • setClientVersion

        public void setClientVersion​(String cv)
      • noMoreSessionChannels

        public void noMoreSessionChannels()
                                   throws Exception
        Throws:
        Exception
      • getHostKey

        public HostKey getHostKey()
      • getHost

        public String getHost()
      • getUserName

        public String getUserName()
      • getPort

        public int getPort()
      • setHostKeyAlias

        public void setHostKeyAlias​(String hostKeyAlias)
      • getHostKeyAlias

        public String getHostKeyAlias()
      • setServerAliveInterval

        public void setServerAliveInterval​(int interval)
                                    throws JSchException
        Sets the interval to send a keep-alive message. If zero is specified, any keep-alive message must not be sent. The default interval is zero.
        Parameters:
        interval - the specified interval, in milliseconds.
        Throws:
        JSchException
        See Also:
        getServerAliveInterval()
      • getServerAliveInterval

        public int getServerAliveInterval()
        Returns setting for the interval to send a keep-alive message.
        See Also:
        setServerAliveInterval(int)
      • setServerAliveCountMax

        public void setServerAliveCountMax​(int count)
        Sets the number of keep-alive messages which may be sent without receiving any messages back from the server. If this threshold is reached while keep-alive messages are being sent, the connection will be disconnected. The default value is one.
        Parameters:
        count - the specified count
        See Also:
        getServerAliveCountMax()
      • getServerAliveCountMax

        public int getServerAliveCountMax()
        Returns setting for the threshold to send keep-alive messages.
        See Also:
        setServerAliveCountMax(int)
      • setDaemonThread

        public void setDaemonThread​(boolean enable)
      • setIdentityRepository

        public void setIdentityRepository​(IdentityRepository identityRepository)
        Sets the identityRepository, which will be referred in the public key authentication. The default value is null.
        Parameters:
        identityRepository -
        See Also:
        getIdentityRepository()
      • setHostKeyRepository

        public void setHostKeyRepository​(HostKeyRepository hostkeyRepository)
        Sets the hostkeyRepository, which will be referred in checking host keys.
        Parameters:
        hostkeyRepository -
        See Also:
        getHostKeyRepository()