X509_CINF_NEW(3)

NAME
X509_CINF_new, X509_CINF_free, X509_VAL_new, X509_VAL_free, X509_CERT_AUX_new, X509_CERT_AUX_free - X.509 certificate information objects

SYNOPSIS
#include <openssl/x509.h>
X509_CINF *
X509_CINF_new(void);
void
X509_CINF_free(X509_CINF *inf);
X509_VAL *
X509_VAL_new(void);
void
X509_VAL_free(X509_VAL *val);
X509_CERT_AUX *
X509_CERT_AUX_new(void);
void
X509_CERT_AUX_free(X509_CERT_AUX *aux);

DESCRIPTION
X509_CINF_new() allocates and initializes an empty X509_CINF object, representing an ASN.1 TBSCertificate structure defined in RFC 5280 section 4.1. It is used inside the X509 object and holds the main information contained in the X.509 certificate including subject, public key, issuer, serial number, validity period, and extensions. X509_CINF_free() frees inf.

X509_VAL_new() allocates and initializes an empty X509_VAL object, representing an ASN.1 Validity structure defined in RFC 5280 section 4.1. It is used inside the X509_CINF object and holds the validity period of the certificate. X509_VAL_free() frees val.

X509_CERT_AUX_new() allocates and initializes an empty X509_CERT_AUX structure. It can be used inside an X509 object to hold optional non-standard auxiliary data appended to a certificate, for example friendly alias names and trust data. X509_CERT_AUX_free() frees aux.

RETURN VALUES
X509_CINF_new(), X509_VAL_new(), and X509_CERT_AUX_new() return the new X509_CINF, X509_VAL, or X509_CERT_AUX object, respectively, or NULL if an error occurs.

SEE ALSO
d2i_X509_CINF(3), X509_add1_trust_object(3), X509_CERT_AUX_print(3), X509_keyid_set1(3), X509_new(3)

STANDARDS
RFC 5280: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile

HISTORY
X509_CINF_new(), X509_CINF_free(), X509_VAL_new(), and X509_VAL_free() appeared in SSLeay 0.4 or earlier and have been available since OpenBSD 2.4.

X509_CERT_AUX_new() and X509_CERT_AUX_free() first appeared in OpenSSL 0.9.5 and have been available since OpenBSD 2.7.