Annotation of 43BSDReno/share/zoneinfo/tzfile.5, revision 1.1.1.1

1.1       root        1: .TH TZFILE 5
                      2: .SH NAME
                      3: tzfile \- time zone information
                      4: .SH SYNOPSIS
                      5: .B
                      6: #include <tzfile.h>
                      7: .SH DESCRIPTION
                      8: The time zone information files used by
                      9: .IR tzset (3)
                     10: begin with bytes reserved for future use,
                     11: followed by four four-byte values of type
                     12: .BR long ,
                     13: written in a ``standard'' byte order
                     14: (the high-order byte of the value is written first).
                     15: These values are,
                     16: in order:
                     17: .TP
                     18: .I tzh_ttisstdcnt
                     19: The number of standard/wall indicators stored in the file.
                     20: .TP
                     21: .I tzh_leapcnt
                     22: The number of leap seconds for which data is stored in the file.
                     23: .TP
                     24: .I tzh_timecnt
                     25: The number of "transition times" for which data is stored
                     26: in the file.
                     27: .TP
                     28: .I tzh_typecnt
                     29: The number of "local time types" for which data is stored
                     30: in the file (must not be zero).
                     31: .TP
                     32: .I tzh_charcnt
                     33: The number of characters of "time zone abbreviation strings"
                     34: stored in the file.
                     35: .PP
                     36: The above header is followed by
                     37: .I tzh_timecnt
                     38: four-byte values of type
                     39: .BR long ,
                     40: sorted in ascending order.
                     41: These values are written in ``standard'' byte order.
                     42: Each is used as a transition time (as returned by
                     43: .IR time (2))
                     44: at which the rules for computing local time change.
                     45: Next come
                     46: .I tzh_timecnt
                     47: one-byte values of type
                     48: .BR "unsigned char" ;
                     49: each one tells which of the different types of ``local time'' types
                     50: described in the file is associated with the same-indexed transition time.
                     51: These values serve as indices into an array of
                     52: .I ttinfo
                     53: structures that appears next in the file; 
                     54: these structures are defined as follows:
                     55: .in +.5i
                     56: .sp
                     57: .nf
                     58: .ta .5i +\w'unsigned int\0\0'u
                     59: struct ttinfo {        
                     60:        long    tt_gmtoff;
                     61:        int     tt_isdst;
                     62:        unsigned int    tt_abbrind;
                     63: };
                     64: .in -.5i
                     65: .fi
                     66: .sp
                     67: Each structure is written as a four-byte value for
                     68: .I tt_gmtoff
                     69: of type
                     70: .BR long ,
                     71: in a standard byte order, followed by a one-byte value for
                     72: .I tt_isdst
                     73: and a one-byte value for
                     74: .IR tt_abbrind .
                     75: In each structure,
                     76: .I tt_gmtoff
                     77: gives the number of seconds to be added to GMT,
                     78: .I tt_isdst
                     79: tells whether
                     80: .I tm_isdst
                     81: should be set by
                     82: .I localtime (3)
                     83: and
                     84: .I tt_abbrind
                     85: serves as an index into the array of time zone abbreviation characters
                     86: that follow the
                     87: .I ttinfo
                     88: structure(s) in the file.
                     89: .PP
                     90: Then there are
                     91: .I tzh_leapcnt
                     92: pairs of four-byte values, written in standard byte order;
                     93: the first value of each pair gives the time
                     94: (as returned by 
                     95: .IR time(2))
                     96: at which a leap second occurs;
                     97: the second gives the
                     98: .I total
                     99: number of leap seconds to be applied after the given time.
                    100: The pairs of values are sorted in ascending order by time.
                    101: .PP
                    102: Finally there are
                    103: .I tzh_ttisstdcnt
                    104: standard/wall indicators, each stored as a one-byte value;
                    105: they tell whether the transition times associated with local time types
                    106: were specified as standard time or wall clock time,
                    107: and are used when a time zone file is used in handling POSIX-style
                    108: time zone environment variables.
                    109: .PP
                    110: .I Localtime
                    111: uses the first standard-time
                    112: .I ttinfo
                    113: structure in the file
                    114: (or simply the first
                    115: .I ttinfo
                    116: structure in the absence of a standard-time structure)
                    117: if either
                    118: .I tzh_timecnt
                    119: is zero or the time argument is less than the first transition time recorded
                    120: in the file.
                    121: .SH SEE ALSO
                    122: ctime(3)
                    123: .. @(#)tzfile.5        4.2

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.