gettimeofday(2) 4 BSD gettimeofday(2)
NAME
gettimeofday, settimeofday - get/set date and time
SYNOPSIS
#include <sys/time.h>
int gettimeofday (tp, tzp)
struct timeval *tp;
struct timezone *tzp;
int settimeofday (tp, tzp)
struct timeval *tp;
struct timezone *tzp;
DESCRIPTION
gettimeofday returns the system's notion of the current
Greenwich time and the current time zone. Time returned is
expressed relative in seconds and microseconds since mid-
night January 1, 1970.
The structures pointed to by tp and tzp are defined in
<sys/time.h> as:
struct timeval {
u_long tv_sec; /* seconds since Jan. 1, 1970 */
long tv_usec; /* and microseconds */
};
struct timezone {
int tz_minuteswest; /* of Greenwich */
int tz_dsttime; /* type of dst correction to apply */
};
The timezone structure indicates the local time zone (meas-
ured in minutes of time westward from Greenwich), and a flag
that, if nonzero, indicates that Daylight Saving time
applies locally during the appropriate part of the year.
Only the super-user may set the time of day.
RETURN
A 0 return value indicates that the call succeeded. A -1
return value indicates an error occurred, and in this case
an error code is stored into the global variable errno.
ERRORS
The following error codes may be set in errno:
[EFAULT] An argument address referenced invalid
memory.
[EPERM] A user other than the super-user attempted to
Page 1 CX/UX Programmer's Reference Manual
gettimeofday(2) 4 BSD gettimeofday(2)
set the time.
NOTE
Two versions of gettimeofday may be accessed. The first
version is the proprietary CX system call which directly
accesses the kernel. The other version is defined in the
88open Object Compatibility Standard Networking Supplement
(OCSNS) which is implemented within the C library and
accesses the kernel only through system calls defined in the
Binary Compatibility Standard (BCS). The OCSNS version is
accessed through specific OCS options passed to cc(1) and/or
ld(1).
SEE ALSO
ctime(3C), date(1)
BUGS
Time is never correct enough to believe the microsecond
values. There should a mechanism by which, at least, local
clusters of systems might synchronize their clocks to mil-
lisecond granularity.
Page 2 CX/UX Programmer's Reference Manual