gnutls_certificate_get_x509_crt(3)

NAME
gnutls_certificate_get_x509_crt - API function

SYNOPSIS
#include <gnutls/gnutls.h>

int gnutls_certificate_get_x509_crt(gnutls_certificate_credentials_t res, unsigned index, gnutls_x509_crt_t ** crt_list, unsigned * crt_list_size);

ARGUMENTS

gnutls_certificate_credentials_t res
    is a gnutls_certificate_credentials_t type.

unsigned index
    The index of the certificate list to obtain.

gnutls_x509_crt_t ** crt_list
    Where to store the certificate list.

unsigned * crt_list_size
    Will hold the number of certificates.

DESCRIPTION
Obtains a X.509 certificate list that has been stored in res with one of gnutls_certificate_set_x509_key(), gnutls_certificate_set_key(), gnutls_certificate_set_x509_key_file(), gnutls_certificate_set_x509_key_file2(), gnutls_certificate_set_x509_key_mem(), or gnutls_certificate_set_x509_key_mem2(). Each certificate in the returned certificate list must be deallocated with gnutls_x509_crt_deinit(), and the list itself must be freed with gnutls_free().

The index matches the return value of gnutls_certificate_set_x509_key() and friends functions, when the GNUTLS_CERTIFICATE_API_V2 flag is set.

If there is no certificate with the given index, GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE is returned. If the certificate with the given index is not a X.509 certificate, GNUTLS_E_INVALID_REQUEST is returned. The returned certificates must be deinitialized after use, and the crt_list pointer must be freed using gnutls_free().

RETURNS
GNUTLS_E_SUCCESS (0) on success, or a negative error code.

SINCE
3.4.0

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/