Question about 'tzparse()'

David Lawless lawless at spamcop.net
Fri Jul 28 17:42:07 UTC 2006


Mr. Olson,

I'm wondering about line 920 in 'tzparse()' in 'localtime.c':

917    load_result = tzload(TZDEFRULES, sp, FALSE);
918    if (load_result != 0)
919       sp->leapcnt = 0;     /* so, we're off a little */
920    sp->timecnt = 0;
921    if (*name != '\0') {
922       if (*name == '<') {
923          dstname = ++name;

It appears to have the effect of inhibiting the application of 
DST per '/usr/local/etc/timezone/posixrules' when a TZ string 
such as TZ="EST+5EDT" is used.  If the line is removed DST is 
applied.

The effective default if 'posixrules' is not readable, per 
TZDEFRULESTRING, is TZ="EST+5EDT,M4.1.0,M10.5.0" which does lead 
to the application of DST.

Also RHEL 4.3 (CentOS 4.3) appears to apply DST when
TZ="EST+5EDT".

Does 'tzparse()' behave in this manner by design?

Thank you for your efforts and contribution of the excellent. 
zone package.

Sincerely,

David Lawless



More information about the tz mailing list