Home | History | Annotate | Line # | Download | only in include
      1 /*	$NetBSD: ntp_unixtime.h,v 1.5 2020/05/25 20:47:20 christos Exp $	*/
      2 
      3 /*
      4  * ntp_unixtime.h - much of what was here is now in timevalops.h
      5  */
      6 
      7 #ifndef NTP_UNIXTIME_H
      8 #define NTP_UNIXTIME_H
      9 
     10 #include "ntp_types.h"	/* picks up time.h via ntp_machine.h */
     11 #include "ntp_calendar.h"
     12 
     13 #ifdef SIM
     14 #   define GETTIMEOFDAY(a, b) (node_gettime(&ntp_node, a))
     15 #   define SETTIMEOFDAY(a, b) (node_settime(&ntp_node, a))
     16 #   define ADJTIMEOFDAY(a, b) (node_adjtime(&ntp_node, a, b))
     17 #else
     18 #   define ADJTIMEOFDAY(a, b) (adjtime(a, b))
     19 /* gettimeofday() takes two args in BSD and only one in SYSV */
     20 # if defined(HAVE_SYS_TIMERS_H) && defined(HAVE_GETCLOCK)
     21 #  include <sys/timers.h>
     22 int getclock (int clock_type, struct timespec *tp);
     23 #   define GETTIMEOFDAY(a, b) (gettimeofday(a, b))
     24 #   define SETTIMEOFDAY(a, b) (settimeofday(a, b))
     25 # else /* not (HAVE_SYS_TIMERS_H && HAVE_GETCLOCK) */
     26 #  ifdef SYSV_TIMEOFDAY
     27 #   define GETTIMEOFDAY(a, b) (gettimeofday(a))
     28 #   define SETTIMEOFDAY(a, b) (settimeofday(a))
     29 #  else /* ! SYSV_TIMEOFDAY */
     30 #if defined SYS_CYGWIN32
     31 #   define GETTIMEOFDAY(a, b) (gettimeofday(a, b))
     32 #   define SETTIMEOFDAY(a, b) (settimeofday_NT(a))
     33 #else
     34 #   define GETTIMEOFDAY(a, b) (gettimeofday(a, b))
     35 #   define SETTIMEOFDAY(a, b) (settimeofday(a, b))
     36 #endif
     37 #  endif /* SYSV_TIMEOFDAY */
     38 # endif /* not (HAVE_SYS_TIMERS_H && HAVE_GETCLOCK) */
     39 #endif /* SIM */
     40 
     41 /*
     42  * Time of day conversion constant.  Ntp's time scale starts in 1900,
     43  * Unix in 1970.  The value is 1970 - 1900 in seconds, 0x83aa7e80 or
     44  * 2208988800.  This is larger than 32-bit INT_MAX, so unsigned
     45  * type is forced.
     46  */
     47 #define	JAN_1970 ((u_int)NTP_TO_UNIX_DAYS * (u_int)SECSPERDAY)
     48 
     49 #endif /* !defined(NTP_UNIXTIME_H) */
     50