ntp_gettime - Gets the date, time, and kernel time error values.
int ntp_gettime (struct ntptimeval *tp);
The ntp_gettime() system call returns three read-only values in the ntptimeval structure. The ntptimeval structure members are as follows: The current system time expressed as a Unix timeval structure. The timeval structure consists of two 32-bit words: the first is the number of seconds past 1 January 1970 assuming no intervening leap-second insertions or deletions; and the second is the number of microseconds within the second. The value of the time_maxerror kernel variable, which represents the maximum error of the indicated time relative to the primary synchronization source, in microseconds. For NTP, the value is initialized to the synchronization distance, which is equal to the root dispersion plus one-half the root delay. It is increased by a small amount (time_tolerance) each second to reflect the maximum clock frequency error. This variable is modified by the kernel, but is otherwise not used by the kernel. The value of the time_esterror kernel variable, which represents the expected error of the indicated time relative to the primary synchronization source, in microseconds. For NTP, the value is determined as the root dispersion, which represents the best estimate of the actual error of the system clock based on its past behavior, together with observations of multiple clocks within the peer group. This variable is not used by the kernel.
Upon successful completion, a value of 0 (zero) is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.
If the ntp_gettime() function fails, errno may be set to one of the following values: The tp parameter points to a location outside of the allocated address space of the process. The kernel was configured without the NTP_TIME option. delim off