gnutls_x509_crt_get_subject_alt_name — Get certificate's alternative name, if any
#include <gnutls/x509.h>
int gnutls_x509_crt_get_subject_alt_name( |
gnutls_x509_crt_t cert, |
unsigned int seq, | |
void * ret, | |
size_t * ret_size, | |
unsigned int * critical) ; |
should contain a gnutls_x509_crt_t structure
specifies the sequence number of the alt name (0 for the first one, 1 for the second etc.)
is the place where the alternative name will be copied to
holds the size of ret.
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.
This is specified in X509v3 Certificate Extensions. GNUTLS will return the Alternative name (2.5.29.17), or a negative error code.
When the SAN type is otherName, it will extract the data
in the otherName's value field, and GNUTLS_SAN_OTHERNAME
is returned. You may
use gnutls_x509_crt_get_subject_alt_othername_oid
()
to get the corresponding OID and the "virtual" SAN types
(e.g., GNUTLS_SAN_OTHERNAME_XMPP
).
If an otherName OID is known, the data will be decoded. Otherwise the returned data will be DER encoded, and you will have to decode it yourself. Currently, only the RFC 3920 id−on−xmppAddr SAN is recognized.
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 does not have an
Alternative name with the specified sequence number then
GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE is
returned.
Report bugs to <[email protected]>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/
The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command
info gnutls
should give you access to the complete manual.
COPYRIGHT |
---|
Copyright © 2008 Free Software Foundation. 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. |