Provided by: freebsd-manpages_6.2-1_all bug


     ntp_gettime - NTP user application interface


     #include <sys/timex.h>

     ntp_gettime(struct ntptimeval *ntv);


     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-UTC 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         Offset in seconds between the TAI and UTC time scales.  This
                 offset is published twice a year and is an integral number of
                 seconds between TAI (which does not have leap seconds) and
                 UTC (which does).  ntpd(8) or some other agent maintains this
                 value.  A value of 0 means unknown.  As of the date of the
                 manual page, the offset is 32 seconds.

     time_state  Current time status.


     The ntp_gettime() function returns the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.

     Possible states of the clock are:

     TIME_OK     Everything okay, no leap second warning.
     TIME_INS    Positive leap second warning.  At the end of the day, an
                 additional second will be inserted after 23:59:59.
     TIME_DEL    Negative leap second warning.  At the end of the day,
                 23:59:59 is skipped.
     TIME_OOP    Leap second in progress.
     TIME_WAIT   Leap second has occurred.
     TIME_ERROR  Clock not synchronized.


     ntp_adjtime(2), ntpd(8)


     This manual page was written by Tom Rhodes 〈〉.