libssh2
1.\" Copyright (C) The libssh2 project and its contributors.
2.\" SPDX-License-Identifier: BSD-3-Clause
3.TH libssh2_session_handshake 3 "7 Oct 2010" "libssh2" "libssh2"
4.SH NAME
5libssh2_session_handshake - perform the SSH handshake
6.SH SYNOPSIS
7.nf
8#include <libssh2.h>
9
10int
11libssh2_session_handshake(LIBSSH2_SESSION *session, libssh2_socket_t socket);
12.fi
13.SH DESCRIPTION
14\fIsession\fP - Session instance as returned by
15.BR libssh2_session_init_ex(3)
16
17\fIsocket\fP - Connected socket descriptor. Typically a TCP connection
18though the protocol allows for any reliable transport and the library will
19attempt to use any berkeley socket.
20
21Begin transport layer protocol negotiation with the connected host.
22.SH RETURN VALUE
23Returns 0 on success, negative on failure.
24.SH ERRORS
25\fILIBSSH2_ERROR_SOCKET_NONE\fP - The socket is invalid.
26
27\fILIBSSH2_ERROR_BANNER_SEND\fP - Unable to send banner to remote host.
28
29\fILIBSSH2_ERROR_KEX_FAILURE\fP - Encryption key exchange with the remote
30host failed.
31
32\fILIBSSH2_ERROR_SOCKET_SEND\fP - Unable to send data on socket.
33
34\fILIBSSH2_ERROR_SOCKET_DISCONNECT\fP - The socket was disconnected.
35
36\fILIBSSH2_ERROR_PROTO\fP - An invalid SSH protocol response was received on
37the socket.
38
39\fILIBSSH2_ERROR_EAGAIN\fP - Marked for non-blocking I/O but the call would block.
40.SH AVAILABILITY
41Added in 1.2.8
42.SH SEE ALSO
43.BR libssh2_session_free(3)
44.BR libssh2_session_init_ex(3)
45