Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

adjtime(2) [opensolaris man page]

adjtime(2)							   System Calls 							adjtime(2)

NAME
adjtime - correct the time to allow synchronization of the system clock SYNOPSIS
#include <sys/time.h> int adjtime(struct timeval *delta, struct timeval *olddelta); DESCRIPTION
The adjtime() function adjusts the system's notion of the current time as returned by gettimeofday(3C), advancing or retarding it by the amount of time specified in the struct timeval pointed to by delta. The adjustment is effected by speeding up (if that amount of time is positive) or slowing down (if that amount of time is negative) the system's clock by some small percentage, generally a fraction of one percent. The time is always a monotonically increasing function. A time correction from an earlier call to adjtime() may not be finished when adjtime() is called again. If delta is 0, then olddelta returns the status of the effects of the previous adjtime() call with no effect on the time correction as a result of this call. If olddelta is not a null pointer, then the structure it points to will contain, upon successful return, the number of seconds and/or microseconds still to be corrected from the earlier call. If olddelta is a null pointer, the corresponding information will not be returned. This call may be used in time servers that synchronize the clocks of computers in a local area network. Such time servers would slow down the clocks of some machines and speed up the clocks of others to bring them to the average network time. Only a processes with appropriate privileges can adjust the time of day. The adjustment value will be silently rounded to the resolution of the system clock. RETURN VALUES
Upon successful completion, adjtime() returns 0. Otherwise, it returns -1 and sets errno to indicate the error. ERRORS
The adjtime() function will fail if: EFAULT The delta or olddelta argument points outside the process's allocated address space, or olddelta points to a region of the process's allocated address space that is not writable. EINVAL The tv_usec member of delta is not within valid range (-1000000 to 1000000). EPERM The {PRIV_SYS_TIME} privilege is not asserted in the effective set of the calling process. Additionally, the adjtime() function will fail for 32-bit interfaces if: EOVERFLOW The size of the tv_sec member of the timeval structure pointed to by olddelta is too small to contain the correct number of seconds. SEE ALSO
date(1), gettimeofday(3C), privileges(5) SunOS 5.11 20 Jan 2003 adjtime(2)

Check Out this Related Man Page

adjtime(2)							System Calls Manual							adjtime(2)

Name
       adjtime - correct the time to allow synchronization of the system clock

Syntax
       #include <sys/time.h>

       adjtime(delta, olddelta)
       struct timeval *delta;
       struct timeval *olddelta;

Description
       The  system  call  changes the system time, as returned by moving it backward or forward by the number of microseconds corresponding to the
       timeval delta.

       The time is maintained by incrementing it with a machine-dependent tick every clock interrupt.  If delta is negative, the clock	is  slowed
       down  by  incrementing  it  in smaller ticks until the correction is made.  If delta is positive, a larger tick is used.  Thus, the time is
       always a monotonically increasing function.  A time correction from an earlier call to may not be finished when is called again.   If  old-
       delta  is  nonzero, then the structure pointed to will contain, upon return, the number of microseconds still to be corrected from the ear-
       lier call.

       This call can be used in time servers that synchronize the clocks of computers in a local area network.	Such time servers would slow  down
       the clocks of some machines and speed up the clocks of others to bring them to the average network time.

       The call is restricted to the superuser.

Note
       Time is incremented in 3906-microsecond (us) ticks on RISC and 10000 us ticks on VAX.  When is called with a delta less than 1 second, time
       is incremented according to the following table until the time is corrected:

       -------------------------------------------
		Default     Fast	Slow
       System	Increment   Increment	Increment
       -------------------------------------------
       RISC	3906 us     3921 us	3891 us
       VAX	10000 us    10001 us	9999 us
       -------------------------------------------

Return Values
       A return value of 0 indicates that the call succeeded.  A return value of -1 indicates that an error occurred, and in this  case  an  error
       code is stored in the global variable errno.

Diagnostics
       The following error codes may be set in errno:

       [EFAULT]       An argument points outside the process's allocated address space.

       [EPERM]	      The process's effective user ID is not that of the super-user.

See Also
       date(1), gettimeofday(2)

																	adjtime(2)
Man Page