NTP_GETTIME(2)

NAME
ntp_gettime - NTP user application interface

LIBRARY
libc

SYNOPSIS
#include <sys/timex.h>
int
ntp_gettime(struct ntptimeval *ntv);

DESCRIPTION
The time returned by ntp_gettime() is in a timespec structure, but may be in either microsecond (seconds and microseconds) or nanosecond (seconds and nanoseconds) format. The particular format in use is determined by the STA_NANO bit of the status word returned by the ntp_adjtime() system call. ntp_gettime() has as argument a pointer to the ntptimeval structure with the following members:

    struct ntptimeval {
    	struct timespec time;	/* current time (ns) (ro) */
    	long maxerror;		/* maximum error (us) (ro) */
    	long esterror;		/* estimated error (us) (ro) */
    	long tai;		/* TAI offset */
    	int time_state;		/* time status */
    };

These are understood as:

time
    Current time (read-only).

maxerror
    Maximum error in microseconds (read-only).

esterror
    Estimated error in microseconds (read-only).

tai Temps Atomique International (French for International Atomic Time), measures real time. Used for acute time measurements.

time_state
    Current time status.

RETURN VALUES

Possible states of the clock are:

TIME_OK
    Everything okay, no leap second warning.
TIME_INS
    Insert leap second warning.
TIME_DEL
    Delete leap second warning.
TIME_OOP
    Leap second in progress.
TIME_WAIT
    Leap second has occurred.
TIME_ERROR
    Clock not synchronized.

SEE ALSO
ntp_adjtime(2), ntpd(8) (net/openntpd)

AUTHORS
This manual page was written by Tom Rhodes <trhodes@FreeBSD.org>.