From 0b18503b8e8261f13127e58a3aa7b003be49cc0e Mon Sep 17 00:00:00 2001
From: tb <>
Date: Sat, 25 May 2024 06:42:15 +0000
Subject: asn1time: another use of gmtime was hiding here

---
 src/regress/lib/libcrypto/asn1/asn1time.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

(limited to 'src')

diff --git a/src/regress/lib/libcrypto/asn1/asn1time.c b/src/regress/lib/libcrypto/asn1/asn1time.c
index 7cc6df8a1a..f7df794c54 100644
--- a/src/regress/lib/libcrypto/asn1/asn1time.c
+++ b/src/regress/lib/libcrypto/asn1/asn1time.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: asn1time.c,v 1.26 2024/04/08 19:57:40 beck Exp $ */
+/* $OpenBSD: asn1time.c,v 1.27 2024/05/25 06:42:15 tb Exp $ */
 /*
  * Copyright (c) 2015 Joel Sing <jsing@openbsd.org>
  * Copyright (c) 2024 Google Inc.
@@ -280,6 +280,7 @@ asn1_gentime_test(int test_no, const struct asn1_time_test *att)
 	const unsigned char *der;
 	unsigned char *p = NULL;
 	ASN1_GENERALIZEDTIME *gt = NULL;
+	int64_t a;
 	int failure = 1;
 	int len;
 	struct tm tm;
@@ -307,11 +308,16 @@ asn1_gentime_test(int test_no, const struct asn1_time_test *att)
 		goto done;
 	}
 
-	if (timegm(&tm) != att->time) {
+	if (!OPENSSL_timegm(&tm, &a)) {
+		fprintf(stderr, "FAIL: test %d - OPENSSL_timegm falied '%s'\n",
+		    test_no, att->str);
+		goto done;
+	}
+	if (a != att->time) {
 		/* things with crappy time_t should die in fire */
-		int64_t a = timegm(&tm);
 		int64_t b = att->time;
-		fprintf(stderr, "FAIL: test %d - times don't match, expected %lld got %lld\n",
+		fprintf(stderr, "FAIL: test %d - times don't match, "
+		    "expected %lld got %lld\n",
 		    test_no, (long long)b, (long long)a);
 		goto done;
 	}
-- 
cgit v1.2.3-55-g6feb