summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/asn1/a_time_tm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/asn1/a_time_tm.c')
-rw-r--r--src/lib/libcrypto/asn1/a_time_tm.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/lib/libcrypto/asn1/a_time_tm.c b/src/lib/libcrypto/asn1/a_time_tm.c
index c8b0172621..c269d770b4 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.27 2022/11/26 16:08:50 tb Exp $ */ 1/* $OpenBSD: a_time_tm.c,v 1.28 2023/07/05 21:23:36 beck Exp $ */
2/* 2/*
3 * Copyright (c) 2015 Bob Beck <beck@openbsd.org> 3 * Copyright (c) 2015 Bob Beck <beck@openbsd.org>
4 * 4 *
@@ -60,6 +60,7 @@ ASN1_time_tm_cmp(struct tm *tm1, struct tm *tm2)
60 return (1); 60 return (1);
61 return 0; 61 return 0;
62} 62}
63LCRYPTO_ALIAS(ASN1_time_tm_cmp);
63 64
64int 65int
65ASN1_time_tm_clamp_notafter(struct tm *tm) 66ASN1_time_tm_clamp_notafter(struct tm *tm)
@@ -76,6 +77,7 @@ ASN1_time_tm_clamp_notafter(struct tm *tm)
76#endif 77#endif
77 return 1; 78 return 1;
78} 79}
80LCRYPTO_ALIAS(ASN1_time_tm_clamp_notafter);
79 81
80/* Convert time to GeneralizedTime, X.690, 11.7. */ 82/* Convert time to GeneralizedTime, X.690, 11.7. */
81ASN1_TIME * 83ASN1_TIME *
@@ -344,6 +346,7 @@ ASN1_time_parse(const char *bytes, size_t len, struct tm *tm, int mode)
344 346
345 return -1; 347 return -1;
346} 348}
349LCRYPTO_ALIAS(ASN1_time_parse);
347 350
348/* 351/*
349 * ASN1_TIME generic functions. 352 * ASN1_TIME generic functions.
@@ -404,6 +407,7 @@ ASN1_TIME_set(ASN1_TIME *s, time_t t)
404{ 407{
405 return (ASN1_TIME_adj(s, t, 0, 0)); 408 return (ASN1_TIME_adj(s, t, 0, 0));
406} 409}
410LCRYPTO_ALIAS(ASN1_TIME_set);
407 411
408ASN1_TIME * 412ASN1_TIME *
409ASN1_TIME_set_tm(ASN1_TIME *s, struct tm *tm) 413ASN1_TIME_set_tm(ASN1_TIME *s, struct tm *tm)
@@ -414,12 +418,14 @@ ASN1_TIME_set_tm(ASN1_TIME *s, struct tm *tm)
414 return NULL; 418 return NULL;
415 return (ASN1_TIME_adj(s, t, 0, 0)); 419 return (ASN1_TIME_adj(s, t, 0, 0));
416} 420}
421LCRYPTO_ALIAS(ASN1_TIME_set_tm);
417 422
418ASN1_TIME * 423ASN1_TIME *
419ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, long offset_sec) 424ASN1_TIME_adj(ASN1_TIME *s, time_t t, int offset_day, long offset_sec)
420{ 425{
421 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, RFC5280)); 426 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, RFC5280));
422} 427}
428LCRYPTO_ALIAS(ASN1_TIME_adj);
423 429
424int 430int
425ASN1_TIME_check(const ASN1_TIME *t) 431ASN1_TIME_check(const ASN1_TIME *t)
@@ -428,6 +434,7 @@ ASN1_TIME_check(const ASN1_TIME *t)
428 return (0); 434 return (0);
429 return (t->type == ASN1_time_parse(t->data, t->length, NULL, t->type)); 435 return (t->type == ASN1_time_parse(t->data, t->length, NULL, t->type));
430} 436}
437LCRYPTO_ALIAS(ASN1_TIME_check);
431 438
432ASN1_GENERALIZEDTIME * 439ASN1_GENERALIZEDTIME *
433ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, ASN1_GENERALIZEDTIME **out) 440ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, ASN1_GENERALIZEDTIME **out)
@@ -450,12 +457,14 @@ ASN1_TIME_to_generalizedtime(const ASN1_TIME *t, ASN1_GENERALIZEDTIME **out)
450 457
451 return (agt); 458 return (agt);
452} 459}
460LCRYPTO_ALIAS(ASN1_TIME_to_generalizedtime);
453 461
454int 462int
455ASN1_TIME_set_string(ASN1_TIME *s, const char *str) 463ASN1_TIME_set_string(ASN1_TIME *s, const char *str)
456{ 464{
457 return (ASN1_TIME_set_string_internal(s, str, 0)); 465 return (ASN1_TIME_set_string_internal(s, str, 0));
458} 466}
467LCRYPTO_ALIAS(ASN1_TIME_set_string);
459 468
460static int 469static int
461ASN1_TIME_cmp_time_t_internal(const ASN1_TIME *s, time_t t2, int mode) 470ASN1_TIME_cmp_time_t_internal(const ASN1_TIME *s, time_t t2, int mode)
@@ -500,6 +509,7 @@ ASN1_TIME_compare(const ASN1_TIME *t1, const ASN1_TIME *t2)
500 509
501 return ASN1_time_tm_cmp(&tm1, &tm2); 510 return ASN1_time_tm_cmp(&tm1, &tm2);
502} 511}
512LCRYPTO_ALIAS(ASN1_TIME_compare);
503 513
504int 514int
505ASN1_TIME_cmp_time_t(const ASN1_TIME *s, time_t t) 515ASN1_TIME_cmp_time_t(const ASN1_TIME *s, time_t t)
@@ -511,6 +521,7 @@ ASN1_TIME_cmp_time_t(const ASN1_TIME *s, time_t t)
511 V_ASN1_GENERALIZEDTIME); 521 V_ASN1_GENERALIZEDTIME);
512 return -2; 522 return -2;
513} 523}
524LCRYPTO_ALIAS(ASN1_TIME_cmp_time_t);
514 525
515/* 526/*
516 * ASN1_UTCTIME wrappers 527 * ASN1_UTCTIME wrappers
@@ -523,6 +534,7 @@ ASN1_UTCTIME_check(const ASN1_UTCTIME *d)
523 return (0); 534 return (0);
524 return (d->type == ASN1_time_parse(d->data, d->length, NULL, d->type)); 535 return (d->type == ASN1_time_parse(d->data, d->length, NULL, d->type));
525} 536}
537LCRYPTO_ALIAS(ASN1_UTCTIME_check);
526 538
527int 539int
528ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, const char *str) 540ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, const char *str)
@@ -531,12 +543,14 @@ ASN1_UTCTIME_set_string(ASN1_UTCTIME *s, const char *str)
531 return (0); 543 return (0);
532 return (ASN1_TIME_set_string_internal(s, str, V_ASN1_UTCTIME)); 544 return (ASN1_TIME_set_string_internal(s, str, V_ASN1_UTCTIME));
533} 545}
546LCRYPTO_ALIAS(ASN1_UTCTIME_set_string);
534 547
535ASN1_UTCTIME * 548ASN1_UTCTIME *
536ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t) 549ASN1_UTCTIME_set(ASN1_UTCTIME *s, time_t t)
537{ 550{
538 return (ASN1_UTCTIME_adj(s, t, 0, 0)); 551 return (ASN1_UTCTIME_adj(s, t, 0, 0));
539} 552}
553LCRYPTO_ALIAS(ASN1_UTCTIME_set);
540 554
541ASN1_UTCTIME * 555ASN1_UTCTIME *
542ASN1_UTCTIME_adj(ASN1_UTCTIME *s, time_t t, int offset_day, long offset_sec) 556ASN1_UTCTIME_adj(ASN1_UTCTIME *s, time_t t, int offset_day, long offset_sec)
@@ -544,6 +558,7 @@ ASN1_UTCTIME_adj(ASN1_UTCTIME *s, time_t t, int offset_day, long offset_sec)
544 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, 558 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec,
545 V_ASN1_UTCTIME)); 559 V_ASN1_UTCTIME));
546} 560}
561LCRYPTO_ALIAS(ASN1_UTCTIME_adj);
547 562
548int 563int
549ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t) 564ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t)
@@ -552,6 +567,7 @@ ASN1_UTCTIME_cmp_time_t(const ASN1_UTCTIME *s, time_t t)
552 return ASN1_TIME_cmp_time_t_internal(s, t, V_ASN1_UTCTIME); 567 return ASN1_TIME_cmp_time_t_internal(s, t, V_ASN1_UTCTIME);
553 return -2; 568 return -2;
554} 569}
570LCRYPTO_ALIAS(ASN1_UTCTIME_cmp_time_t);
555 571
556/* 572/*
557 * ASN1_GENERALIZEDTIME wrappers 573 * ASN1_GENERALIZEDTIME wrappers
@@ -564,6 +580,7 @@ ASN1_GENERALIZEDTIME_check(const ASN1_GENERALIZEDTIME *d)
564 return (0); 580 return (0);
565 return (d->type == ASN1_time_parse(d->data, d->length, NULL, d->type)); 581 return (d->type == ASN1_time_parse(d->data, d->length, NULL, d->type));
566} 582}
583LCRYPTO_ALIAS(ASN1_GENERALIZEDTIME_check);
567 584
568int 585int
569ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str) 586ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str)
@@ -572,12 +589,14 @@ ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str)
572 return (0); 589 return (0);
573 return (ASN1_TIME_set_string_internal(s, str, V_ASN1_GENERALIZEDTIME)); 590 return (ASN1_TIME_set_string_internal(s, str, V_ASN1_GENERALIZEDTIME));
574} 591}
592LCRYPTO_ALIAS(ASN1_GENERALIZEDTIME_set_string);
575 593
576ASN1_GENERALIZEDTIME * 594ASN1_GENERALIZEDTIME *
577ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s, time_t t) 595ASN1_GENERALIZEDTIME_set(ASN1_GENERALIZEDTIME *s, time_t t)
578{ 596{
579 return (ASN1_GENERALIZEDTIME_adj(s, t, 0, 0)); 597 return (ASN1_GENERALIZEDTIME_adj(s, t, 0, 0));
580} 598}
599LCRYPTO_ALIAS(ASN1_GENERALIZEDTIME_set);
581 600
582ASN1_GENERALIZEDTIME * 601ASN1_GENERALIZEDTIME *
583ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, time_t t, int offset_day, 602ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, time_t t, int offset_day,
@@ -586,6 +605,7 @@ ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s, time_t t, int offset_day,
586 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec, 605 return (ASN1_TIME_adj_internal(s, t, offset_day, offset_sec,
587 V_ASN1_GENERALIZEDTIME)); 606 V_ASN1_GENERALIZEDTIME));
588} 607}
608LCRYPTO_ALIAS(ASN1_GENERALIZEDTIME_adj);
589 609
590int 610int
591ASN1_TIME_normalize(ASN1_TIME *t) 611ASN1_TIME_normalize(ASN1_TIME *t)
@@ -596,9 +616,11 @@ ASN1_TIME_normalize(ASN1_TIME *t)
596 return 0; 616 return 0;
597 return tm_to_rfc5280_time(&tm, t) != NULL; 617 return tm_to_rfc5280_time(&tm, t) != NULL;
598} 618}
619LCRYPTO_ALIAS(ASN1_TIME_normalize);
599 620
600int 621int
601ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str) 622ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str)
602{ 623{
603 return ASN1_TIME_set_string_internal(s, str, RFC5280); 624 return ASN1_TIME_set_string_internal(s, str, RFC5280);
604} 625}
626LCRYPTO_ALIAS(ASN1_TIME_set_string_X509);