Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

libssh2_userauth_keyboard_interactive_ex(3) [debian man page]

libssh2_userauth_keyboard_interactive_ex(3)			  libssh2 manual		       libssh2_userauth_keyboard_interactive_ex(3)

NAME
libssh2_userauth_keyboard_interactive_ex - authenticate a session using keyboard-interactive authentication SYNOPSIS
#include <libssh2.h> int libssh2_userauth_keyboard_interactive_ex(LIBSSH2_SESSION *session, const char *username, unsigned int username_len, LIBSSH2_USERAUTH_KBDINT_RESPONSE_FUNC(*response_callback)); DESCRIPTION
session - Session instance as returned by libssh2_session_init_ex(3). username - Name of user to attempt keyboard-interactive authentication for. username_len - Length of username parameter. response_callback - As authentication proceeds, the host issues several (1 or more) challenges and requires responses. This callback will be called at this moment. The callback is responsible to obtain responses for the challenges, fill the provided data structure and then return control. Responses will be sent to the host. String values will be free(3)ed by the library. The callback prototype must match this: void response(const char *name, int name_len, const char *instruction, int instruction_len, int num_prompts, const LIBSSH2_USERAUTH_KBDINT_PROMPT *prompts, LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses, void **abstract); Attempts keyboard-interactive (challenge/response) authentication. Note that many SSH servers will always issue a single "password" challenge, requesting actual password as response, but it is not required by the protocol, and various authentication schemes, such as smartcard authentication may use keyboard-interactive authentication type too. RETURN VALUE
Return 0 on success or negative on failure. It returns LIBSSH2_ERROR_EAGAIN when it would otherwise block. While LIBSSH2_ERROR_EAGAIN is a negative number, it isn't really a failure per se. ERRORS
LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed. LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket. IBSSH2_ERROR_AUTHENTICATION_FAILED - failed, invalid username/password or public/private key. SEE ALSO
libssh2_session_init_ex(3) libssh2 0.19 8 Mar 2008 libssh2_userauth_keyboard_interactive_ex(3)

Check Out this Related Man Page

libssh2_channel_open_ex(3)					  libssh2 manual					libssh2_channel_open_ex(3)

NAME
libssh2_channel_open_ex - establish a generic session channel SYNOPSIS
#include <libssh2.h> LIBSSH2_CHANNEL * libssh2_channel_open_ex(LIBSSH2_SESSION *session, const char *channel_type, unsigned int channel_type_len, unsigned int window_size, unsigned int packet_size, const char *message, unsigned int message_len); LIBSSH2_CHANNEL * libssh2_channel_open_session(session); DESCRIPTION
session - Session instance as returned by libssh2_session_init_ex(3) channel_type - Channel type to open. Typically one of session, direct-tcpip, or tcpip-forward. The SSH2 protocol allowed for additional types including local, custom channel types. channel_type_len - Length of channel_type window_size - Maximum amount of unacknowledged data remote host is allowed to send before receiving an SSH_MSG_CHANNEL_WINDOW_ADJUST packet. packet_size - Maximum number of bytes remote host is allowed to send in a single SSH_MSG_CHANNEL_DATA or SSG_MSG_CHANNEL_EXTENDED_DATA packet. message - Additional data as required by the selected channel_type. message_len - Length of message parameter. Allocate a new channel for exchanging data with the server. This method is typically called through its macroized form: libssh2_chan- nel_open_session(3) or via libssh2_channel_direct_tcpip(3) or libssh2_channel_forward_listen(3) RETURN VALUE
Pointer to a newly allocated LIBSSH2_CHANNEL instance, or NULL on errors. ERRORS
LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed. LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket. LIBSSH2_ERROR_CHANNEL_FAILURE - LIBSSH2_ERROR_EAGAIN - Marked for non-blocking I/O but the call would block. SEE ALSO
Add related functions libssh2 0.15 1 Jun 2007 libssh2_channel_open_ex(3)
Man Page