Make RFC 5280 test xfail on 32-bit time_t systems

This commit is contained in:
Theo Buehler
2024-05-26 07:23:36 +02:00
parent 8f03828942
commit 1fec7bea51
4 changed files with 19 additions and 48 deletions

View File

@@ -1,48 +0,0 @@
--- tests/rfc5280time.c.orig Mon Nov 2 20:00:31 2015
+++ tests/rfc5280time.c Mon Nov 2 20:03:12 2015
@@ -91,6 +91,7 @@
.data = "20150923032700Z",
.time = 1442978820,
},
+#if SIZEOF_TIME_T == 8
{
/* (times before 2050 must be UTCTIME) Per RFC 5280 4.1.2.5 */
.str = "00000101000000Z",
@@ -103,6 +104,7 @@
.data = "20491231235959Z",
.time = 2524607999LL,
},
+#endif
{
/* (times before 2050 must be UTCTIME) Per RFC 5280 4.1.2.5 */
.str = "19500101000000Z",
@@ -112,6 +114,7 @@
};
struct rfc5280_time_test rfc5280_gentime_tests[] = {
+#if SIZEOF_TIME_T == 8
{
/* Biggest RFC 5280 time */
.str = "99991231235959Z",
@@ -129,6 +132,7 @@
.data = "20500101000000Z",
.time = 2524608000LL,
},
+#endif
};
struct rfc5280_time_test rfc5280_utctime_tests[] = {
{
@@ -141,11 +145,13 @@
.data = "540226230640Z",
.time = -500000000,
},
+#if SIZEOF_TIME_T == 8
{
.str = "491231235959Z",
.data = "491231235959Z",
.time = 2524607999LL,
},
+#endif
{
.str = "700101000000Z",
.data = "700101000000Z",

View File

@@ -588,6 +588,9 @@ add_test(rfc3779 rfc3779)
add_executable(rfc5280time rfc5280time.c)
target_link_libraries(rfc5280time ${OPENSSL_TEST_LIBS})
add_test(rfc5280time rfc5280time)
if(SMALL_TIME_T)
set_property(TEST rfc5280time PROPERTY WILL_FAIL TRUE)
endif()
# rmd_test
add_executable(rmd_test rmd_test.c)

View File

@@ -624,7 +624,13 @@ rfc3779_SOURCES = rfc3779.c
# rfc5280time
check_PROGRAMS += rfc5280time
rfc5280time_SOURCES = rfc5280time.c
if SMALL_TIME_T
TESTS += rfc5280time_small.test
XFAIL_TESTS += rfc5280time_small.test
else
TESTS += rfc5280time
endif
EXTRA_DIST += rfc5280time_small.test
# rmd_test
TESTS += rmd_test

10
tests/rfc5280time_small.test Executable file
View File

@@ -0,0 +1,10 @@
#!/bin/sh
echo 1..1
TEST=./rfc5280
if [ -e ./rfc5280.exe ]; then
TEST=./rfc5280.exe
fi
# map test failure to XFAIL and success to XPASS
$TEST || echo -n "not "
echo "ok # this system is unable to represent times past 2038"