disable some tests with 32-bit time_t systems
Also disable use of _mkgmtime, it does not produce correct results.
This commit is contained in:
parent
e8c9210073
commit
a45e38e962
@ -48,6 +48,9 @@ AM_CONDITIONAL([BUILD_CERTHASH], [test "x$ac_cv_func_symlink" = xyes])
|
|||||||
# Check if funopen exists
|
# Check if funopen exists
|
||||||
AC_CHECK_FUNC([funopen])
|
AC_CHECK_FUNC([funopen])
|
||||||
|
|
||||||
|
# Check if time_t is sized correctly
|
||||||
|
AC_CHECK_SIZEOF([time_t], [time.h])
|
||||||
|
|
||||||
CHECK_LIBC_COMPAT
|
CHECK_LIBC_COMPAT
|
||||||
CHECK_SYSCALL_COMPAT
|
CHECK_SYSCALL_COMPAT
|
||||||
CHECK_CRYPTO_COMPAT
|
CHECK_CRYPTO_COMPAT
|
||||||
|
@ -74,10 +74,8 @@ libcompat_la_SOURCES += compat/inet_pton.c
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if !HAVE_TIMEGM
|
if !HAVE_TIMEGM
|
||||||
if !HAVE__MKGMTIME
|
|
||||||
libcompat_la_SOURCES += compat/timegm.c
|
libcompat_la_SOURCES += compat/timegm.c
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
|
|
||||||
if !HAVE_REALLOCARRAY
|
if !HAVE_REALLOCARRAY
|
||||||
libcompat_la_SOURCES += compat/reallocarray.c
|
libcompat_la_SOURCES += compat/reallocarray.c
|
||||||
|
@ -15,9 +15,5 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef HAVE_TIMEGM
|
#ifndef HAVE_TIMEGM
|
||||||
#ifdef HAVE__MKGMTIME
|
|
||||||
#define timegm(tm) _mkgmtime(tm)
|
|
||||||
#else
|
|
||||||
time_t timegm(struct tm *tm);
|
time_t timegm(struct tm *tm);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
@ -17,7 +17,6 @@ AM_CONDITIONAL([HAVE_STRNLEN], [test "x$ac_cv_func_strnlen" = xyes])
|
|||||||
AM_CONDITIONAL([HAVE_STRSEP], [test "x$ac_cv_func_strsep" = xyes])
|
AM_CONDITIONAL([HAVE_STRSEP], [test "x$ac_cv_func_strsep" = xyes])
|
||||||
AM_CONDITIONAL([HAVE_STRTONUM], [test "x$ac_cv_func_strtonum" = xyes])
|
AM_CONDITIONAL([HAVE_STRTONUM], [test "x$ac_cv_func_strtonum" = xyes])
|
||||||
AM_CONDITIONAL([HAVE_TIMEGM], [test "x$ac_cv_func_timegm" = xyes])
|
AM_CONDITIONAL([HAVE_TIMEGM], [test "x$ac_cv_func_timegm" = xyes])
|
||||||
AM_CONDITIONAL([HAVE__MKGMTIME], [test "x$ac_cv_func__mkgmtime" = xyes])
|
|
||||||
])
|
])
|
||||||
|
|
||||||
AC_DEFUN([CHECK_SYSCALL_COMPAT], [
|
AC_DEFUN([CHECK_SYSCALL_COMPAT], [
|
||||||
|
82
patches/rfc5280.c.patch
Normal file
82
patches/rfc5280.c.patch
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
--- tests/rfc5280time.c.orig Sat Oct 17 22:36:27 2015
|
||||||
|
+++ tests/rfc5280time.c Sat Oct 17 22:44:25 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 = 2524607999,
|
||||||
|
},
|
||||||
|
+#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 = 2524608000,
|
||||||
|
},
|
||||||
|
+#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 = 2524607999,
|
||||||
|
},
|
||||||
|
+#endif
|
||||||
|
{
|
||||||
|
.str = "700101000000Z",
|
||||||
|
.data = "700101000000Z",
|
||||||
|
@@ -273,14 +279,14 @@
|
||||||
|
|
||||||
|
if ((i = X509_cmp_time(gt, &att->time)) != -1) {
|
||||||
|
fprintf(stderr, "FAIL: test %i - X509_cmp_time failed - returned %d compared to %lld\n",
|
||||||
|
- test_no, i, att->time);
|
||||||
|
+ test_no, i, (long long)att->time);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
|
att->time--;
|
||||||
|
if ((i = X509_cmp_time(gt, &att->time)) != 1) {
|
||||||
|
fprintf(stderr, "FAIL: test %i - X509_cmp_time failed - returned %d compared to %lld\n",
|
||||||
|
- test_no, i, att->time);
|
||||||
|
+ test_no, i, (long long)att->time);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
att->time++;
|
||||||
|
@@ -325,14 +331,14 @@
|
||||||
|
|
||||||
|
if ((i = X509_cmp_time(ut, &att->time)) != -1) {
|
||||||
|
fprintf(stderr, "FAIL: test %i - X509_cmp_time failed - returned %d compared to %lld\n",
|
||||||
|
- test_no, i, att->time);
|
||||||
|
+ test_no, i, (long long)att->time);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
|
att->time--;
|
||||||
|
if ((i = X509_cmp_time(ut, &att->time)) != 1) {
|
||||||
|
fprintf(stderr, "FAIL: test %i - X509_cmp_time failed - returned %d compared to %lld\n",
|
||||||
|
- test_no, i, att->time);
|
||||||
|
+ test_no, i, (long long)att->time);
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
att->time++;
|
Loading…
Reference in New Issue
Block a user