]> git.cameronkatri.com Git - bsd-progress.git/blobdiff - include/tzfile.h
#include inttypes.h, for strtoimax(3).
[bsd-progress.git] / include / tzfile.h
index 43f5642acf3b05425c3a7f1a7bc44856d451ea7c..0029eae2ab0c70cf496f3d1ee037420221e9162a 100644 (file)
@@ -1,6 +1,8 @@
+/*     $NetBSD: tzfile.h,v 1.7 2003/08/07 09:44:11 agc Exp $   */
+
 /*
- * Copyright (c) 1988 Regents of the University of California.
- * All rights reserved.
+ * Copyright (c) 1988, 1993
+ *     The Regents of the University of California.  All rights reserved.
  *
  * This code is derived from software contributed to Berkeley by
  * Arthur David Olson of the National Cancer Institute.
  * 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.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *     This product includes software developed by the University of
- *     California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
@@ -33,7 +31,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *     @(#)tzfile.h    5.10 (Berkeley) 4/3/91
+ *     @(#)tzfile.h    8.1 (Berkeley) 6/2/93
  */
 
 #ifndef _TZFILE_H_
 ** Each file begins with. . .
 */
 
+#define TZ_MAGIC       "TZif"
+
 struct tzhead {
-       char    tzh_reserved[24];       /* reserved for future use */
+       char    tzh_magic[4];           /* TZ_MAGIC */
+       char    tzh_reserved[16];       /* reserved for future use */
+       char    tzh_ttisgmtcnt[4];      /* coded number of trans. time flags */
        char    tzh_ttisstdcnt[4];      /* coded number of trans. time flags */
        char    tzh_leapcnt[4];         /* coded number of leap seconds */
        char    tzh_timecnt[4];         /* coded number of transition times */
@@ -66,7 +68,7 @@ struct tzhead {
 **     tzh_timecnt (char [4])s         coded transition times a la time(2)
 **     tzh_timecnt (unsigned char)s    types of local time starting at above
 **     tzh_typecnt repetitions of
-**             one (char [4])          coded GMT offset in seconds
+**             one (char [4])          coded UTC offset in seconds
 **             one (unsigned char)     used to set tm_isdst
 **             one (unsigned char)     that's an abbreviation list index
 **     tzh_charcnt (char)s             '\0'-terminated zone abbreviations
@@ -78,6 +80,11 @@ struct tzhead {
 **                                     transition time is wall clock time
 **                                     if absent, transition times are
 **                                     assumed to be wall clock time
+**     tzh_ttisgmtcnt (char)s          indexed by type; if TRUE, transition
+**                                     time is UTC, if FALSE,
+**                                     transition time is wall clock time
+**                                     if absent, transition times are
+**                                     assumed to be local time
 */
 
 /*
@@ -146,6 +153,6 @@ struct tzhead {
 ** that will probably do.
 */
 
-#define isleap(y) (((y) % 4) == 0 && ((y) % 100) != 0 || ((y) % 400) == 0)
+#define isleap(y) ((((y) % 4) == 0 && ((y) % 100) != 0) || ((y) % 400) == 0)
 
 #endif /* !_TZFILE_H_ */