Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

ne_ssl_cert_issuer (3)

Name

ne_ssl_cert_issuer - ne_ssl_cert_identity, ne_ssl_cert_signedby, ne_ssl_cert_issuer, functions to access certificate properties

Synopsis

#include <ne_ssl.h>

const char *ne_ssl_cert_identity(const ne_ssl_certificate *cert);

const ne_ssl_certificate
*ne_ssl_cert_signedby(const ne_ssl_certificate *cert);

const ne_ssl_dname
*ne_ssl_cert_subject(const ne_ssl_certificate *cert);

const ne_ssl_dname *ne_ssl_cert_issuer(const ne_ssl_certificate *cert);

Description

NE_SSL_CERT_IDENTITY(3)       neon API reference       NE_SSL_CERT_IDENTITY(3)



NAME
       ne_ssl_cert_identity, ne_ssl_cert_signedby, ne_ssl_cert_issuer,
       ne_ssl_cert_subject - functions to access certificate properties

SYNOPSIS
       #include <ne_ssl.h>

       const char *ne_ssl_cert_identity(const ne_ssl_certificate *cert);

       const ne_ssl_certificate
                                                      *ne_ssl_cert_signedby(const ne_ssl_certificate *cert);

       const ne_ssl_dname
                                               *ne_ssl_cert_subject(const ne_ssl_certificate *cert);

       const ne_ssl_dname *ne_ssl_cert_issuer(const ne_ssl_certificate *cert);

DESCRIPTION
       The function ne_ssl_cert_identity retrieves the "identity" of a
       certificate; for an SSL server certificate, this will be the hostname
       for which the certificate was issued. In PKI parlance, the identity is
       the common name attribute of the distinguished name of the certificate
       subject.

       The functions ne_ssl_cert_subject and ne_ssl_cert_issuer can be used to
       access the objects representing the distinguished name of the subject
       and of the issuer of a certificate, respectively.

       If a certificate object is part of a certificate chain, then
       ne_ssl_cert_signedby can be used to find the certificate which signed a
       particular certificate. For a self-signed certificate or a certificate
       for which the full chain is not available, this function will return
       NULL.

RETURN VALUE
       ne_ssl_cert_issuer and ne_ssl_cert_subject are guaranteed to never
       return NULL.  ne_ssl_cert_identity may return NULL if the certificate
       has no specific "identity".  ne_ssl_cert_signedby may return NULL as
       covered above.

EXAMPLES
       The following function could be used to display information about a
       given certificate:

           void dump_cert(const ne_ssl_certificate *cert) {
             const char *id = ne_ssl_cert_identity(cert);
             char *dn;

             if (id)
               printf("Certificate was issued for '%s'.\n", id);

             dn = ne_ssl_readable_dname(ne_ssl_cert_subject(cert));
             printf("Subject: %s\n", dn);
             free(dn);

             dn = ne_ssl_readable_dname(ne_ssl_cert_issuer(cert));
             printf("Issuer: %s\n", dn);
             free(dn);
           }


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | library/neon     |
       +---------------+------------------+
       |Stability      | Volatile         |
       +---------------+------------------+

SEE ALSO
       ne_ssl_cert_cmp, ne_ssl_readable_dname

AUTHOR
       Joe Orton <neon@lists.manyfish.co.uk>
           Author.

COPYRIGHT
NOTES
       Source code for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at
       https://github.com/oracle/solaris-userland.  The original community
       source was downloaded from
       http://www.webdav.org/neon/neon-0.30.1.tar.gz.

       Further information about this software can be found on the open source
       community website at http://www.webdav.org/neon/.



neon 0.30.1                    23 September 2014       NE_SSL_CERT_IDENTITY(3)