void rtcsync(void) { timestruc_t ts; mutex_enter(&tod_lock); ts = TODOP_GET(tod_ops); set_hrestime(&ts); mutex_exit(&tod_lock); }
int stime(time_t time) { timestruc_t ts; if (secpolicy_settime(CRED()) != 0) return (set_errno(EPERM)); if (time < 0) return (set_errno(EINVAL)); ts.tv_sec = time; ts.tv_nsec = 0; mutex_enter(&tod_lock); tod_set(ts); set_hrestime(&ts); mutex_exit(&tod_lock); return (0); }