sys: add the possibility to fuzz what sys_now() returns

This commit is contained in:
Simon Goldschmidt 2020-02-17 21:39:46 +01:00
parent 9b5a6fe1dc
commit fc85b055d7
3 changed files with 16 additions and 2 deletions

View File

@ -670,9 +670,14 @@ u32_t
sys_now(void)
{
struct timespec ts;
u32_t now;
get_monotonic_time(&ts);
return (u32_t)(ts.tv_sec * 1000L + ts.tv_nsec / 1000000L);
now = (u32_t)(ts.tv_sec * 1000L + ts.tv_nsec / 1000000L);
#ifdef LWIP_FUZZ_SYS_NOW
now += sys_now_offset;
#endif
return now;
}
u32_t

View File

@ -142,7 +142,11 @@ sys_jiffies(void)
u32_t
sys_now(void)
{
return (u32_t)sys_get_ms_longlong();
u32_t now = (u32_t)sys_get_ms_longlong();
#ifdef LWIP_FUZZ_SYS_NOW
now += sys_now_offset;
#endif
return now;
}
CRITICAL_SECTION critSec;

View File

@ -445,6 +445,11 @@ void sys_init(void);
u32_t sys_jiffies(void);
#endif
#ifdef LWIP_FUZZ_SYS_NOW
/* This offset should be added to the time 'sys_now()' returns */
extern u32_t sys_now_offset;
#endif
/**
* @ingroup sys_time
* Returns the current time in milliseconds,