summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2019-07-20 17:02:49 -0400
committerRich Felker <dalias@aerifal.cx>2019-07-20 17:02:49 -0400
commit107d68ad1737929a3e815bd28514cb56e4bedd57 (patch)
treed20f7a06bffaf09d34292ecb82a99ea6f2eda43f /src
parente468ed442d6ee50390d9a75dfd25f66bfb310e2e (diff)
downloadmusl-107d68ad1737929a3e815bd28514cb56e4bedd57.tar.gz
refactor adjtimex in terms of clock_adjtime
this sets the stage for having the conversion logic for 64-bit time_t all in one file, and as a bonus makes clock_adjtime for CLOCK_REALTIME work even on kernels too old to have the clock_adjtime syscall.
Diffstat (limited to 'src')
-rw-r--r--src/linux/adjtimex.c4
-rw-r--r--src/linux/clock_adjtime.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/linux/adjtimex.c b/src/linux/adjtimex.c
index 91de6824..e9d727cf 100644
--- a/src/linux/adjtimex.c
+++ b/src/linux/adjtimex.c
@@ -1,7 +1,7 @@
#include <sys/timex.h>
-#include "syscall.h"
+#include <time.h>
int adjtimex(struct timex *tx)
{
- return syscall(SYS_adjtimex, tx);
+ return clock_adjtime(CLOCK_REALTIME, tx);
}
diff --git a/src/linux/clock_adjtime.c b/src/linux/clock_adjtime.c
index 056ad6d3..7d6b0349 100644
--- a/src/linux/clock_adjtime.c
+++ b/src/linux/clock_adjtime.c
@@ -1,7 +1,9 @@
#include <sys/timex.h>
+#include <time.h>
#include "syscall.h"
int clock_adjtime (clockid_t clock_id, struct timex *utx)
{
+ if (clock_id==CLOCK_REALTIME) return syscall(SYS_adjtimex, utx);
return syscall(SYS_clock_adjtime, clock_id, utx);
}