gnutls_credentials_set(3)

NAME
gnutls_credentials_set - API function

SYNOPSIS
#include <gnutls/gnutls.h>

int gnutls_credentials_set(gnutls_session_t session, gnutls_credentials_type_t type, void * cred);

ARGUMENTS

gnutls_session_t session
    is a gnutls_session_t type.

gnutls_credentials_type_t type
    is the type of the credentials

void * cred
    the credentials to set

DESCRIPTION
Sets the needed credentials for the specified type. E.g. username, password - or public and private keys etc. The cred parameter is a structure that depends on the specified type and on the current session (client or server). Only a single cred may be set for each different type , subsequent calls with the same type will replace the previously set credentials. In order to minimize memory usage, and share credentials between several threads gnutls keeps a pointer to cred , and not the whole cred structure. Thus you will have to keep the structure allocated until you call gnutls_deinit(), or a future call of gnutls_credentials_set() with the same type replaces the cred structure. For GNUTLS_CRD_ANON, cred should be gnutls_anon_client_credentials_t in case of a client. In case of a server it should be gnutls_anon_server_credentials_t. For GNUTLS_CRD_SRP, cred should be gnutls_srp_client_credentials_t in case of a client, and gnutls_srp_server_credentials_t, in case of a server. For GNUTLS_CRD_CERTIFICATE, cred should be gnutls_certificate_credentials_t.

RETURNS
On success, GNUTLS_E_SUCCESS (0) is returned, otherwise a negative error code is returned.

REPORTING BUGS
Report bugs to <bugs@gnutls.org>.
Home page: https://www.gnutls.org

COPYRIGHT
Copyright © 2001-2023 Free Software Foundation, Inc., and others.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

SEE ALSO
The full documentation for gnutls is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit

https://www.gnutls.org/manual/