Index: sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc |
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc |
index e653b8a0c6d373cf722696725072dd44c70dadda..aaed480d6996389bad8d91514861d177f37be1c2 100644 |
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc |
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions_unittests.cc |
@@ -26,6 +26,7 @@ |
#include "sandbox/linux/seccomp-bpf/syscall.h" |
#include "sandbox/linux/services/syscall_wrappers.h" |
#include "sandbox/linux/system_headers/linux_syscalls.h" |
+#include "sandbox/linux/system_headers/linux_time.h" |
#include "sandbox/linux/tests/unit_tests.h" |
#if !defined(OS_ANDROID) |
@@ -60,7 +61,13 @@ class RestrictClockIdPolicy : public bpf_dsl::Policy { |
void CheckClock(clockid_t clockid) { |
struct timespec ts; |
- ts.tv_sec = ts.tv_nsec = -1; |
+ ts.tv_sec = -1; |
+ ts.tv_nsec = -1; |
+ BPF_ASSERT_EQ(0, clock_getres(clockid, &ts)); |
+ BPF_ASSERT_EQ(0, ts.tv_sec); |
+ BPF_ASSERT_LE(0, ts.tv_nsec); |
+ ts.tv_sec = -1; |
+ ts.tv_nsec = -1; |
BPF_ASSERT_EQ(0, clock_gettime(clockid, &ts)); |
BPF_ASSERT_LE(0, ts.tv_sec); |
BPF_ASSERT_LE(0, ts.tv_nsec); |
@@ -70,8 +77,10 @@ BPF_TEST_C(ParameterRestrictions, |
clock_gettime_allowed, |
RestrictClockIdPolicy) { |
CheckClock(CLOCK_MONOTONIC); |
+ CheckClock(CLOCK_MONOTONIC_COARSE); |
CheckClock(CLOCK_PROCESS_CPUTIME_ID); |
CheckClock(CLOCK_REALTIME); |
+ CheckClock(CLOCK_REALTIME_COARSE); |
CheckClock(CLOCK_THREAD_CPUTIME_ID); |
} |
@@ -99,14 +108,14 @@ class ClockSystemTesterDelegate : public sandbox::BPFTesterDelegate { |
} |
void RunTestFunction() override { |
if (is_running_on_chromeos_) { |
- CheckClock(base::TimeTicks::kClockSystemTrace); |
+ CheckClock(base::TraceTicks::kClockSystemTrace); |
} else { |
struct timespec ts; |
// kClockSystemTrace is 11, which is CLOCK_THREAD_CPUTIME_ID of |
// the init process (pid=1). If kernel supports this feature, |
// this may succeed even if this is not running on Chrome OS. We |
// just check this clock_gettime call does not crash. |
- clock_gettime(base::TimeTicks::kClockSystemTrace, &ts); |
+ clock_gettime(base::TraceTicks::kClockSystemTrace, &ts); |
} |
} |
@@ -124,7 +133,7 @@ BPF_DEATH_TEST_C(ParameterRestrictions, |
DEATH_SEGV_MESSAGE(sandbox::GetErrorMessageContentForTests()), |
RestrictClockIdPolicy) { |
struct timespec ts; |
- clock_gettime(base::TimeTicks::kClockSystemTrace, &ts); |
+ clock_gettime(base::TraceTicks::kClockSystemTrace, &ts); |
} |
#endif // defined(OS_CHROMEOS) |