blob: 56e747c85809d94aec079a3c7f835c7cdefd9992 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
@deftypefun {int} {gnutls_certificate_set_key} (gnutls_certificate_credentials_t @var{res}, const char ** @var{names}, int @var{names_size}, gnutls_pcert_st * @var{pcert_list}, int @var{pcert_list_size}, gnutls_privkey_t @var{key})
@var{res}: is a @code{gnutls_certificate_credentials_t} type.
@var{names}: is an array of DNS names belonging to the public-key (NULL if none)
@var{names_size}: holds the size of the names list
@var{pcert_list}: contains a certificate list (chain) or raw public-key
@var{pcert_list_size}: holds the size of the certificate list
@var{key}: is a @code{gnutls_privkey_t} key corresponding to the first public-key in pcert_list
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 @code{pcert_list} .
Note that the @code{key} will become part of the credentials structure and must
not be deallocated. It will be automatically deallocated when the @code{res} structure
is deinitialized.
If this function fails, the @code{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 @code{GNUTLS_CERTIFICATE_API_V2} is set using @code{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.
@strong{Returns:} On success this functions returns zero, and otherwise a negative value on error (see above for modifying that behavior).
@strong{Since:} 3.0
@end deftypefun
|