Time zone confusion and implementation hints

Robert Elz kre at munnari.OZ.AU
Tue Jul 6 10:39:07 UTC 2010

I have a reply to David Patte's message typed, but I have decided to
wait a bit before sending it.   But these two are easy...

    Date:        Tue, 6 Jul 2010 03:58:42 -0500
    From:        Bill Seymour <stdbill.h at pobox.com>
    Message-ID:  <AANLkTil04xyA_bV9jJ4T-BfNF8bJQDtADVUICKa0Wb0D at mail.gmail.com>

  |    There's no way to recover the standard offset from UTC

That is mostly as the concept isn't real - there is really no "standard"
offset from UTC, we'd like it if there were, and we often like to pretend
it exists, and in some locales, it is even reasonable to say it does, but
when legislatures like to arbitrarily shift their "standard" from one
value to another, it starts to become fairly meaningless to settle on
anything as really being a standard - all we really have (or need) is the
offset from UTC that applies in some area at a particular (universal) time. 

Expecting more than than is asking for more than the world really gives us.

  | - Multi-byte integers are aligned on arbitrary byte boundaries.

This is just nuisance - if it bothers you, write a converter, and convert
the binary file into something easier for your application to parse.
It is difficult (or worse...) to change for existing applications, which
expect the current format, but trivial to overcome for new ones (so if you
have an application that is using the data at a rate that makes this kind
of issue significant, which isn't your typical application's use of the
data, then avoiding this problem is a 10-20 minute conversion prog from the
current data format to whatever suits you best.)

Yves Goergen <nospam.list at unclassified.de> said:
  | zic deals exactly nothing for me right now. Is there a Windows binary
  | available somewhere?

I think you asked that before (perhaps indirectly) and no-one answered,
which is a surprise to me, as I cannot imagine anything about zic that
would make it particularly difficult to port to anything with a C compiler.
And I know that includes windows - though I'm not a windows user and cannot
help personally.   Sure, some of the frills may need to be trimmed away,
but they're not important for the primary task.

You said that you tried to build one, and there were unix libc()
function calls that were undefined - what were they?   Perhaps we can either
just give you copies of those functions to use, or tell you they're
unnecessary, and you can just delete the references to them. or at worse,
tell you what the function needs to do (if it is an OS interface function)
and you can write whatever it takes on windows to achieve the same effect.


More information about the tz mailing list