]>
Commit | Line | Data |
---|---|---|
c2e888b5 DSH |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
0b7347ef DSH |
5 | X509_get0_notBefore, X509_getm_notBefore, X509_get0_notAfter, |
6 | X509_getm_notAfter, X509_set1_notBefore, X509_set1_notAfter, | |
7 | X509_CRL_get0_lastUpdate, X509_CRL_get0_nextUpdate, X509_CRL_set1_lastUpdate, | |
568ce3a5 | 8 | X509_CRL_set1_nextUpdate - get or set certificate or CRL dates |
c2e888b5 DSH |
9 | |
10 | =head1 SYNOPSIS | |
11 | ||
12 | #include <openssl/x509.h> | |
13 | ||
568ce3a5 DSH |
14 | const ASN1_TIME *X509_get0_notBefore(const X509 *x); |
15 | const ASN1_TIME *X509_get0_notAfter(const X509 *x); | |
16 | ||
0b7347ef DSH |
17 | ASN1_TIME *X509_getm_notBefore(const X509 *x); |
18 | ASN1_TIME *X509_getm_notAfter(const X509 *x); | |
c2e888b5 | 19 | |
568ce3a5 DSH |
20 | int X509_set1_notBefore(X509 *x, const ASN1_TIME *tm); |
21 | int X509_set1_notAfter(X509 *x, const ASN1_TIME *tm); | |
c2e888b5 | 22 | |
568ce3a5 DSH |
23 | const ASN1_TIME *X509_CRL_get0_lastUpdate(const X509_CRL *crl); |
24 | const ASN1_TIME *X509_CRL_get0_nextUpdate(const X509_CRL *crl); | |
c2e888b5 | 25 | |
568ce3a5 DSH |
26 | int X509_CRL_set1_lastUpdate(X509_CRL *x, const ASN1_TIME *tm); |
27 | int X509_CRL_set1_nextUpdate(X509_CRL *x, const ASN1_TIME *tm); | |
c2e888b5 DSH |
28 | |
29 | =head1 DESCRIPTION | |
30 | ||
568ce3a5 | 31 | X509_get0_notBefore() and X509_get0_notAfter() return the B<notBefore> |
7e0013d9 | 32 | and B<notAfter> fields of certificate I<x> respectively. The value |
c2e888b5 DSH |
33 | returned is an internal pointer which must not be freed up after |
34 | the call. | |
35 | ||
0b7347ef DSH |
36 | X509_getm_notBefore() and X509_getm_notAfter() are similar to |
37 | X509_get0_notBefore() and X509_get0_notAfter() except they return | |
38 | non-constant mutable references to the associated date field of | |
27b138e9 | 39 | the certificate. |
568ce3a5 DSH |
40 | |
41 | X509_set1_notBefore() and X509_set1_notAfter() set the B<notBefore> | |
7e0013d9 DDO |
42 | and B<notAfter> fields of I<x> to I<tm>. Ownership of the passed |
43 | parameter I<tm> is not transferred by these functions so it must | |
c2e888b5 DSH |
44 | be freed up after the call. |
45 | ||
568ce3a5 | 46 | X509_CRL_get0_lastUpdate() and X509_CRL_get0_nextUpdate() return the |
7e0013d9 | 47 | B<lastUpdate> and B<nextUpdate> fields of I<crl>. The value |
c2e888b5 | 48 | returned is an internal pointer which must not be freed up after |
7e0013d9 DDO |
49 | the call. If the B<nextUpdate> field is absent from I<crl> then |
50 | NULL is returned. | |
c2e888b5 | 51 | |
568ce3a5 | 52 | X509_CRL_set1_lastUpdate() and X509_CRL_set1_nextUpdate() set the B<lastUpdate> |
7e0013d9 DDO |
53 | and B<nextUpdate> fields of I<crl> to I<tm>. Ownership of the passed parameter |
54 | I<tm> is not transferred by these functions so it must be freed up after the | |
c2e888b5 | 55 | call. |
7e0013d9 DDO |
56 | For X509_CRL_set1_nextUpdate() the I<tm> argument may be NULL, |
57 | which implies removal of the optional B<nextUpdate> field. | |
c2e888b5 DSH |
58 | |
59 | =head1 RETURN VALUES | |
60 | ||
568ce3a5 | 61 | X509_get0_notBefore(), X509_get0_notAfter() and X509_CRL_get0_lastUpdate() |
c2e888b5 DSH |
62 | return a pointer to an B<ASN1_TIME> structure. |
63 | ||
568ce3a5 | 64 | X509_CRL_get0_lastUpdate() return a pointer to an B<ASN1_TIME> structure |
c2e888b5 DSH |
65 | or NULL if the B<lastUpdate> field is absent. |
66 | ||
568ce3a5 DSH |
67 | X509_set1_notBefore(), X509_set1_notAfter(), X509_CRL_set1_lastUpdate() and |
68 | X509_CRL_set1_nextUpdate() return 1 for success or 0 for failure. | |
c2e888b5 DSH |
69 | |
70 | =head1 SEE ALSO | |
71 | ||
72 | L<d2i_X509(3)>, | |
73 | L<ERR_get_error(3)>, | |
74 | L<X509_CRL_get0_by_serial(3)>, | |
75 | L<X509_get0_signature(3)>, | |
76 | L<X509_get_ext_d2i(3)>, | |
77 | L<X509_get_extension_flags(3)>, | |
78 | L<X509_get_pubkey(3)>, | |
79 | L<X509_get_subject_name(3)>, | |
80 | L<X509_NAME_add_entry_by_txt(3)>, | |
81 | L<X509_NAME_ENTRY_get_object(3)>, | |
82 | L<X509_NAME_get_index_by_NID(3)>, | |
83 | L<X509_NAME_print_ex(3)>, | |
84 | L<X509_new(3)>, | |
85 | L<X509_sign(3)>, | |
86 | L<X509V3_get_d2i(3)>, | |
87 | L<X509_verify_cert(3)> | |
88 | ||
89 | =head1 HISTORY | |
90 | ||
91 | These functions are available in all versions of OpenSSL. | |
92 | ||
568ce3a5 DSH |
93 | X509_get_notBefore() and X509_get_notAfter() were deprecated in OpenSSL |
94 | 1.1.0 | |
95 | ||
c2e888b5 DSH |
96 | =head1 COPYRIGHT |
97 | ||
da1c088f | 98 | Copyright 2016-2023 The OpenSSL Project Authors. All Rights Reserved. |
c2e888b5 | 99 | |
4746f25a | 100 | Licensed under the Apache License 2.0 (the "License"). You may not use |
c2e888b5 DSH |
101 | this file except in compliance with the License. You can obtain a copy |
102 | in the file LICENSE in the source distribution or at | |
103 | L<https://www.openssl.org/source/license.html>. | |
104 | ||
105 | =cut |