Skip to content

libfaketime-v0.9.9

Compare
Choose a tag to compare
@wolfcw wolfcw released this 21 Feb 17:32
· 171 commits to master since this release
  • When compiled with the CFLAG FAKE_RANDOM set, libfaketime will intercept calls to getrandom() and return pseudorandom numbers for determinism. The mechanism needs to be activated by setting the environment variable FAKERANDOM_SEED to a 64-bit seed value, e.g., "0x12345678DEADBEEF". Please note that this completely breaks the security of random numbers for cryptographic purposes and should only be used for deterministic tests. Never use this in production!
  • When the environment variable FAKETIME_TIMESTAMP_FILE is set, points to a writeable (creatable) custom config file and the environment variable FAKETIME_UPDATE_TIMESTAMP_FILE is "1", then the file also is updated on each call. By this, a common "virtual time" can be shared by several processes, where each can adjust the time for all.
  • Additional link-time LDFLAGS can be passed via the environment variable FAKETIME_LINK_FLAGS when running 'make'.
  • Compile-time CFLAG FAKE_SETTIME can be enabled to intercept calls to clock_settime(), settimeofday(), and adjtime(). (suggested and prototyped by @ojura)
  • Additional compile-time CFLAGs can be passed via the environment variable FAKETIME_COMPILE_CFLAGS when running 'make'.
  • src/Makefile CFLAG FORCE_PTHREAD_NONVER should be set on systems that hang on CLOCK_REALTIME, or that hang on CLOCK_MONOTONIC where FORCE_MONOTONIC_FIX is not sufficient.