diff options
author | beck <> | 2017-05-06 17:12:59 +0000 |
---|---|---|
committer | beck <> | 2017-05-06 17:12:59 +0000 |
commit | 853167f231fa10e61d7747b6f028087e76d0eaa6 (patch) | |
tree | dc9c35b12d4ec6d0389f08be9ff6d7183a4f80d4 /src/lib/libcrypto/asn1 | |
parent | d9dc0bed247af8759a2ecc0116b8f9539291435e (diff) | |
download | openbsd-853167f231fa10e61d7747b6f028087e76d0eaa6.tar.gz openbsd-853167f231fa10e61d7747b6f028087e76d0eaa6.tar.bz2 openbsd-853167f231fa10e61d7747b6f028087e76d0eaa6.zip |
Add ASN1_TIME_set_tm to set an asn1 from a struct tm *
ok jsing@
Diffstat (limited to 'src/lib/libcrypto/asn1')
-rw-r--r-- | src/lib/libcrypto/asn1/a_time_tm.c | 12 | ||||
-rw-r--r-- | src/lib/libcrypto/asn1/asn1.h | 3 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/lib/libcrypto/asn1/a_time_tm.c b/src/lib/libcrypto/asn1/a_time_tm.c index b2f65045b5..f0afc00be4 100644 --- a/src/lib/libcrypto/asn1/a_time_tm.c +++ b/src/lib/libcrypto/asn1/a_time_tm.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: a_time_tm.c,v 1.11 2017/01/29 17:49:22 beck Exp $ */ | 1 | /* $OpenBSD: a_time_tm.c,v 1.12 2017/05/06 17:12:59 beck Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2015 Bob Beck <beck@openbsd.org> | 3 | * Copyright (c) 2015 Bob Beck <beck@openbsd.org> |
4 | * | 4 | * |
@@ -304,6 +304,16 @@ ASN1_TIME_set(ASN1_TIME *s, time_t t) | |||
304 | } | 304 | } |
305 | 305 | ||
306 | ASN1_TIME * | 306 | ASN1_TIME * |
307 | ASN1_TIME_set_tm(ASN1_TIME *s, struct tm *tm) | ||
308 | { | ||
309 | time_t t; | ||
310 | |||
311 | if ((t = timegm(tm)) == -1) | ||
312 | return NULL; | ||
313 | return (ASN1_TIME_adj(s, t, 0, 0)); | ||
314 | } | ||
315 | |||
316 | ASN1_TIME * | ||
307 | ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, long offset_sec) | 317 | ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, long offset_sec) |
308 | { | 318 | { |
309 | return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, RFC5280)); | 319 | return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, RFC5280)); |
diff --git a/src/lib/libcrypto/asn1/asn1.h b/src/lib/libcrypto/asn1/asn1.h index e35c865e1f..da16d5c529 100644 --- a/src/lib/libcrypto/asn1/asn1.h +++ b/src/lib/libcrypto/asn1/asn1.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: asn1.h,v 1.42 2016/12/30 16:29:45 jsing Exp $ */ | 1 | /* $OpenBSD: asn1.h,v 1.43 2017/05/06 17:12:59 beck Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -939,6 +939,7 @@ extern const ASN1_ITEM ASN1_TIME_it; | |||
939 | extern const ASN1_ITEM ASN1_OCTET_STRING_NDEF_it; | 939 | extern const ASN1_ITEM ASN1_OCTET_STRING_NDEF_it; |
940 | 940 | ||
941 | ASN1_TIME *ASN1_TIME_set(ASN1_TIME *s, time_t t); | 941 | ASN1_TIME *ASN1_TIME_set(ASN1_TIME *s, time_t t); |
942 | ASN1_TIME *ASN1_TIME_set_tm(ASN1_TIME *s, struct tm *tm); | ||
942 | ASN1_TIME *ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, | 943 | ASN1_TIME *ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, |
943 | long offset_sec); | 944 | long offset_sec); |
944 | int ASN1_TIME_check(ASN1_TIME *t); | 945 | int ASN1_TIME_check(ASN1_TIME *t); |