On 1/17/23 11:57:53, Robert Elz via tz wrote:
Date: Sun, 15 Jan 2023 18:40:27 +0100 From: =?utf-8?Q?Jens_Tr=C3=B6ger?= via tz <tz@iana.org> Message-ID: <2FB37B4F-3F85-4260-8C49-D770591075C6@light-speed.de>
| Today I stumbled upon timezone strings like “right/UTC”,
Many systems don't bother installing those, as they're not usually very useful on POSIX systems.
| I’m unable to find details on the meaning & classification of the | “right/” here and how it relates to actual UTC and other timezones.
The right/* zones convert genuine UTC (that is, the time that occasionally steps 23:59:58 23:59:59 23:59:60 00:00:00 00:00:01) with leap seconds counted.
My experiments appear to show that TZ=right/* results in computing the time for zone "*" as if time() returned TAI-10 seconds. This is the current IBM recommended setting of hardware clocks on IBM mainframes, which ran on GMT until the inception of UTC in 1972 when TAI was 10 seconds ahead of UTC. IBM switched to running clocks at the atomic rate and introduced the 10-second offset in order to avoid a discontinuity. UTC is currently 37 (leap) seconds behind TAI. 529 $ uname -a Linux debian 4.19.0-23-amd64 #1 SMP Debian 4.19.269-1 (2022-12-20) x86_64 GNU/Linux 530 $ TZ=right/Universal date; TZ=Universal date Wed 18 Jan 2023 12:23:07 AM UTC Wed 18 Jan 2023 12:23:34 AM UTC 531 $ I have not experimented with TZ=right/* for dates prior to 1972. <http://leapsecond.com/java/gpsclock.htm> -- gil