TIMESPEC_GET(3)

NAME
timespec_get - get current calendar time

LIBRARY
libc

SYNOPSIS
#include <time.h>
int
timespec_get(struct timespec *ts, int base);

DESCRIPTION
The timespec_get function sets the interval pointed to by ts to hold the current calendar time based on the specified time base in base.

The base TIME_UTC returns the time since the epoch. This time is expressed in seconds and nanoseconds since midnight (0 hour), January 1, 1970. In FreeBSD, this corresponds to CLOCK_REALTIME.

The base TIME_MONOTONIC returns a monotonically-increasing time since an unspecified point in the past. In FreeBSD, this corresponds to CLOCK_MONOTONIC.

RETURN VALUES
The timespec_get function returns the passed value of base if successful, otherwise 0 on failure.

SEE ALSO
clock_gettime(2), gettimeofday(2), time(3), timespec_getres(3)

STANDARDS
The timespec_get function with a base of TIME_UTC conforms to isoC-2011. The TIME_MONOTONIC base conforms to isoC-2023.

HISTORY
This interface first appeared in FreeBSD 12.

AUTHORS
Kamil Rytarowski <kamil@NetBSD.org> Warner Losh <imp@FreeBSD.org>