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
|
@deftypefun {int} {gnutls_certificate_get_x509_crt} (gnutls_certificate_credentials_t @var{res}, unsigned @var{index}, gnutls_x509_crt_t ** @var{crt_list}, unsigned * @var{crt_list_size})
@var{res}: is a @code{gnutls_certificate_credentials_t} type.
@var{index}: The index of the certificate list to obtain.
@var{crt_list}: Where to store the certificate list.
@var{crt_list_size}: Will hold the number of certificates.
Obtains a X.509 certificate list that has been stored in @code{res} with one of
@code{gnutls_certificate_set_x509_key()} , @code{gnutls_certificate_set_key()} ,
@code{gnutls_certificate_set_x509_key_file()} ,
@code{gnutls_certificate_set_x509_key_file2()} ,
@code{gnutls_certificate_set_x509_key_mem()} , or
@code{gnutls_certificate_set_x509_key_mem2()} . Each certificate in the returned
certificate list must be deallocated with @code{gnutls_x509_crt_deinit()} , and the
list itself must be freed with @code{gnutls_free()} .
The @code{index} matches the return value of @code{gnutls_certificate_set_x509_key()} and friends
functions, when the @code{GNUTLS_CERTIFICATE_API_V2} flag is set.
If there is no certificate with the given index,
@code{GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE} is returned. If the certificate
with the given index is not a X.509 certificate, @code{GNUTLS_E_INVALID_REQUEST}
is returned. The returned certificates must be deinitialized after
use, and the @code{crt_list} pointer must be freed using @code{gnutls_free()} .
@strong{Returns:} @code{GNUTLS_E_SUCCESS} (0) on success, or a negative error code.
@strong{Since:} 3.4.0
@end deftypefun
|