From 77daaad19847088ca0cdb17811dbf36aa8f4700b Mon Sep 17 00:00:00 2001 From: Andrzej Kurek <andrzej.kurek@arm.com> Date: Fri, 4 Mar 2022 15:10:06 -0500 Subject: [PATCH] Provide a dummy implementation of timing.c Also move the self test implementation guards so that alternate implementations must provide their own. Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com> --- library/timing.c | 48 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 44 insertions(+), 4 deletions(-) diff --git a/library/timing.c b/library/timing.c index eb4146132..a5a55d66c 100644 --- a/library/timing.c +++ b/library/timing.c @@ -56,17 +56,18 @@ struct _hr_time #include <unistd.h> #include <sys/types.h> -#include <sys/time.h> #include <signal.h> +#if defined(MBEDTLS_HAVE_TIME) #include <time.h> - +#include <sys/time.h> struct _hr_time { struct timeval start; }; - +#endif #endif /* _WIN32 && !EFIX64 && !EFI32 */ +#if defined(MBEDTLS_HAVE_TIME) #if !defined(HAVE_HARDCLOCK) && defined(MBEDTLS_HAVE_ASM) && \ ( defined(_MSC_VER) && defined(_M_IX86) ) || defined(__WATCOMC__) @@ -364,7 +365,6 @@ int mbedtls_timing_get_delay( void *data ) return( 0 ); } -#endif /* !MBEDTLS_TIMING_ALT */ #if defined(MBEDTLS_SELF_TEST) @@ -527,4 +527,44 @@ hard_test_done: #endif /* MBEDTLS_SELF_TEST */ +#else +volatile int mbedtls_timing_alarmed = 0; +int mbedtls_timing_get_delay( void *data ) +{ + (void) data; + return( 0 ); +} + +void mbedtls_timing_set_delay( void *data, uint32_t int_ms, uint32_t fin_ms ) +{ + (void) data; + (void) int_ms; + (void) fin_ms; +} + +unsigned long mbedtls_timing_get_timer( struct mbedtls_timing_hr_time *val, int reset ) +{ + (void) val; + (void) reset; + return( 0 ); +} + +unsigned long mbedtls_timing_hardclock( void ) +{ + return( 0 ); +} + +void mbedtls_set_alarm( int seconds ) +{ + (void) seconds; +} +#if defined(MBEDTLS_SELF_TEST) +int mbedtls_timing_self_test( int verbose ) +{ + (void) verbose; + return( 0 ); +} +#endif /* MBEDTLS_SELF_TEST */ +#endif /* MBEDTLS_HAVE_TIME */ +#endif /* !MBEDTLS_TIMING_ALT */ #endif /* MBEDTLS_TIMING_C */