X509_GET0_NOTBEFORE(3)

NAME
X509_get0_notBefore, X509_get0_notAfter, X509_getm_notBefore, X509_getm_notAfter, X509_CRL_get0_lastUpdate, X509_CRL_get0_nextUpdate, X509_set1_notBefore, X509_set1_notAfter, X509_CRL_set1_lastUpdate, X509_CRL_set1_nextUpdate - get and set certificate and CRL validity dates

SYNOPSIS
#include <openssl/x509.h>
const ASN1_TIME *
X509_get0_notBefore(const X509 *x);
const ASN1_TIME *
X509_get0_notAfter(const X509 *x);
ASN1_TIME *
X509_getm_notBefore(const X509 *x);
ASN1_TIME *
X509_getm_notAfter(const X509 *x);
ASN1_TIME *
X509_CRL_get0_lastUpdate(const X509_CRL *crl);
ASN1_TIME *
X509_CRL_get0_nextUpdate(const X509_CRL *crl);
int
X509_set1_notBefore(X509 *x, const ASN1_TIME *tm);
int
X509_set1_notAfter(X509 *x, const ASN1_TIME *tm);
int
X509_CRL_set1_lastUpdate(X509_CRL *crl, const ASN1_TIME *tm);
int
X509_CRL_set1_nextUpdate(X509_CRL *crl, const ASN1_TIME *tm);

DESCRIPTION
X509_getm_notBefore() and X509_getm_notAfter() return pointers to the notBefore and notAfter fields of the validity period of the certificate x, respectively.

X509_get0_notBefore() and X509_get0_notAfter() are identical except for the const qualifier on the return type.

X509_CRL_get0_lastUpdate() and X509_CRL_get0_nextUpdate() return pointers to the lastUpdate and nextUpdate fields of crl.

X509_set1_notBefore(), X509_set1_notAfter(), X509_CRL_set1_lastUpdate(), and X509_CRL_set1_nextUpdate() set the notBefore, notAfter, lastUpdate, or nextUpdate field of x or crl, respectively, to a deep copy of tm and free the ASN1_TIME value that they replace.

RETURN VALUES
X509_get0_notBefore(), X509_get0_notAfter(), X509_getm_notBefore(), X509_getm_notAfter(), X509_CRL_get0_lastUpdate(), and X509_CRL_get0_nextUpdate() return internal pointers which must not be freed by the application, or NULL if the requested fields are not available.

X509_set1_notBefore(), X509_set1_notAfter(), X509_CRL_set1_lastUpdate(), and X509_CRL_set1_nextUpdate() return 1 on success or 0 on failure.

SEE ALSO
ASN1_TIME_set(3), ASN1_TIME_set_tm(3), X509_cmp_time(3), X509_CRL_get0_by_serial(3), X509_CRL_new(3), X509_get_subject_name(3), X509_new(3), X509_sign(3), X509_VAL_new(3), X509_verify_cert(3)

HISTORY
These functions first appeared in OpenSSL 1.1.0 and have been available since OpenBSD 6.3.