libssh2_channel_direct_streamlocal_ex(3)

libssh2_channel_direct_streamlocal_ex3

Tunnel a unix socket connection through an ssh session

Usage

#include <libssh2.h>
LIBSSH2_CHANNEL *
libssh2_channel_direct_streamlocal_ex(LIBSSH2_SESSION *session,
                                      const char *socket_path,
                                      const char *shost, int sport);

Overview

session - Session instance as returned by libssh2_session_init_ex(3)

socket_path - UNIX socket to connect to using the SSH host as a proxy.

shost - Host to tell the SSH server the connection originated on.

sport - Port to tell the SSH server the connection originated from.

Tunnel a UNIX socket connection through the SSH transport via the remote host to a third party. Communication from the client to the SSH server remains encrypted, communication from the server to the 3rd party host travels in cleartext.

Return value

Pointer to a newly allocated LIBSSH2_CHANNEL instance, or NULL on errors.

Errors

LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed.

Releases

Unchanged in 2 releases since Debian 13 (Trixie).

  1. 13–Arch

From libssh2 1.11.1-7 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.