logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

libssh2_userauth_publickey_frommemory - authenticate a session with a public key, read from memory

Availability

       libssh2_userauth_publickey_frommemory was added in libssh2 1.6.0 Supported with OpenSSL, WinCNG, mbedTLS,
       OS/400 crypto backends.

Description

session - Session instance as returned by libssh2_session_init_ex(3)username - Remote user name to authenticate as.

       username_len - Length of username.

       publickeydata - Buffer containing the contents of a public key file.

       publickeydata_len - Length of public key data.

       privatekeydata - Buffer containing the contents of a private key file.

       privatekeydata_len - Length of private key data.

       passphrase - Passphrase to use when decoding private key file.

       Attempt public key authentication using either a public key file or a PEM encoded private key file stored
       in  memory.  When  providing  a  private  key,  the  public  key is automatically extracted from it. When
       providing both, the passed public key takes precedence.

Errors

LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed.

       LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket.

       LIBSSH2_ERROR_SOCKET_TIMEOUT -

       LIBSSH2_ERROR_PUBLICKEY_UNVERIFIED - The username/public key combination was invalid.

       LIBSSH2_ERROR_AUTHENTICATION_FAILED - Authentication using the supplied public key was not accepted.

Name

       libssh2_userauth_publickey_frommemory - authenticate a session with a public key, read from memory

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 is not really a failure per se.

See Also

libssh2_session_init_ex(3)

libssh2                                            1 Sep 2014           libssh2_userauth_publickey_frommemory(3)

Synopsis

       #include <libssh2.h>

       int
       libssh2_userauth_publickey_frommemory(LIBSSH2_SESSION *session,
                                             const char *username,
                                             size_t username_len,
                                             const char *publickeydata,
                                             size_t publickeydata_len,
                                             const char *privatekeydata,
                                             size_t privatekeydata_len,
                                             const char *passphrase);

See Also