gnutls_x509_crq_get_subject_alt_name — API function


#include <gnutls/x509.h>

int gnutls_x509_crq_get_subject_alt_name(gnutls_x509_crq_t crq, unsigned int seq, void * ret, size_t * ret_size, unsigned int * ret_type, unsigned int * critical);


gnutls_x509_crq_t crq

should contain a gnutls_x509_crq_t type

unsigned int seq

specifies the sequence number of the alt name, 0 for the first one, 1 for the second etc.

void * ret

is the place where the alternative name will be copied to

size_t * ret_size

holds the size of ret.

unsigned int * ret_type

holds the gnutls_x509_subject_alt_name_t name type

unsigned int * critical

will be non-zero if the extension is marked as critical (may be null)


This function will return the alternative names, contained in the given certificate.  It is the same as gnutls_x509_crq_get_subject_alt_name() except for the fact that it will return the type of the alternative name in  ret_type even if the function fails for some reason (i.e.  the buffer provided is not enough).


the alternative subject name type on success, one of the enumerated gnutls_x509_subject_alt_name_t.  It will return GNUTLS_E_SHORT_MEMORY_BUFFER if  ret_size is not large enough to hold the value.  In that case  ret_size will be updated with the required size.  If the certificate request does not have an Alternative name with the specified sequence number then GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE is returned.



Reporting Bugs

Report bugs to <>.
Home page:

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


3.6.9 gnutls