From 3c7cd281093b896c825876b674320a5100b204bb Mon Sep 17 00:00:00 2001 From: "Albert ARIBAUD (3ADEV)" Date: Fri, 8 Sep 2017 00:42:13 +0200 Subject: [PATCH] Y2038: add function __ntp_gettime64 --- sysdeps/unix/sysv/linux/Versions | 1 + sysdeps/unix/sysv/linux/ntp_gettime.c | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions index 336c13b57db..07a36e87db5 100644 --- a/sysdeps/unix/sysv/linux/Versions +++ b/sysdeps/unix/sysv/linux/Versions @@ -170,6 +170,7 @@ libc { memfd_create; mlock2; pkey_alloc; pkey_free; pkey_set; pkey_get; pkey_mprotect; + __ntp_gettime64; } GLIBC_PRIVATE { # functions used in other libraries diff --git a/sysdeps/unix/sysv/linux/ntp_gettime.c b/sysdeps/unix/sysv/linux/ntp_gettime.c index 18650da94ce..f025263fab7 100644 --- a/sysdeps/unix/sysv/linux/ntp_gettime.c +++ b/sysdeps/unix/sysv/linux/ntp_gettime.c @@ -18,6 +18,7 @@ #define ntp_gettime ntp_gettime_redirect #include +#include #undef ntp_gettime @@ -39,3 +40,20 @@ ntp_gettime (struct ntptimeval *ntv) ntv->esterror = tntx.esterror; return result; } + +/* The 64-bit-time version */ + +int +__ntp_gettime64 (struct __ntptimeval64 *ntv) +{ + struct timex tntx; + int result; + + tntx.modes = 0; + result = __adjtimex (&tntx); + ntv->time.tv_sec = tntx.time.tv_sec; + ntv->time.tv_usec = tntx.time.tv_usec; + ntv->maxerror = tntx.maxerror; + ntv->esterror = tntx.esterror; + return result; +} -- 2.47.2