Sample code for 30+ languages & platforms
Tcl

Disconnect from an SSH Server

See more SSH Examples

Demonstrates the Chilkat Ssh.Disconnect method, which closes the current SSH transport. It takes no arguments, is harmless to call when nothing is connected, and may be called repeatedly.

Background: Disconnecting tears down the transport and every channel opened on it; afterward IsConnected is false and NumOpenChannels is 0. Bytes already buffered for a former channel can still be read after disconnect, which is useful when you want to drain a command's final output before releasing the session.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

#  Demonstrates the Ssh.Disconnect method, which closes the current SSH transport.  It takes no
#  arguments, is safe to call when no connection exists, and may be called repeatedly.

set ssh [new_CkSsh]

#  Connect to the SSH server.  Port 22 is the usual SSH port.
set sshPort 22
set success [CkSsh_Connect $ssh "ssh.example.com" $sshPort]
if {$success == 0} then {
    puts [CkSsh_lastErrorText $ssh]
    delete_CkSsh $ssh
    exit
}

#  Normally you would not hard-code the password in source.  You should instead obtain it
#  from an interactive prompt, environment variable, or a secrets vault.
set password "mySshPassword"

set success [CkSsh_AuthenticatePw $ssh "mySshLogin" $password]
if {$success == 0} then {
    puts [CkSsh_lastErrorText $ssh]
    delete_CkSsh $ssh
    exit
}

#  ... use the SSH connection ...

#  Close the SSH connection.
CkSsh_Disconnect $ssh

delete_CkSsh $ssh