Provided by: qmail_1.06-4_amd64 bug


       datetime - convert between TAI labels and seconds


       #include <datetime.h>

       void datetime_tai(&dt,t);

       datetime_sec datetime_untai(&dt);

       struct datetime dt;
       datetime_sec t;


       International  Atomic  Time,  TAI, is the fundamental unit for time measurements.  TAI has
       one label for every second of real time, without complications such as leap seconds.

       A struct datetime variable, such as dt, stores a TAI label.  dt.year is  the  year  number
       minus 1900; dt.mon is the month number, from 0 (January) through 11 (December); dt.mday is
       the day of the month, from 1 through 31; dt.hour is the hour, from 0 through 23; dt.min is
       the minute, from 0 through 59; dt.sec is the second, from 0 through 59; dt.wday is the day
       of the week, from 0 (Sunday) through 6 (Saturday); dt.yday is the day of the year, from  0
       through 365.

       The datetime library supports more convenient TAI manipulation with the datetime_sec type.
       A datetime_sec value, such as t, is an integer referring  to  the  tth  second  after  the
       beginning  of  1970  TAI.   The first second of 1970 TAI was 0; the next second was 1; the
       last second of 1969 TAI was -1.  The difference  between  two  datetime_sec  values  is  a
       number of real-time seconds.

       datetime_tai converts a datetime_sec to a TAI label.

       datetime_untai  reads a TAI label (specifically dt.year, dt.mon, dt.mday, dt.hour, dt.min,
       and dt.sec) and returns a datetime_sec.