Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ctime(3C)

date(1)



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



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026