leap-seconds revision 303407
1289421Scy# 2289421Scy# $FreeBSD: stable/11/etc/ntp/leap-seconds 303407 2016-07-27 19:39:25Z cy $ 3289421Scy# 4293037Scy# In the following text, the symbol '#' introduces 5293037Scy# a comment, which continues from that symbol until 6293037Scy# the end of the line. A plain comment line has a 7293037Scy# whitespace character following the comment indicator. 8293037Scy# There are also special comment lines defined below. 9293037Scy# A special comment will always have a non-whitespace 10293037Scy# character in column 2. 11289421Scy# 12293037Scy# A blank line should be ignored. 13289421Scy# 14293037Scy# The following table shows the corrections that must 15293037Scy# be applied to compute International Atomic Time (TAI) 16293037Scy# from the Coordinated Universal Time (UTC) values that 17293037Scy# are transmitted by almost all time services. 18289421Scy# 19293037Scy# The first column shows an epoch as a number of seconds 20293037Scy# since 1900.0 and the second column shows the number of 21293037Scy# seconds that must be added to UTC to compute TAI for 22293037Scy# any timestamp at or after that epoch. The value on 23293037Scy# each line is valid from the indicated initial instant 24293037Scy# until the epoch given on the next one or indefinitely 25293037Scy# into the future if there is no next line. 26293037Scy# (The comment on each line shows the representation of 27293037Scy# the corresponding initial epoch in the usual 28293037Scy# day-month-year format. The epoch always begins at 29293037Scy# 00:00:00 UTC on the indicated day. See Note 5 below.) 30293037Scy# 31293037Scy# Important notes: 32289421Scy# 33293037Scy# 1. Coordinated Universal Time (UTC) is often referred to 34293037Scy# as Greenwich Mean Time (GMT). The GMT time scale is no 35293037Scy# longer used, and the use of GMT to designate UTC is 36293037Scy# discouraged. 37289421Scy# 38293037Scy# 2. The UTC time scale is realized by many national 39293037Scy# laboratories and timing centers. Each laboratory 40293037Scy# identifies its realization with its name: Thus 41293037Scy# UTC(NIST), UTC(USNO), etc. The differences among 42293037Scy# these different realizations are typically on the 43293037Scy# order of a few nanoseconds (i.e., 0.000 000 00x s) 44293037Scy# and can be ignored for many purposes. These differences 45293037Scy# are tabulated in Circular T, which is published monthly 46293037Scy# by the International Bureau of Weights and Measures 47293037Scy# (BIPM). See www.bipm.fr for more information. 48289421Scy# 49298887Spfg# 3. The current definition of the relationship between UTC 50293037Scy# and TAI dates from 1 January 1972. A number of different 51293037Scy# time scales were in use before than epoch, and it can be 52293037Scy# quite difficult to compute precise timestamps and time 53293037Scy# intervals in those "prehistoric" days. For more information, 54293037Scy# consult: 55289421Scy# 56293037Scy# The Explanatory Supplement to the Astronomical 57293037Scy# Ephemeris. 58293037Scy# or 59293037Scy# Terry Quinn, "The BIPM and the Accurate Measurement 60293037Scy# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 61293037Scy# July, 1991. 62289421Scy# 63293037Scy# 4. The insertion of leap seconds into UTC is currently the 64293037Scy# responsibility of the International Earth Rotation Service, 65293037Scy# which is located at the Paris Observatory: 66289421Scy# 67293037Scy# Central Bureau of IERS 68293037Scy# 61, Avenue de l'Observatoire 69293037Scy# 75014 Paris, France. 70289421Scy# 71293037Scy# Leap seconds are announced by the IERS in its Bulletin C 72289421Scy# 73293037Scy# See hpiers.obspm.fr or www.iers.org for more details. 74289421Scy# 75293037Scy# All national laboratories and timing centers use the 76293037Scy# data from the BIPM and the IERS to construct their 77293037Scy# local realizations of UTC. 78289421Scy# 79293037Scy# Although the definition also includes the possibility 80293037Scy# of dropping seconds ("negative" leap seconds), this has 81293037Scy# never been done and is unlikely to be necessary in the 82293037Scy# foreseeable future. 83289421Scy# 84293037Scy# 5. If your system keeps time as the number of seconds since 85293037Scy# some epoch (e.g., NTP timestamps), then the algorithm for 86293037Scy# assigning a UTC time stamp to an event that happens during a positive 87293037Scy# leap second is not well defined. The official name of that leap 88293037Scy# second is 23:59:60, but there is no way of representing that time 89293037Scy# in these systems. 90293037Scy# Many systems of this type effectively stop the system clock for 91293037Scy# one second during the leap second and use a time that is equivalent 92293037Scy# to 23:59:59 UTC twice. For these systems, the corresponding TAI 93293037Scy# timestamp would be obtained by advancing to the next entry in the 94293037Scy# following table when the time equivalent to 23:59:59 UTC 95293037Scy# is used for the second time. Thus the leap second which 96293037Scy# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 97293037Scy# timestamps computed as follows: 98289421Scy# 99293037Scy# ... 100293037Scy# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 101293037Scy# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 102293037Scy# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 103293037Scy# ... 104289421Scy# 105293037Scy# If your system realizes the leap second by repeating 00:00:00 UTC twice 106293037Scy# (this is possible but not usual), then the advance to the next entry 107293037Scy# in the table must occur the second time that a time equivlent to 108293037Scy# 00:00:00 UTC is used. Thus, using the same example as above: 109289421Scy# 110293037Scy# ... 111293037Scy# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 112293037Scy# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 113293037Scy# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 114293037Scy# ... 115289421Scy# 116293037Scy# in both cases the use of timestamps based on TAI produces a smooth 117293037Scy# time scale with no discontinuity in the time interval. 118289421Scy# 119293037Scy# This complexity would not be needed for negative leap seconds (if they 120293037Scy# are ever used). The UTC time would skip 23:59:59 and advance from 121293037Scy# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 122293037Scy# 1 second at the same instant. This is a much easier situation to deal 123293037Scy# with, since the difficulty of unambiguously representing the epoch 124293037Scy# during the leap second does not arise. 125289421Scy# 126293037Scy# Questions or comments to: 127293037Scy# Jeff Prillaman 128293037Scy# Time Service Department 129293037Scy# US Naval Observatory 130293037Scy# Washington, DC 131293037Scy# jeffrey.prillaman@usno.navy.mil 132289421Scy# 133303407Scy# Last Update of leap second values: 6 Jul 2016 134289421Scy# 135293037Scy# The following line shows this last update date in NTP timestamp 136293037Scy# format. This is the date on which the most recent change to 137293037Scy# the leap second data was added to the file. This line can 138293037Scy# be identified by the unique pair of characters in the first two 139293037Scy# columns as shown below. 140289421Scy# 141303407Scy#$ 3676752000 142289421Scy# 143293037Scy# The data in this file will be updated periodically as new leap 144293037Scy# seconds are announced. In addition to being entered on the line 145293037Scy# above, the update time (in NTP format) will be added to the basic 146293037Scy# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 147293037Scy# In addition, the generic name leap-seconds.list will always point to 148293037Scy# the most recent version of the file. 149289421Scy# 150293037Scy# This update procedure will be performed only when a new leap second 151293037Scy# is announced. 152289421Scy# 153293037Scy# The following entry specifies the expiration date of the data 154293037Scy# in this file in units of seconds since 1900.0. This expiration date 155293037Scy# will be changed at least twice per year whether or not a new leap 156293037Scy# second is announced. These semi-annual changes will be made no 157293037Scy# later than 1 June and 1 December of each year to indicate what 158293037Scy# action (if any) is to be taken on 30 June and 31 December, 159293037Scy# respectively. (These are the customary effective dates for new 160293037Scy# leap seconds.) This expiration date will be identified by a 161293037Scy# unique pair of characters in columns 1 and 2 as shown below. 162293037Scy# In the unlikely event that a leap second is announced with an 163293037Scy# effective date other than 30 June or 31 December, then this 164293037Scy# file will be edited to include that leap second as soon as it is 165293037Scy# announced or at least one month before the effective date 166293037Scy# (whichever is later). 167293037Scy# If an announcement by the IERS specifies that no leap second is 168293037Scy# scheduled, then only the expiration date of the file will 169293037Scy# be advanced to show that the information in the file is still 170293037Scy# current -- the update time stamp, the data and the name of the file 171293037Scy# will not change. 172289421Scy# 173303407Scy# Updated through IERS Bulletin C 52 174303407Scy# File expires on: 1 Jun 2017 175293037Scy# 176303407Scy#@ 3705264000 177293037Scy# 178293037Scy2272060800 10 # 1 Jan 1972 179293037Scy2287785600 11 # 1 Jul 1972 180293037Scy2303683200 12 # 1 Jan 1973 181293037Scy2335219200 13 # 1 Jan 1974 182293037Scy2366755200 14 # 1 Jan 1975 183293037Scy2398291200 15 # 1 Jan 1976 184293037Scy2429913600 16 # 1 Jan 1977 185293037Scy2461449600 17 # 1 Jan 1978 186293037Scy2492985600 18 # 1 Jan 1979 187293037Scy2524521600 19 # 1 Jan 1980 188293037Scy2571782400 20 # 1 Jul 1981 189293037Scy2603318400 21 # 1 Jul 1982 190293037Scy2634854400 22 # 1 Jul 1983 191293037Scy2698012800 23 # 1 Jul 1985 192293037Scy2776982400 24 # 1 Jan 1988 193293037Scy2840140800 25 # 1 Jan 1990 194293037Scy2871676800 26 # 1 Jan 1991 195293037Scy2918937600 27 # 1 Jul 1992 196293037Scy2950473600 28 # 1 Jul 1993 197293037Scy2982009600 29 # 1 Jul 1994 198293037Scy3029443200 30 # 1 Jan 1996 199293037Scy3076704000 31 # 1 Jul 1997 200293037Scy3124137600 32 # 1 Jan 1999 201293037Scy3345062400 33 # 1 Jan 2006 202293037Scy3439756800 34 # 1 Jan 2009 203293037Scy3550089600 35 # 1 Jul 2012 204293037Scy3644697600 36 # 1 Jul 2015 205303407Scy3692217600 37 # 1 Jan 2017 206293037Scy# 207293037Scy# the following special comment contains the 208293037Scy# hash value of the data in this file computed 209293037Scy# use the secure hash algorithm as specified 210293037Scy# by FIPS 180-1. See the files in ~/sha for 211293037Scy# the details of how this hash value is 212293037Scy# computed. Note that the hash computation 213293037Scy# ignores comments and whitespace characters 214293037Scy# in data lines. It includes the NTP values 215293037Scy# of both the last modification time and the 216293037Scy# expiration time of the file, but not the 217293037Scy# white space on those lines. 218293037Scy# the hash line is also ignored in the 219293037Scy# computation. 220293037Scy# 221303407Scy#h 63f8fea8 587c099d abcf130a ad525eae 3e105052 222293037Scy# 223