Man Linux: Main Page and Category List

NAME

       libssh2_userauth_keyboard_interactive_ex - authenticate a session using
       a challenge-response 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));

       int   libssh2_userauth_keyboard_interactive(LIBSSH2_SESSION   *session,
       const                          char                          *username,
       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 plain password authentication for.

       username_len - Length of username parameter.

       response_callback - As authentication proceeds, host issues several  (1
       or  more)  challenges  and  requires  responses.  This callback will be
       called at this moment. 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.

       Attempts keyboard-interactive (challenge/response) authentication.

       Note  that  many  SSH  servers  will  always  issue  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                      8libssh20userauth_keyboard_interactive_ex(3)