gnutls_x509_crt_get_extension_info - Man Page

API function

Synopsis

#include <gnutls/x509.h>

int gnutls_x509_crt_get_extension_info(gnutls_x509_crt_t cert, unsigned indx, void * oid, size_t * oid_size, unsigned int * critical);

Arguments

gnutls_x509_crt_t cert

should contain a gnutls_x509_crt_t type

unsigned indx

Specifies which extension OID to send. Use (0) to get the first one.

void * oid

a pointer to a structure to hold the OID

size_t * oid_size

initially holds the maximum size of  oid , on return holds actual size of  oid .

unsigned int * critical

output variable with critical flag, may be NULL.

Description

This function will return the requested extension OID in the certificate, and the critical flag for it.  The extension OID will be stored as a string in the provided buffer.  Use gnutls_x509_crt_get_extension() to extract the data.

If the buffer provided is not long enough to hold the output, then
oid_size is updated and GNUTLS_E_SHORT_MEMORY_BUFFER will be returned. The  oid returned will be null terminated, although
oid_size will not account for the trailing null (the latter is not true for GnuTLS prior to 3.6.0).

Returns

On success, GNUTLS_E_SUCCESS (0) is returned, otherwise a negative error code is returned.  If you have reached the last extension available GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE will be returned.

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/

Info

3.8.8 gnutls