Timezone stuff and System V Verification Suite
Thu Jul 23 18:12:18 UTC 1987
> I think the "right" fix is to remove the "Link" lines from the
> "northamerica" file (which provides the EST5EDT aliases) and
> put them in the "systemv" file, where the data should be an
> accurate System V emulation.
> Or perhaps the "blessed" 2 zone names should be marked in the
> data file to avoid surprises.
That's an idea.
We (NCR) are really looking for the best of both worlds. We like
the flexibility of the PD ctime but need to pass the SVVS as well
as provide compatibility for existing customers. The only problem
has been that of tzname().
> Both the Sys V and BSD standard timezone name stuff is trash,
> it all needs to be discarded completely.
And the matter gets worse with SysVr3v1 (from ctime(3c) man page):
[start of quote]
tzset() uses the contents of the environment variable TZ to
override the value of the different external variables. The
syntax of TZ can be described as follows:
TZ -> zone
| zone signed_time
| zone signed_time zone
| zone signed_time zone dst
zone -> letter letter letter
signed_time -> sign time
time -> hour
| hour : minute
| hour : minute : second
dst -> signed_time
| signed_time ; dst_date , dst_date
| ; dst_date , dst_date
dst_date -> julian
| julian / time
[...] For example, the setting for New Jersey in 1986 could be
[...] A southern hemisphere setting such as the Cook Islands could be
[end of quote]
There is a new extern long to go along with timezone called "altzone"
which holds the value of the daylight saving time "timezone" offset.
The SVID, however, does not reflect this "improvement" nor apparently
will the SVVS. The "Future Directions" section of the SVID does mention
the fractional hours/sign component in the middle of the TZ variable.
The ctime(3c) man page also describes two new routines that allow
user control of the formatting of the string as well as using non-english
names (under the control of the env. var. LANGUAGE).
wescott at ncrcae.Columbia.NCR.COM
More information about the tz