Yo Jay! On Tue, 23 Jun 2015 22:02:50 -0400 (EDT) Jay Ashworth <jra@baylink.com> wrote:
----- Original Message -----
From: "Harlan Stenn" <stenn@ntp.org>
You misunderstand the problem. :) The problem is not "clock skips backward one second," because most of the time that's not what happens. The problem is that most software does not handle it well when the clock ticks ... :59 :60 :00 instead of ticking directly from :59 to :00.
POSIX NEVER shows :60.
Then I hope POSIX does not claim to represent UTC, because UTC does, no?
POSIX-1:2001 clearly 61 seeconds in a minute: The POSIX-1:2001 docs are here: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/time.h.html From the Description: "The <time.h> header shall declare the structure tm, which shall include at least the following members: int tm_sec Seconds [0,60]. " From the Application Usage: "The range [0,60] for tm_sec allows for the occasional leap second." From the Rationale: "The range [0,60] seconds allows for positive or negative leap seconds." But, from the section on "Seconds Since the Epoch" http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_... POSIX seconds is defined as: tm_sec + tm_min*60 + tm_hour*3600 + tm_yday*86400 + (tm_year-70)*31536000 + ((tm_year-69)/4)*86400 - ((tm_year-1)/100)*86400 + ((tm_year+299)/400)*86400 Summed up with: "The relationship between the actual time of day and the current value for seconds since the Epoch is unspecified." Which basically says if you are gonna split hairs on leap seconds things will be undefined. RGDS GARY --------------------------------------------------------------------------- Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703 gem@rellim.com Tel:+1(541)382-8588