Manpages - ntp_gettime.3

Table of Contents

NAME

ntp_gettime, ntp_gettimex - get time parameters (NTP daemon interface)

SYNOPSIS

  #include <sys/timex.h>

  int ntp_gettime(struct ntptimeval *ntv);
  int ntp_gettimex(struct ntptimeval *ntv);

DESCRIPTION

Both of these APIs return information to the caller via the ntv argument, a structure of the following type:

  struct ntptimeval {
      struct timeval time;    /* Current time */
      long maxerror;          /* Maximum error */
      long esterror;          /* Estimated error */
      long tai;               /* TAI offset */

      /* Further padding bytes allowing for future expansion */
  };

The fields of this structure are as follows:

time

The current time, expressed as a timeval structure:

    struct timeval {
        time_t      tv_sec;   /* Seconds since the Epoch */
        suseconds_t tv_usec;  /* Microseconds */
    };
maxerror
Maximum error, in microseconds. This value can be initialized by ntp_adjtime*(3), and is increased periodically (on Linux: each second), but is clamped to an upper limit (the kernel constant *NTP_PHASE_MAX, with a value of 16,000).
esterror
Estimated error, in microseconds. This value can be set via *ntp_adjtime*(3) to contain an estimate of the difference between the system clock and the true time. This value is not used inside the kernel.
tai
TAI (Atomic International Time) offset.

*ntp_gettime*() returns an ntptimeval structure in which the time, maxerror, and esterror fields are filled in.

*ntp_gettimex*() performs the same task as *ntp_gettime*(), but also returns information in the tai field.

RETURN VALUE

The return values for *ntp_gettime*() and *ntp_gettimex*() are as for *adjtimex*(2). Given a correct pointer argument, these functions always succeed.

VERSIONS

The *ntp_gettime*() function is available since glibc 2.1. The *ntp_gettimex*() function is available since glibc 2.12.

ATTRIBUTES

For an explanation of the terms used in this section, see *attributes*(7).

Interface Attribute Value
*ntp_gettime*(), *ntp_gettimex*() Thread safety MT-Safe

CONFORMING TO

*ntp_gettime*() is described in the NTP Kernel Application Program Interface. *ntp_gettimex*() is a GNU extension.

SEE ALSO

*adjtimex*(2), *ntp_adjtime*(3), *time*(7)

NTP “Kernel Application Program Interface”

COLOPHON

This page is part of release 5.13 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.

Author: dt

Created: 2022-02-20 Sun 18:36