MirBSD manpage: time(3)
TIME(3) BSD Programmer's Manual TIME(3)
time - get time of day
#include <time.h>
time_t
time(time_t *tloc);
The time() function returns the value of time in seconds since 0 hours, 0
minutes, 0 seconds, January 1, 1970 ("the Epoch"), Temps Atomique Inter-
national (TAI), counting leap seconds.
A copy of the time value may be saved to the area indicated by the
pointer tloc. If tloc is a null pointer, no value is stored.
Upon successful completion, time() returns the value of time. Otherwise a
value of (time_t)-1 is returned and the global variable errno is set to
indicate the error.
The following error codes may be set in errno:
[EFAULT] An argument address referenced invalid memory.
gettimeofday(2), ctime(3)
A time() function appeared in Version 2 AT&T UNIX and used to return time
in sixtieths of a second in 32 bits, which was to guarantee a crisis
every 2.26 years. Since Version 6 AT&T UNIX, time() scale was changed to
seconds, extending the pre-crisis stagnation period up to a total of 68
years.
On MirBSD, the value equals the kernel time, or the result of
gettimeofday(2) with no timezone information provided. Counting leap
seconds, instead of jumping over them, while calculating the result,
violates POSIX, but is the only way to get legal and lawful time.
Since MirBSD #8, the time_t type has been extended to 64 bit in order to
prevent the year 2036 and 2038 crisises.
MirBSD #10-current June 4, 1993 1