diff options
author | Dr. David von Oheimb <David.von.Oheimb@siemens.com> | 2019-11-22 13:02:52 +0100 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2019-12-04 15:17:55 +0000 |
commit | 25d7cd1d69e5d5df9c9f346922a48797baca03b7 (patch) | |
tree | 7c60c618d7e22dc13cb6a7a270fccb50aa3a394c /doc | |
parent | dc5d74e648c499d5247ff2d3db125c347abc5c1f (diff) |
add X509_cmp_timeframe() including its documentation
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10502)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man3/X509_VERIFY_PARAM_set_flags.pod | 2 | ||||
-rw-r--r-- | doc/man3/X509_cmp_time.pod | 34 |
2 files changed, 29 insertions, 7 deletions
diff --git a/doc/man3/X509_VERIFY_PARAM_set_flags.pod b/doc/man3/X509_VERIFY_PARAM_set_flags.pod index 2d161ebbab..8352a39b86 100644 --- a/doc/man3/X509_VERIFY_PARAM_set_flags.pod +++ b/doc/man3/X509_VERIFY_PARAM_set_flags.pod @@ -26,7 +26,7 @@ X509_VERIFY_PARAM_set1_ip_asc unsigned long flags); int X509_VERIFY_PARAM_clear_flags(X509_VERIFY_PARAM *param, unsigned long flags); - unsigned long X509_VERIFY_PARAM_get_flags(X509_VERIFY_PARAM *param); + unsigned long X509_VERIFY_PARAM_get_flags(const X509_VERIFY_PARAM *param); int X509_VERIFY_PARAM_set_inh_flags(X509_VERIFY_PARAM *param, uint32_t flags); diff --git a/doc/man3/X509_cmp_time.pod b/doc/man3/X509_cmp_time.pod index 6fbb66f1c2..73ef9e3fbc 100644 --- a/doc/man3/X509_cmp_time.pod +++ b/doc/man3/X509_cmp_time.pod @@ -2,13 +2,16 @@ =head1 NAME -X509_cmp_time, X509_cmp_current_time, X509_time_adj, X509_time_adj_ex +X509_cmp_time, X509_cmp_current_time, X509_cmp_timeframe, +X509_time_adj, X509_time_adj_ex - X509 time functions =head1 SYNOPSIS int X509_cmp_time(const ASN1_TIME *asn1_time, time_t *in_tm); int X509_cmp_current_time(const ASN1_TIME *asn1_time); + int X509_cmp_timeframe(const X509_VERIFY_PARAM *vpm, + const ASN1_TIME *start, const ASN1_TIME *end); ASN1_TIME *X509_time_adj(ASN1_TIME *asn1_time, long offset_sec, time_t *in_tm); ASN1_TIME *X509_time_adj_ex(ASN1_TIME *asn1_time, int offset_day, long offset_sec, time_t *in_tm); @@ -16,10 +19,14 @@ X509_cmp_time, X509_cmp_current_time, X509_time_adj, X509_time_adj_ex =head1 DESCRIPTION X509_cmp_time() compares the ASN1_TIME in B<asn1_time> with the time -in <cmp_time>. X509_cmp_current_time() compares the ASN1_TIME in -B<asn1_time> with the current time, expressed as time_t. B<asn1_time> -must satisfy the ASN1_TIME format mandated by RFC 5280, i.e., its -format must be either YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. +in <in_tm>. + +X509_cmp_current_time() compares the ASN1_TIME in +B<asn1_time> with the current time, expressed as time_t. + +X509_cmp_timeframe() compares the given time period with the reference time +included in the verification parameters B<vpm> if they are not NULL and contain +B<X509_V_FLAG_USE_CHECK_TIME>; else the current time is used as reference time. X509_time_adj_ex() sets the ASN1_TIME structure B<asn1_time> to the time B<offset_day> and B<offset_sec> after B<in_tm>. @@ -35,6 +42,9 @@ is allocated and returned. In all methods, if B<in_tm> is NULL, the current time, expressed as time_t, is used. +B<asn1_time> must satisfy the ASN1_TIME format mandated by RFC 5280, +i.e., its format must be either YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. + =head1 BUGS Unlike many standard comparison functions, X509_cmp_time() and @@ -43,12 +53,24 @@ X509_cmp_current_time() return 0 on error. =head1 RETURN VALUES X509_cmp_time() and X509_cmp_current_time() return -1 if B<asn1_time> -is earlier than, or equal to, B<cmp_time> (resp. current time), and 1 +is earlier than, or equal to, B<in_tm> (resp. current time), and 1 otherwise. These methods return 0 on error. +X509_cmp_timeframe() returns 0 if B<vpm> is not NULL and the verification +parameters do not contain B<X509_V_FLAG_USE_CHECK_TIME> +but do contain B<X509_V_FLAG_NO_CHECK_TIME>. Otherwise it returns +1 if the end time is not NULL and the reference time (which has determined as +stated above) is past the end time, -1 if the start time is not NULL and the +reference time is before, else 0 to indicate that the reference time is in range +(implying that the end time is not before the start time if both are present). + X509_time_adj() and X509_time_adj_ex() return a pointer to the updated ASN1_TIME structure, and NULL on error. +=head1 HISTORY + +X509_cmp_timeframe() was added in OpenSSL 3.0. + =head1 COPYRIGHT Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved. |