Sample code for 30+ languages & platforms
Zig

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 Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

    // 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.

    const ssh = try chilkat.Ssh.init();
    defer ssh.deinit();

    // Port 22 is the usual SSH port.
    const ssh_port = 22;
    ssh.connect("ssh.example.com", ssh_port) catch {
        std.debug.print("{s}\n", .{try ssh.getLastErrorText(alloc)});
        return;
    };

    std.debug.print("Connected to the SSH server.\n", .{});

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

    ssh.disconnect();
}