[LEAPSECS] Leap seconds ain't broken, but most implementations are broken

Martin Burnicki martin.burnicki at burnicki.net
Fri Jan 6 11:52:20 EST 2017


Steffen Nurpmeso wrote:
> Martin Burnicki <martin.burnicki at burnicki.net> wrote:
>  |Yes, and there needs to be an interface to timekeeping software in
>  |general, i.e. provide glibc and friends with updated tz rules, and make
>  |the leapsecond table available in a form that can be used by ntpd or ptpd.
>  |
>  |In case of ntpd this means that either a leapsecond file has to been
>  |written so it can be scanned by ntpd, or ntpd needs to support a
>  |different different (binary?) format provided by a tzdist client.
>  |
>  |Anyway, some basic infrastructure is available, but there's still some
>  |work to do.
> 
> Yes, but no in sofar as that "some work" is definetely not enough
> from my point of view.  It may very well be so from your Meinberg
> NTP+ timekeeping point-of-view,

Hm, you but you saw above that I mentioned "timekeeping software in
general" ? ;-)

ntpd is just an example. PTP daemons need this information, too. As I've
recently read, openntpd does not even handle leap seconds properly.

> ... but as a C(/C++) application
> developer you are, i repeat a phrase from a message i have written
> just a minute ago, in blind flight.  Well that brought us to where
> we stand now, but of course this lets aside all the other
> languages with a more complete time interface, and all the special
> options that do exist and which people with special needs have to
> use, e.g., a GPS receiver plus driver, for TAI time.

Yes, I absolutely agree. We have several parts of a puzzle:

- Time synchronization software with different features

- Old protocols which support leap seconds and/or TAI, or not,
eventually in a strange way (NTP's autokey used to provide TAI)

- OS kernels with different features (Windows doesn't even know leap
seconds, AFAIK)

- New protocols like tzdist which can provide the information, but
there's no standard way, AFAIK, how to pass the information to
applications like time synchronization software, time zone libraries, or
directly to the kernel without interfering with other software like ntpd.

So with "some work to do" I meant discussions like currently on this
list, to find proper solutions how to put things together, and of course
have API calls to submit and retrieve information.

I don't think I only have Meinberg and NTP in mind. ;-)

Martin



More information about the LEAPSECS mailing list