From: Dave Hackenyos [SMTP:hackenyo@roguewave.com] Sent: Friday, April 16, 1999 8:12 PM I am attempting to discover a way to query any (most) Operating Systems about what it may think the daylight rule is for the Timezone in which it thinks it is located. The problem can't be solved in general, since governments change the rules periodically, and systems using the Olson implementation can record these changes. For example, the system might currently be configured to use American-style daylight-saving rules for timestamps before July 1, and European-style rules for timestamps thereafter. This sort of thing really does happen. If you want accuracy, the best method I know of is that of zdump.c in the tzcode distribution. zdump just probes ahead, one day at a time, until it discovers a UTC offset change; it then reports this change to the user. It makes no attempt to guess what the ``rules'' are, since there may not be any. For example, see Israel, where the government seems to decide the transition times each year separately and arbitrarily. If you really want a single set of rules, and are willing to give up some accuracy, then the best code that I know of is the code that Edward M. Reingold and I contributed to the GNU Emacs distribution; see the calendar-time-zone-daylight-rules function of lisp/calendar/cal-dst.el, which intuits the daylight saving rules from zdump-like probes into the future. I should warn you that it's pretty hairy going; among other things, the code works even in Iran, which determines DST transitions using a method based on the (non-Gregorian) calendar of Omar Khayyam.