Функции API (API function)
Имя (Name)
gnutls_certificate_set_key - API function
Синопсис (Synopsis)
#include <gnutls/abstract.h>
int gnutls_certificate_set_key(gnutls_certificate_credentials_t
res, const char **
names, int
names_size, gnutls_pcert_st *
pcert_list, int
pcert_list_size, gnutls_privkey_t
key);
Аргументы (Arguments)
gnutls_certificate_credentials_t res
is a gnutls_certificate_credentials_t
type.
const char ** names
is an array of DNS names belonging to the public-key
(NULL if none)
int names_size
holds the size of the names list
gnutls_pcert_st * pcert_list
contains a certificate list (chain) or raw public-key
int pcert_list_size
holds the size of the certificate list
gnutls_privkey_t key
is a gnutls_privkey_t
key corresponding to the first
public-key in pcert_list
Описание (Description)
This function sets a public/private key pair in the
gnutls_certificate_credentials_t type. The given public key may
be encapsulated in a certificate or can be given as a raw key.
This function may be called more than once, in case multiple key
pairs exist for the server. For clients that want to send more
than their own end- entity certificate (e.g., also an
intermediate CA cert), the full certificate chain must be
provided in pcert_list .
Note that the key will become part of the credentials structure
and must not be deallocated. It will be automatically deallocated
when the res structure is deinitialized.
If this function fails, the res structure is at an undefined
state and it must not be reused to load other keys or
certificates.
Note that, this function by default returns zero on success and a
negative value on error. Since 3.5.6, when the flag
GNUTLS_CERTIFICATE_API_V2
is set using
gnutls_certificate_set_flags()
it returns an index (greater or
equal to zero). That index can be used for other functions to
refer to the added key-pair.
Since GnuTLS 3.6.6 this function also handles raw public keys.
Возвращаемое значение (Return value)
On success this functions returns zero, and otherwise a negative
value on error (see above for modifying that behavior).
Сообщение об ошибках (Reporting bugs)
Report bugs to <bugs@gnutls.org>.
Home page: https://www.gnutls.org
Смотри также (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/