From 64c73d07390c21be88bc8e74e734578cc63096be Mon Sep 17 00:00:00 2001 From: Liav A Date: Fri, 13 Mar 2020 01:18:21 +0200 Subject: [PATCH] LibC: Add new syscall to allow changing the system date --- Libraries/LibC/time.cpp | 6 ++++++ Libraries/LibC/time.h | 1 + 2 files changed, 7 insertions(+) diff --git a/Libraries/LibC/time.cpp b/Libraries/LibC/time.cpp index acf90f54af..3b05650682 100644 --- a/Libraries/LibC/time.cpp +++ b/Libraries/LibC/time.cpp @@ -327,6 +327,12 @@ int clock_gettime(clockid_t clock_id, struct timespec* ts) __RETURN_WITH_ERRNO(rc, rc, -1); } +int clock_settime(clockid_t clock_id, struct timespec* ts) +{ + int rc = syscall(SC_clock_settime, clock_id, ts); + __RETURN_WITH_ERRNO(rc, rc, -1); +} + int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec* requested_sleep, struct timespec* remaining_sleep) { Syscall::SC_clock_nanosleep_params params { clock_id, flags, requested_sleep, remaining_sleep }; diff --git a/Libraries/LibC/time.h b/Libraries/LibC/time.h index f94fed9c99..3fa28ca5d8 100644 --- a/Libraries/LibC/time.h +++ b/Libraries/LibC/time.h @@ -74,6 +74,7 @@ typedef int clockid_t; #define TIMER_ABSTIME 99 int clock_gettime(clockid_t, struct timespec*); +int clock_settime(clockid_t, struct timespec*); int clock_nanosleep(clockid_t, int flags, const struct timespec* requested_sleep, struct timespec* remaining_sleep); int clock_getres(clockid_t, struct timespec* result); struct tm* gmtime_r(const time_t* timep, struct tm* result);