From b4be6ef22fdb72abe1a4d84721a69582a0ccbfed Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Thu, 14 Jun 2007 18:37:58 +0000 Subject: [PATCH] Only require privilege to set the current time adjustment, not in order to query it. --- sys/kern/kern_ntptime.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/kern/kern_ntptime.c b/sys/kern/kern_ntptime.c index b1148235fe6..30cb4b1ca70 100644 --- a/sys/kern/kern_ntptime.c +++ b/sys/kern/kern_ntptime.c @@ -950,9 +950,6 @@ kern_adjtime(struct thread *td, struct timeval *delta, struct timeval *olddelta) struct timeval atv; int error; - if ((error = priv_check(td, PRIV_ADJTIME))) - return (error); - mtx_lock(&Giant); if (olddelta) { atv.tv_sec = time_adjtime / 1000000; @@ -963,10 +960,15 @@ kern_adjtime(struct thread *td, struct timeval *delta, struct timeval *olddelta) } *olddelta = atv; } - if (delta) + if (delta) { + if ((error = priv_check(td, PRIV_ADJTIME))) { + mtx_unlock(&Giant); + return (error); + } time_adjtime = (int64_t)delta->tv_sec * 1000000 + delta->tv_usec; + } mtx_unlock(&Giant); - return (error); + return (0); }