diff options
author | Cory Fields <cory-nospam-@coryfields.com> | 2017-01-16 15:01:37 -0500 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2021-02-17 12:26:04 +0800 |
commit | 3c2e16be22ae04bf56663ee5ec1554d0d569741b (patch) | |
tree | 826d344a5874a6a7c2e71c384288ac4bbc696275 /src/util/time.h | |
parent | 36be9b821ae0882ba5ccba543f959636e413991d (diff) | |
download | bitcoin-3c2e16be22ae04bf56663ee5ec1554d0d569741b.tar.xz |
time: add runtime sanity check
std::chrono::system_clock.time_since_epoch and time_t(0) are not guaranteed
to use the Unix epoch timestamp, but in practice they almost certainly will.
Any differing behavior will be assumed to be an error, unless certain
platforms prove to consistently deviate, at which point we'll cope with it
by adding offsets.
Do a quick runtime check to verify that
time_t(0) == std::chrono::system_clock's epoch time == unix epoch.
Co-authored-by: Anthony Towns <aj@erisian.com.au>
Diffstat (limited to 'src/util/time.h')
-rw-r--r-- | src/util/time.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/util/time.h b/src/util/time.h index 03b75b5be5..6fb6d5a670 100644 --- a/src/util/time.h +++ b/src/util/time.h @@ -70,4 +70,7 @@ struct timeval MillisToTimeval(int64_t nTimeout); */ struct timeval MillisToTimeval(std::chrono::milliseconds ms); +/** Sanity check epoch match normal Unix epoch */ +bool ChronoSanityCheck(); + #endif // BITCOIN_UTIL_TIME_H |