Путеводитель по Руководству Linux

  User  |  Syst  |  Libr  |  Device  |  Files  |  Other  |  Admin  |  Head  |



   gnutls_x509_crt_get_subject_alt_name    ( 3 )

Функции API (API function)

Имя (Name)

gnutls_x509_crt_get_subject_alt_name - API function

Синопсис (Synopsis)

#include <gnutls/x509.h>

int gnutls_x509_crt_get_subject_alt_name(gnutls_x509_crt_t cert, unsigned int seq, void * san, size_t * san_size, unsigned int * critical);


Аргументы (Arguments)

gnutls_x509_crt_t cert
                   should contain a gnutls_x509_crt_t type

unsigned int seq specifies the sequence number of the alt name (0 for the first one, 1 for the second etc.)

void * san is the place where the alternative name will be copied to

size_t * san_size holds the size of san.

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


Описание (Description)

This function retrieves the Alternative Name (2.5.29.17),
       contained in the given certificate in the X509v3 Certificate
       Extensions.

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.


Возвращаемое значение (Return value)

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  san_size is not large enough to
       hold the value.  In that case  san_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.

Сообщение об ошибках (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/