head 1.5; access; symbols LMTP2NNTP_1_4_0:1.1.1.1 LMTP2NNTP_1_3_0:1.4 LMTP2NNTP_1_3b2:1.4 LMTP2NNTP_1_3b1:1.4 LMTP2NNTP_1_3a3:1.4 LMTP2NNTP_1_3a2:1.4 LMTP2NNTP_1_3a1:1.4 LMTP2NNTP_1_2_0:1.4 LMTP2NNTP_1_2b4:1.4 LMTP2NNTP_1_2b3:1.4 LMTP2NNTP_1_2b2:1.4 LMTP2NNTP_1_2b1:1.4 LMTP2NNTP_1_2a8:1.4 LMTP2NNTP_1_2a7:1.4 LMTP2NNTP_1_2a6:1.4 LMTP2NNTP_1_2a5:1.3 TAI_0_0_0:1.1.1.1 VENDOR:1.1.1; locks; strict; comment @ * @; 1.5 date 2005.01.24.11.04.07; author rse; state Exp; branches; next 1.4; 1.4 date 2002.08.14.14.28.27; author rse; state Exp; branches; next 1.3; 1.3 date 2002.05.01.18.48.34; author rse; state Exp; branches; next 1.2; 1.2 date 2002.04.29.19.24.41; author rse; state Exp; branches; next 1.1; 1.1 date 2002.04.18.09.10.45; author rse; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2002.04.18.09.10.45; author rse; state Exp; branches; next ; desc @@ 1.5 log @flush pending changes related to TAI to calendar transformations @ text @/*- * Copyright (c) 1997-2002 FreeBSD Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD: src/lib/libc/stdtime/timelocal.h,v 1.11 2002/01/24 15:07:44 phantom Exp $ */ #ifndef _TIMELOCAL_H_ #define _TIMELOCAL_H_ #include #include "config.h" #include "tai.h" #include "tai_ui64.h" #include "tai_cal.h" struct tai_st { tai_ui64_t sec; /* seconds (integral part) */ tai_ui64_t asec; /* atto-seconds (fractional part) */ /* FIXME: obsolete stuff */ int tai_sec; /* seconds after the minute [0-61] */ int tai_min; /* minutes after the hour [0-59] */ int tai_hour; /* hours since midnight [0-23] */ int tai_mday; /* day of the month [1-31] */ int tai_mon; /* months since January [0-11] */ int tai_year; /* years since 1900 */ int tai_wday; /* days since Sunday [0-6] */ int tai_yday; /* days since January 1 [0-365] */ int tai_isdst; /* Daylight Savings Time flag */ long tai_gmtoff; /* offset from CUT in seconds */ }; /* * Private header file for the strftime and strptime localization * stuff. */ typedef struct { const char *mon[12]; const char *month[12]; const char *wday[7]; const char *weekday[7]; const char *X_fmt; const char *x_fmt; const char *c_fmt; const char *am; const char *pm; const char *date_fmt; const char *alt_month[12]; const char *md_order; const char *ampm_fmt; } tai_locale_t; extern const tai_locale_t tai_locale; size_t tai_format_int(char *const s, const size_t maxsize, const char *const format, const struct tm *const t); char *tai_parse_int (const char *buf, const char *fmt, struct tm *tm); tai_rc_t tai_tai2cal(const tai_t *tai, tai_cal_t *cal, long offset, int isdst); tai_rc_t tai_cal2tai( tai_t *tai, const tai_cal_t *cal, long *offset, int *isdst); extern ui64_t tai_full_sec_in_asec; extern ui64_t tai_half_sec_in_asec; #endif /* !_TIMELOCAL_H_ */ @ 1.4 log @hacking wild to get OSSP tai (just) working on Solaris @ text @d37 1 a76 2 #define TM_YEAR_BASE 1900 d80 5 a84 2 tai_rc_t tai_tai2cal(tai_t *tai, int offset); tai_rc_t tai_cal2tai(tai_t *tai); @ 1.3 log @flush todays work @ text @a51 1 char *tai_zone; /* timezone abbreviation */ @ 1.2 log @move to correct position and start with ui64_t integration @ text @d35 1 d81 3 @ 1.1 log @Initial revision @ text @d35 18 @ 1.1.1.1 log @Import first cut for OSSP tai @ text @@