tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

get_current_time_posix.inc (589B)


      1 #include "absl/time/clock.h"
      2 
      3 #include <sys/time.h>
      4 #include <ctime>
      5 #include <cstdint>
      6 
      7 #include "absl/base/internal/raw_logging.h"
      8 
      9 namespace absl {
     10 ABSL_NAMESPACE_BEGIN
     11 namespace time_internal {
     12 
     13 static int64_t GetCurrentTimeNanosFromSystem() {
     14  const int64_t kNanosPerSecond = 1000 * 1000 * 1000;
     15  struct timespec ts;
     16  ABSL_RAW_CHECK(clock_gettime(CLOCK_REALTIME, &ts) == 0,
     17                 "Failed to read real-time clock.");
     18  return (int64_t{ts.tv_sec} * kNanosPerSecond +
     19          int64_t{ts.tv_nsec});
     20 }
     21 
     22 }  // namespace time_internal
     23 ABSL_NAMESPACE_END
     24 }  // namespace absl