Sample code for 30+ languages & platforms
Unicode C

Connect to an SSH Server

See more SSH Examples

Demonstrates the Chilkat Ssh.Connect method, which establishes a connection to an SSH server. The first argument is the hostname (a DNS name or a numeric IPv4/IPv6 address) and the second is the TCP port, usually 22. Connecting is the first step; authentication follows before any channels can be opened.

Background: Connect establishes only the SSH transport — the encrypted channel and host-key exchange — but does not log in. An SSH session is always used in stages: connect, authenticate, then open one or more channels for shell, exec, or port-forwarding work. Timeouts and optional SOCKS/HTTP proxying are controlled by the object's properties before this call.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkSshW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkSshW ssh;
    int sshPort;

    success = FALSE;

    //  Demonstrates the Ssh.Connect method, which establishes a connection to an SSH server.  The
    //  1st argument is the hostname (a DNS name or numeric IP) and the 2nd is the TCP port.

    ssh = CkSshW_Create();

    //  Port 22 is the usual SSH port.
    sshPort = 22;
    success = CkSshW_Connect(ssh,L"ssh.example.com",sshPort);
    if (success == FALSE) {
        wprintf(L"%s\n",CkSshW_lastErrorText(ssh));
        CkSshW_Dispose(ssh);
        return;
    }

    wprintf(L"Connected to the SSH server.\n");

    //  (Authentication would follow here before opening channels.)

    CkSshW_Disconnect(ssh);


    CkSshW_Dispose(ssh);

    }