(2005-02-20)
+-# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
+-# to generate the transitions from 2005 through 2012.
+-# (I replaced "lastFri" with "Fri>=26" by hand.)
+-# The spring transitions all correspond to the following Rule:
+-#
+-# Rule Zion 2005 2012 - Mar Fri>=26 2:00 1:00 D
+-#
+-# but older zic implementations (e.g., Solaris 8) do not support
+-# "Fri>=26" to mean April 1 in years like 2005, so for now we list the
+-# springtime transitions explicitly.
+-
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Zion 2005 only - Apr 1 2:00 1:00 D
++Rule Zion 2005 2012 - Apr Fri<=1 2:00 1:00 D
+ Rule Zion 2005 only - Oct 9 2:00 0 S
+-Rule Zion 2006 2010 - Mar Fri>=26 2:00 1:00 D
+ Rule Zion 2006 only - Oct 1 2:00 0 S
+ Rule Zion 2007 only - Sep 16 2:00 0 S
+ Rule Zion 2008 only - Oct 5 2:00 0 S
+ Rule Zion 2009 only - Sep 27 2:00 0 S
+ Rule Zion 2010 only - Sep 12 2:00 0 S
+-Rule Zion 2011 only - Apr 1 2:00 1:00 D
+ Rule Zion 2011 only - Oct 2 2:00 0 S
+-Rule Zion 2012 only - Mar Fri>=26 2:00 1:00 D
+ Rule Zion 2012 only - Sep 23 2:00 0 S
+
+ # From Ephraim Silverberg (2013-06-27):
+@@ -1801,7 +1806,7 @@
+ Rule Zion 2013 max - Mar Fri>=23 2:00 1:00 D
+ Rule Zion 2013 max - Oct lastSun 2:00 0 S
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Jerusalem 2:20:54 - LMT 1880
+ 2:20:40 - JMT 1918 # Jerusalem Mean Time?
+ 2:00 Zion I%sT
+@@ -1893,7 +1898,7 @@
+ # Central Time (UT+9). The adoption began on Oct 1, 1937.
+ # https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+ 9:00 Japan J%sT
+ # Since 1938, all Japanese possessions have been like Asia/Tokyo,
+@@ -1996,7 +2001,7 @@
+ Rule Jordan 2013 only - Dec 20 0:00 0 -
+ Rule Jordan 2014 max - Mar lastThu 24:00 1:00 S
+ Rule Jordan 2014 max - Oct lastFri 0:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Amman 2:23:44 - LMT 1931
+ 2:00 Jordan EE%sT
+
+@@ -2037,8 +2042,8 @@
+ # text.
+ #
+ # According to Izvestia newspaper No. 68 (23334) from 1991-03-20
+-# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
+-# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# -- page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564 -- on 1991-03-31 at 2:00 during
+ # transition to "summer" time:
+ # Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
+ # Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
+@@ -2054,7 +2059,7 @@
+ # Apparently there were last minute changes. Apparently Kazakh act No. 170
+ # was one of such changes.
+ #
+-# https://ru.wikipedia.org/wiki/Декретное время
++# https://ru.wikipedia.org/wiki/Декретное_время
+ # claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
+ # Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
+ # were to not move clocks and Uralsk oblast was to move clocks
+@@ -2193,7 +2198,7 @@
+ # UTC+6 to UTC+5 effective December 21st, 2018. The legal document is
+ # located here: http://adilet.zan.kz/rus/docs/P1800000817 (russian language).
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
+ # This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
+@@ -2295,7 +2300,7 @@
+ Rule Kyrgyz 1992 1996 - Sep lastSun 0:00 0 -
+ Rule Kyrgyz 1997 2005 - Mar lastSun 2:30 1:00 -
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+ 5:00 - +05 1930 Jun 21
+ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
+@@ -2410,7 +2415,7 @@
+ # The BBC reported that the transition was from 23:30 to 24:00 today.
+ # https://www.bbc.com/news/world-asia-44010705
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1
+ 8:30 - KST 1912 Jan 1
+ 9:00 - JST 1945 Sep 8
+@@ -2459,7 +2464,7 @@
+ Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S
+ Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 -
+ Rule Lebanon 1999 max - Oct lastSun 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Beirut 2:22:00 - LMT 1880
+ 2:00 Lebanon EE%sT
+
+@@ -2471,7 +2476,7 @@
+ # peninsular Malaysia
+ # taken from Mok Ly Yng (2003-10-30)
+ # http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+ 7:00 - +07 1933 Jan 1
+@@ -2485,7 +2490,7 @@
+ # From Paul Eggert (2014-08-12):
+ # The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945
+ # and 1982 transition dates are from Mok Ly Yng.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuching 7:21:20 - LMT 1926 Mar
+ 7:30 - +0730 1933
+ 8:00 NBorneo +08/+0820 1942 Feb 16
+@@ -2493,7 +2498,7 @@
+ 8:00 - +08
+
+ # Maldives
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Indian/Maldives 4:54:00 - LMT 1880 # Malé
+ 4:54:00 - MMT 1960 # Malé Mean Time
+ 5:00 - +05
+@@ -2636,7 +2641,7 @@
+ Rule Mongol 2015 2016 - Mar lastSat 2:00 1:00 -
+ Rule Mongol 2015 2016 - Sep lastSat 0:00 0 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ # Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
+ Zone Asia/Hovd 6:06:36 - LMT 1905 Aug
+ 6:00 - +06 1978
+@@ -2654,7 +2659,7 @@
+ 8:00 Mongol +08/+09
+
+ # Nepal
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kathmandu 5:41:16 - LMT 1920
+ 5:30 - +0530 1986
+ 5:45 - +0545
+@@ -2804,7 +2809,7 @@
+ Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Karachi 4:28:12 - LMT 1907
+ 5:30 - +0530 1942 Sep
+ 5:30 1:00 +0630 1945 Oct 15
+@@ -3091,13 +3096,21 @@
+ # http://www.palestinecabinet.gov.ps/Website/AR/NDecrees/ViewFile.ashx?ID=e7a42ab7-ee23-435a-b9c8-a4f7e81f3817
+
+ # From Even Scharning (2019-03-23):
+-# DST in Palestine will start on 30 March this year, not 23 March as the time
+-# zone database predicted.
+-# https://ramallah.news/post/123610
++# http://pnn.ps/news/401130
++# http://palweather.ps/ar/node/50136.html
+ #
+-# From Tim Parenti (2019-03-23):
+-# Combining this with the rules observed since 2016, adjust our spring
+-# transition guess to Mar Sat>=24.
++# From Sharif Mustafa (2019-03-26):
++# The Palestinian cabinet announced today that the switch to DST will
++# be on Fri Mar 29th 2019 by advancing the clock by 60 minutes.
++# The decree signing date is Mar 12th but it was not published till today.
++# The decree does not specify the exact time of switch.
++# http://palestinecabinet.gov.ps/Website/AR/NDecrees/ViewFile.ashx?ID=e54e9ea1-50ee-4137-84df-0d6c78da259b
++#
++# From Even Scharning (2019-04-10):
++# Our source in Palestine said it happened Friday 29 at 00:00 local time....
++#
++# From Paul Eggert (2019-04-10):
++# For now, guess spring-ahead transitions are March's last Friday at 00:00.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
+@@ -3128,10 +3141,11 @@
+ Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
+ Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
+ Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
+-Rule Palestine 2016 max - Mar Sat>=24 1:00 1:00 S
++Rule Palestine 2016 2018 - Mar Sat>=24 1:00 1:00 S
+ Rule Palestine 2016 max - Oct lastSat 1:00 0 -
++Rule Palestine 2019 max - Mar lastFri 0:00 1:00 S
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+ 2:00 Zion EET/EEST 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+@@ -3205,7 +3219,7 @@
+ Rule Phil 1954 only - Jul 1 0:00 0 S
+ Rule Phil 1978 only - Mar 22 0:00 1:00 D
+ Rule Phil 1978 only - Sep 21 0:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31
+ 8:04:00 - LMT 1899 May 11
+ 8:00 Phil P%sT 1942 May
+@@ -3213,7 +3227,7 @@
+ 8:00 Phil P%sT
+
+ # Qatar
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+ 4:00 - +04 1972 Jun
+ 3:00 - +03
+@@ -3261,7 +3275,7 @@
+ # the country. Presumably this is documenting airline time. Ignore this,
+ # as it's before our 1970 cutoff.
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14
+ 3:00 - +03
+ Link Asia/Riyadh Asia/Aden # Yemen
+@@ -3270,7 +3284,7 @@
+ # Singapore
+ # taken from Mok Ly Yng (2003-10-30)
+ # http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+ 7:00 - +07 1933 Jan 1
+@@ -3334,7 +3348,7 @@
+ # even worse. For now, let's use a numeric abbreviation; we can
+ # switch to "SLST" if it catches on.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 5:19:32 - MMT 1906 # Moratuwa Mean Time
+ 5:30 - +0530 1942 Jan 5
+@@ -3504,13 +3518,13 @@
+ Rule Syria 2012 max - Mar lastFri 0:00 1:00 S
+ Rule Syria 2009 max - Oct lastFri 0:00 0 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
+ 2:00 Syria EE%sT
+
+ # Tajikistan
+ # From Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+ 5:00 - +05 1930 Jun 21
+ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
+@@ -3518,7 +3532,7 @@
+ 5:00 - +05
+
+ # Thailand
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bangkok 6:42:04 - LMT 1880
+ 6:42:04 - BMT 1920 Apr # Bangkok Mean Time
+ 7:00 - +07
+@@ -3527,7 +3541,7 @@
+
+ # Turkmenistan
+ # From Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+ 4:00 - +04 1930 Jun 21
+ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
+@@ -3535,7 +3549,7 @@
+ 5:00 - +05
+
+ # United Arab Emirates
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dubai 3:41:12 - LMT 1920
+ 4:00 - +04
+ Link Asia/Dubai Asia/Muscat # Oman
+@@ -3542,7 +3556,7 @@
+
+ # Uzbekistan
+ # Byalokoz 1919 says Uzbekistan was 4:27:53.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
+ 4:00 - +04 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+@@ -3608,7 +3622,7 @@
+ # Lê Thành Lân: "Lịch hai thế kỷ (1802-2010) và các lịch vĩnh cửu",
+ # NXB Thuận Hoá, Huế, 1995.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jul 1
+ 7:06:30 - PLMT 1911 May 1 # Phù Liễn MT
+ 7:00 - +07 1942 Dec 31 23:00
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -25,7 +25,7 @@
+ # says W Australia didn't use DST in 1943/1944. Ignore Whitman's claim that
+ # 1944/1945 was just like 1943/1944.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ # Northern Territory
+ Zone Australia/Darwin 8:43:20 - LMT 1895 Feb
+ 9:00 - ACST 1899 May
+@@ -102,7 +102,7 @@
+ Rule AS 2007 only - Mar lastSun 2:00s 0 S
+ Rule AS 2008 max - Apr Sun>=1 2:00s 0 S
+ Rule AS 2008 max - Oct Sun>=1 2:00s 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Australia/Adelaide 9:14:20 - LMT 1895 Feb
+ 9:00 - ACST 1899 May
+ 9:30 Aus AC%sT 1971
+@@ -134,7 +134,7 @@
+ Rule AT 2006 only - Apr Sun>=1 2:00s 0 S
+ Rule AT 2007 only - Mar lastSun 2:00s 0 S
+ Rule AT 2008 max - Apr Sun>=1 2:00s 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Australia/Hobart 9:49:16 - LMT 1895 Sep
+ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+@@ -162,7 +162,7 @@
+ Rule AV 2007 only - Mar lastSun 2:00s 0 S
+ Rule AV 2008 max - Apr Sun>=1 2:00s 0 S
+ Rule AV 2008 max - Oct Sun>=1 2:00s 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Australia/Melbourne 9:39:52 - LMT 1895 Feb
+ 10:00 Aus AE%sT 1971
+ 10:00 AV AE%sT
+@@ -185,7 +185,7 @@
+ Rule AN 2007 only - Mar lastSun 2:00s 0 S
+ Rule AN 2008 max - Apr Sun>=1 2:00s 0 S
+ Rule AN 2008 max - Oct Sun>=1 2:00s 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Australia/Sydney 10:04:52 - LMT 1895 Feb
+ 10:00 Aus AE%sT 1971
+ 10:00 AN AE%sT
+@@ -256,7 +256,7 @@
+ 11:00 - +11
+
+ # Christmas
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
+ 7:00 - +07
+
+@@ -263,7 +263,7 @@
+ # Cocos (Keeling) Is
+ # These islands were ruled by the Ross family from about 1830 to 1978.
+ # We don't know when standard time was introduced; for now, we guess 1900.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Indian/Cocos 6:27:40 - LMT 1900
+ 6:30 - +0630
+
+@@ -386,12 +386,12 @@
+ Rule Fiji 2014 only - Jan Sun>=18 2:00 0 -
+ Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 -
+ Rule Fiji 2015 max - Jan Sun>=13 3:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji +12/+13
+
+ # French Polynesia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+ -9:00 - -09
+ Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+@@ -434,7 +434,7 @@
+ # http://documents.guam.gov/wp-content/uploads/E.O.-77-18-Guam-Standard-Time.pdf
+ Rule Guam 1977 only - Aug 28 2:00 0 S
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31
+ 9:39:00 - LMT 1901 # Agana
+ 10:00 - GST 1941 Dec 10 # Guam
+@@ -444,7 +444,7 @@
+ Link Pacific/Guam Pacific/Saipan # N Mariana Is
+
+ # Kiribati
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+ 12:00 - +12
+ Zone Pacific/Enderbury -11:24:20 - LMT 1901
+@@ -460,7 +460,7 @@
+ # See Pacific/Guam.
+
+ # Marshall Is
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Majuro 11:24:48 - LMT 1901
+ 11:00 - +11 1914 Oct
+ 9:00 - +09 1919 Feb 1
+@@ -478,7 +478,7 @@
+ 12:00 - +12
+
+ # Micronesia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Chuuk -13:52:52 - LMT 1844 Dec 31
+ 10:07:08 - LMT 1901
+ 10:00 - +10 1914 Oct
+@@ -506,7 +506,7 @@
+ 11:00 - +11
+
+ # Nauru
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
+ 11:30 - +1130 1942 Aug 29
+ 9:00 - +09 1945 Sep 8
+@@ -520,7 +520,7 @@
+ Rule NC 1996 only - Dec 1 2:00s 1:00 -
+ # Shanks & Pottenger say the following was at 2:00; go with IATA.
+ Rule NC 1997 only - Mar 2 2:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa
+ 11:00 NC +11/+12
+
+@@ -559,7 +559,7 @@
+ Rule Chatham 2007 max - Sep lastSun 2:45s 1:00 -
+ Rule NZ 2008 max - Apr Sun>=1 2:00s 0 S
+ Rule Chatham 2008 max - Apr Sun>=1 2:45s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Auckland 11:39:04 - LMT 1868 Nov 2
+ 11:30 NZ NZ%sT 1946 Jan 1
+ 12:00 NZ NZ%sT
+@@ -585,7 +585,7 @@
+ Rule Cook 1978 only - Nov 12 0:00 0:30 -
+ Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
+ Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
+ -10:30 - -1030 1978 Nov 12
+ -10:00 Cook -10/-0930
+@@ -594,7 +594,7 @@
+
+
+ # Niue
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
+ -11:20 - -1120 1951
+ -11:30 - -1130 1978 Oct 1
+@@ -601,7 +601,7 @@
+ -11:00 - -11
+
+ # Norfolk
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
+ 11:12 - +1112 1951
+ 11:30 - +1130 1974 Oct 27 02:00
+@@ -610,13 +610,13 @@
+ 11:00 - +11
+
+ # Palau (Belau)
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Palau -15:02:04 - LMT 1844 Dec 31 # Koror
+ 8:57:56 - LMT 1901
+ 9:00 - +09
+
+ # Papua New Guinea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+ 9:48:32 - PMMT 1895 # Port Moresby Mean Time
+ 10:00 - +10
+@@ -646,7 +646,7 @@
+ 11:00 - +11
+
+ # Pitcairn
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+ -8:30 - -0830 1998 Apr 27 0:00
+ -8:00 - -08
+@@ -731,7 +731,7 @@
+ Rule WS 2011 only - Sep lastSat 3:00 1 -
+ Rule WS 2012 max - Apr Sun>=1 4:00 0 -
+ Rule WS 2012 max - Sep lastSun 3:00 1 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Apia 12:33:04 - LMT 1892 Jul 5
+ -11:26:56 - LMT 1911
+ -11:30 - -1130 1950
+@@ -740,7 +740,7 @@
+
+ # Solomon Is
+ # excludes Bougainville, for which see Papua New Guinea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
+ 11:00 - +11
+
+@@ -763,7 +763,7 @@
+ # was "11 hours slow on G.M.T." Go with Thorsen and assume Shanks & Pottenger
+ # are off by an hour starting in 1901.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+ -11:00 - -11 2011 Dec 30
+ 13:00 - +13
+@@ -776,7 +776,7 @@
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
+ Rule Tonga 2016 only - Nov Sun>=1 2:00 1:00 -
+ Rule Tonga 2017 only - Jan Sun>=15 3:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - +1220 1941
+ 13:00 - +13 1999
+@@ -783,7 +783,7 @@
+ 13:00 Tonga +13/+14
+
+ # Tuvalu
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Funafuti 11:56:52 - LMT 1901
+ 12:00 - +12
+
+@@ -844,7 +844,7 @@
+ # uninhabited since World War II; was probably like Pacific/Kiritimati
+
+ # Wake
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wake 11:06:28 - LMT 1901
+ 12:00 - +12
+
+@@ -857,12 +857,12 @@
+ Rule Vanuatu 1985 1991 - Sep Sun>=23 0:00 1:00 -
+ Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
+ Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
+ 11:00 Vanuatu +11/+12
+
+ # Wallis and Futuna
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ 12:00 - +12
+
+@@ -1248,6 +1248,22 @@
+ # in WA or its introduction in SA had anything to do with the genesis
+ # of this time zone. My hunch is that it's been around since well
+ # before 1975. I remember seeing it noted on road maps decades ago.
++#
++# From Gilmore Davidson (2019-04-08):
++# https://www.abc.net.au/news/2019-04-08/this-remote-stretch-of-desert-has-its-own-custom-time-zone/10981000
++# ... include[s] a rough description of the geographical boundaries...
++# "The time zone exists for about 340 kilometres and takes in the tiny
++# roadhouse communities of Cocklebiddy, Madura, Eucla and Border Village."
++# ... and an indication that the zone has definitely been in existence
++# since before the 1970 cut-off of the database ...
++# From Paul Eggert (2019-05-17):
++# That ABC Esperance story by Christien de Garis also says:
++# Although the Central Western Time Zone is not officially recognised (your
++# phones won't automatically change), there is a sign instructing you which
++# way to wind your clocks 45 minutes and scrawled underneath one of them in
++# Texta is the word: 'Why'?
++# "Good question," Mr Pike said.
++# "I don't even know that, and it's been going for over 50 years."
+
+ # From Paul Eggert (2006-12-15):
+ # For lack of better info, assume the tradition dates back to the
+@@ -1566,6 +1582,42 @@
+ ###############################################################################
+
+
++# Bonin (Ogasawara) Islands and Marcus Island (Minami-Tori-shima)
++
++# From Wakaba (2019-01-28) via Phake Nick:
++# National Diet Library of Japan has several reports by Japanese Government
++# officers that describe the time used in islands when they visited there.
++# According to them (and other sources such as newspapers), standard time UTC
++# + 10 (JST + 1) and DST UTC + 11 (JST + 2) was used until its return to Japan
++# at 1968-06-26 00:00 JST. The exact periods of DST are still unknown.
++# I guessed Guam, Mariana, and Bonin and Marcus districts might have
++# synchronized their DST periods, but reports imply they had their own
++# decisions, i.e. there were three or more different time zones....
++#
++# https://wiki.suikawiki.org/n/小笠原諸島の標準時
++
++# From Phake Nick (2019-02-12):
++# Because their last time change to return to Japanese time when they returned
++# to Japanese rule was right before 1970, ... per the current tz database
++# rule, the information doesn't warrant creation of a new timezone for Bonin
++# Islands itself and is thus as an anecdotal note for interest purpose only.
++# ... [The abovementioned link] described some special timekeeping phenomenon
++# regarding Marcus island, another remote island currently owned by Japanese
++# in the same administrative unit as Bonin Islands. Many reports claim that
++# the American coastal guard on the American quarter of the island use its own
++# coastal guard time, and most sources describe the time as UTC+11, being two
++# hours faster than JST used by some Japanese personnel on the island. Some
++# sites describe it as same as Wake Island/Guam time although it would be
++# incorrect to be same as Guam. And then in a few Japanese governmental
++# report from 1980s (from National Institute of Information and Communications
++# Technology) regarding the construction of VLBI facility on the Marcus
++# Island, it claimed that there are three time standards being used on the
++# island at the time which include not just JST (UTC+9) or [US]CG time
++# (UTC+11) but also a JMSDF time (UTC+10) (Japan Maritime Self-Defense
++# Force). Unfortunately there are no other sources that mentioned such time
++# and there are also no information on things like how the time was used.
++
++
+ # Fiji
+
+ # Howse writes (p 153) that in 1879 the British governor of Fiji
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -38,7 +38,7 @@
+ # commentary and rules associated with the entry.
+ #
+ # As explained in the zic man page, the zone columns are:
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+
+ # Ethiopia
+ # From Paul Eggert (2014-07-31):
+--- contrib/tzdata/checktab.awk.orig
++++ contrib/tzdata/checktab.awk
+@@ -63,12 +63,19 @@
+ coordinates = $2
+ tz = $3
+ comments = $4
+- if (cc < cc0) {
++
++ # Don't complain about a special case for Crimea in zone.tab.
++ # FIXME: zone.tab should be removed, since it is obsolete.
++ # Or at least put just "XX" in its country-code column.
++ if (cc < cc0 \
++ && !(zone_table == "zone.tab" \
++ && tz0 == "Europe/Simferopol")) {
+ printf "%s:%d: country code '%s' is out of order\n", \
+ zone_table, zone_NR, cc >>"/dev/stderr"
+ status = 1
+ }
+ cc0 = cc
++ tz0 = tz
+ tztab[tz] = 1
+ tz2comments[tz] = comments
+ tz2NR[tz] = zone_NR
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -122,7 +122,7 @@
+ # position is 51° 28' 30" N, 0° 18' 45" W. The longitude should
+ # be within about ±2". The Ordnance Survey grid reference is TQ172761.
+ #
+-# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
++# [This yields STDOFF = -0:01:15 for London LMT in the 18th century.]
+
+ # From Paul Eggert (1993-11-18):
+ #
+@@ -500,7 +500,7 @@
+ #
+ # Use Europe/London for Jersey, Guernsey, and the Isle of Man.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
+ 0:00 GB-Eire %s 1968 Oct 27
+ 1:00 - BST 1971 Oct 31 2:00u
+@@ -538,7 +538,7 @@
+ Rule Eire 1990 1995 - Oct Sun>=22 1:00u -1:00 -
+ Rule Eire 1996 max - Oct lastSun 1:00u -1:00 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
+ -0:25:21 - DMT 1916 May 21 2:00s
+ -0:25:21 1:00 IST 1916 Oct 1 2:00s
+@@ -737,7 +737,7 @@
+
+ # These are for backward compatibility with older versions.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone WET 0:00 EU WE%sT
+ Zone CET 1:00 C-Eur CE%sT
+ Zone MET 1:00 C-Eur ME%sT
+@@ -797,7 +797,7 @@
+ Rule Albania 1983 only - Apr 18 0:00 1:00 S
+ Rule Albania 1983 only - Oct 1 0:00 0 -
+ Rule Albania 1984 only - Apr 1 0:00 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Tirane 1:19:20 - LMT 1914
+ 1:00 - CET 1940 Jun 16
+ 1:00 Albania CE%sT 1984 Jul
+@@ -804,7 +804,7 @@
+ 1:00 EU CE%sT
+
+ # Andorra
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Andorra 0:06:04 - LMT 1901
+ 0:00 - WET 1946 Sep 30
+ 1:00 - CET 1985 Mar 31 2:00
+@@ -830,7 +830,7 @@
+ Rule Austria 1948 only - Apr 18 2:00s 1:00 S
+ Rule Austria 1980 only - Apr 6 0:00 1:00 S
+ Rule Austria 1980 only - Sep 28 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vienna 1:05:21 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1920
+ 1:00 Austria CE%sT 1940 Apr 1 2:00s
+@@ -862,7 +862,7 @@
+ # Belarussian government decided against changing to winter time....
+ # http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+ 1:50 - MMT 1924 May 2 # Minsk Mean Time
+ 2:00 - EET 1930 Jun 21
+@@ -926,7 +926,7 @@
+ Rule Belgium 1945 only - Sep 16 2:00s 0 -
+ Rule Belgium 1946 only - May 19 2:00s 1:00 S
+ Rule Belgium 1946 only - Oct 7 2:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Brussels 0:17:30 - LMT 1880
+ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
+ 0:00 - WET 1914 Nov 8
+@@ -953,7 +953,7 @@
+ Rule Bulg 1980 1982 - Apr Sat>=1 23:00 1:00 S
+ Rule Bulg 1980 only - Sep 29 1:00 0 -
+ Rule Bulg 1981 only - Sep 27 2:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Sofia 1:33:16 - LMT 1880
+ 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
+ 2:00 - EET 1942 Nov 2 3:00
+@@ -986,7 +986,7 @@
+ Rule Czech 1946 1949 - Oct Sun>=1 2:00s 0 -
+ Rule Czech 1947 1948 - Apr Sun>=15 2:00s 1:00 S
+ Rule Czech 1949 only - Apr 9 2:00s 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Prague 0:57:44 - LMT 1850
+ 0:57:44 - PMT 1891 Oct # Prague Mean Time
+ 1:00 C-Eur CE%sT 1945 May 9
+@@ -1048,7 +1048,7 @@
+ Rule Denmark 1948 only - May 9 2:00s 1:00 S
+ Rule Denmark 1948 only - Aug 8 2:00s 0 -
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Copenhagen 0:50:20 - LMT 1890
+ 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
+ 1:00 Denmark CE%sT 1942 Nov 2 2:00s
+@@ -1145,7 +1145,7 @@
+ Rule Thule 2007 max - Mar Sun>=8 2:00 1:00 D
+ Rule Thule 2007 max - Nov Sun>=1 2:00 0 S
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
+ -3:00 - -03 1980 Apr 6 2:00
+ -3:00 EU -03/-02 1996
+@@ -1211,7 +1211,7 @@
+ # From Urmet Jänes (2002-03-28):
+ # The legislative reference is Government decree No. 84 on 2002-02-21.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Tallinn 1:39:00 - LMT 1880
+ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
+ 1:00 C-Eur CE%sT 1919 Jul
+@@ -1274,7 +1274,7 @@
+ # Milne says Helsinki (Helsingfors) time was 1:39:49.2 (official document);
+ # round to nearest.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Helsinki 1:39:49 - LMT 1878 May 31
+ 1:39:49 - HMT 1921 May # Helsinki Mean Time
+ 2:00 Finland EE%sT 1983
+@@ -1364,7 +1364,7 @@
+ # but Howse quotes the actual French legislation as saying 0:09:21.
+ # Go with Howse. Howse writes that the time in France was officially based
+ # on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
+ # Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
+@@ -1412,7 +1412,7 @@
+ Rule SovietZone 1945 only - Sep 24 3:00 1:00 S
+ Rule SovietZone 1945 only - Nov 18 2:00s 0 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945 May 24 2:00
+ 1:00 SovietZone CE%sT 1946
+@@ -1440,7 +1440,7 @@
+ # is in Europe. Our reference location Tbilisi is in the Asian part.
+
+ # Gibraltar
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
+ 0:00 GB-Eire %s 1957 Apr 14 2:00
+ 1:00 - CET 1982
+@@ -1471,7 +1471,7 @@
+ Rule Greece 1979 only - Sep 29 2:00 0 -
+ Rule Greece 1980 only - Apr 1 0:00 1:00 S
+ Rule Greece 1980 only - Sep 28 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
+ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
+ 2:00 Greece EE%sT 1941 Apr 30
+@@ -1508,7 +1508,7 @@
+ Rule Hungary 1957 only - Jun Sun>=1 1:00 1:00 S
+ Rule Hungary 1957 only - Sep lastSun 3:00 0 -
+ Rule Hungary 1980 only - Apr 6 1:00 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
+ 1:00 C-Eur CE%sT 1918
+ 1:00 Hungary CE%sT 1941 Apr 8
+@@ -1569,7 +1569,7 @@
+ Rule Iceland 1949 only - Oct 30 1:00s 0 -
+ Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
+ Rule Iceland 1967 only - Oct 29 1:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Reykjavik -1:28 - LMT 1908
+ -1:00 Iceland -01/+00 1968 Apr 7 1:00s
+ 0:00 - GMT
+@@ -1583,6 +1583,25 @@
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
++# From Stephen Trainor (2019-05-06):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale/ORA_LEGALE_ESTIVA_IN_ITALIA.htm
++# ... the [1866] law went into effect on 12 December 1866, rather than
++# the date of the decree (22 Sep 1866)
++# https://web.archive.org/web/20070824155341/http://www.iav.it/planetario/didastro/didastro/english.htm
++# ... "In Italy in 1866 there were 6 railway times (Torino, Verona, Firenze,
++# Roma, Napoli, Palermo). On that year it was decided to unify them, adopting
++# the average time of Rome (even if this city was not yet part of the
++# kingdom). On the 12th December 1866, on the starting of the winter time
++# table, it took effect in the railways, the post office and the telegraph,
++# not only for the internal service but also for the public.... Milano set
++# the public watches on the Rome time on the same day (12th December 1866),
++# Torino and Bologna on the 1st January 1867, Venezia the 1st May 1880 and the
++# last city was Cagliari in 1886."
++#
++# From Luigi Rosa (2019-05-07):
++# this is the scan of the decree:
++# http://www.radiomarconi.com/marconi/filopanti/1866c.jpg
++#
+ # From Michael Deckers (2016-10-24):
+ # http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
+ # ... [translated as] "The preceding dispositions will enter into
+@@ -1593,6 +1612,7 @@
+ # The authoritative source for time in Italy is the national metrological
+ # institute, which has a summary page of historical DST data at
+ # http://www.inrim.it/res/tf/ora_legale_i.shtml
++# [now at http://oldsite.inrim.it/res/tf/ora_legale_i.shtml as of 2017]
+ # (2016-10-24):
+ # http://www.renzobaldini.it/le-ore-legali-in-italia/
+ # has still different data for 1944. It divides Italy in two, as
+@@ -1656,8 +1676,8 @@
+ Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+ Rule Italy 1978 only - Oct 1 0:00s 0 -
+ Rule Italy 1979 only - Sep 30 0:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
++Zone Europe/Rome 0:49:56 - LMT 1866 Dec 12
+ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
+ 1:00 Italy CE%sT 1943 Sep 10
+ 1:00 C-Eur CE%sT 1944 Jun 4
+@@ -1732,7 +1752,7 @@
+ # Byalokoz 1919 says Latvia was 1:36:34.
+ # Go with Byalokoz.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Riga 1:36:34 - LMT 1880
+ 1:36:34 - RMT 1918 Apr 15 2:00 # Riga MT
+ 1:36:34 1:00 LST 1918 Sep 16 3:00 # Latvian ST
+@@ -1802,7 +1822,7 @@
+ # http://www.lrvk.lt/nut/11/n1749.htm
+
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vilnius 1:41:16 - LMT 1880
+ 1:24:00 - WMT 1917 # Warsaw Mean Time
+ 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
+@@ -1846,7 +1866,7 @@
+ Rule Lux 1927 only - Apr 9 23:00 1:00 S
+ Rule Lux 1928 only - Apr 14 23:00 1:00 S
+ Rule Lux 1929 only - Apr 20 23:00 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
+ 1:00 Lux CE%sT 1918 Nov 25
+ 0:00 Lux WE%sT 1929 Oct 6 2:00s
+@@ -1871,7 +1891,7 @@
+ Rule Malta 1975 1979 - Apr Sun>=15 2:00 1:00 S
+ Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+@@ -1940,7 +1960,7 @@
+ Rule Moldova 1997 max - Mar lastSun 2:00 1:00 S
+ Rule Moldova 1997 max - Oct lastSun 3:00 0 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Chisinau 1:55:20 - LMT 1880
+ 1:55 - CMT 1918 Feb 15 # Chisinau MT
+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+@@ -1956,7 +1976,7 @@
+ # Monaco
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+ # more precise 0:09:21.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 0:00 France WE%sT 1945 Sep 16 3:00
+@@ -2031,8 +2051,8 @@
+ Rule Neth 1945 only - Sep 16 2:00s 0 -
+ #
+ # Amsterdam Mean Time was +00:19:32.13, but the .13 is omitted
+-# below because the current format requires GMTOFF to be an integer.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# below because the current format requires STDOFF to be an integer.
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Amsterdam 0:19:32 - LMT 1835
+ 0:19:32 Neth %s 1937 Jul 1
+ 0:20 Neth +0020/+0120 1940 May 16 0:00
+@@ -2051,7 +2071,7 @@
+ Rule Norway 1959 1964 - Mar Sun>=15 2:00s 1:00 S
+ Rule Norway 1959 1965 - Sep Sun>=15 2:00s 0 -
+ Rule Norway 1965 only - Apr 25 2:00s 1:00 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Oslo 0:43:00 - LMT 1895 Jan 1
+ 1:00 Norway CE%sT 1940 Aug 10 23:00
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+@@ -2142,7 +2162,7 @@
+ Rule Poland 1960 only - Apr 3 1:00s 1:00 S
+ Rule Poland 1961 1964 - May lastSun 1:00s 1:00 S
+ Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Warsaw 1:24:00 - LMT 1880
+ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
+ 1:00 C-Eur CE%sT 1918 Sep 16 3:00
+@@ -2247,7 +2267,7 @@
+ Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
+ Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Lisbon -0:36:45 - LMT 1884
+ -0:36:45 - LMT 1912 Jan 1 0:00u # Lisbon MT
+ 0:00 Port WE%sT 1966 Apr 3 2:00
+@@ -2306,7 +2326,7 @@
+ Rule Romania 1980 only - Sep lastSun 1:00 0 -
+ Rule Romania 1991 1993 - Mar lastSun 0:00s 1:00 S
+ Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+ 2:00 Romania EE%sT 1981 Mar 29 2:00s
+@@ -3345,7 +3365,7 @@
+ # See Europe/Rome.
+
+ # Serbia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Belgrade 1:22:00 - LMT 1884
+ 1:00 - CET 1941 Apr 18 23:00
+ 1:00 C-Eur CE%sT 1945
+@@ -3451,7 +3471,7 @@
+ Rule SpainAfrica 1977 only - Sep 28 0:00 0 -
+ Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
+ Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Madrid -0:14:44 - LMT 1900 Dec 31 23:45:16
+ 0:00 Spain WE%sT 1940 Mar 16 23:00
+ 1:00 Spain CE%sT 1979
+@@ -3519,7 +3539,7 @@
+ #
+ # Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
+ 1:00:14 - SET 1900 Jan 1 # Swedish Time
+ 1:00 - CET 1916 May 14 23:00
+@@ -3622,7 +3642,7 @@
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
+ Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See above comment.
+ 0:29:46 - BMT 1894 Jun # Bern Mean Time
+ 1:00 Swiss CE%sT 1981
+@@ -3772,7 +3792,7 @@
+ Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
+ Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+@@ -3869,16 +3889,8 @@
+ # controversial, and some day "Kyiv" may become substantially more popular in
+ # English; in the meantime, stick with the traditional English "Kiev" as that
+ # means less disruption for our users.
+-#
+-# Anyway, none of the common English-language spellings (Kiev, Kyiv, Kieff,
+-# Kijeff, Kijev, Kiyef, Kiyeff) do justice to the common pronunciation in
+-# Ukrainian, namely [ˈkɪjiu̯] (IPA). This pronunciation has nothing like an
+-# English "v" or "f", and instead trails off with what an English-speaker
+-# would call a demure "oo" sound, and it would would be better anglicized as
+-# "Kuiyu". Here's a sound file, if you would like to do as the Kuiyuvians do:
+-# https://commons.wikimedia.org/wiki/File:Uk-Київ.ogg
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ # This represents most of Ukraine. See above for the spelling of "Kiev".
+ Zone Europe/Kiev 2:02:04 - LMT 1880
+ 2:02:04 - KMT 1924 May 2 # Kiev Mean Time
+--- contrib/tzdata/factory.orig
++++ contrib/tzdata/factory
+@@ -8,5 +8,5 @@
+ # time zone abbreviation "-00", indicating that the actual time zone
+ # is unknown.
+
+-# Zone NAME GMTOFF RULES FORMAT
++# Zone NAME STDOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -93,10 +93,33 @@
+ # was the first nationwide legal time standard, and apparently
+ # time was just called "Standard Time" or "Daylight Saving Time".
+
+-# From Arthur David Olson:
+-# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
+-# See, for example, the front page of the Saturday, 1974-10-26
+-# and Sunday, 1974-10-27 editions of the Washington Post.
++# From Paul Eggert (2019-06-04):
++# Here is the legal basis for the US federal rules.
++# * Public Law 65-106 (1918-03-19) implemented standard and daylight saving
++# time for the first time across the US, springing forward on March's last
++# Sunday and falling back on October's last Sunday.
++# https://www.loc.gov/law/help/statutes-at-large/65th-congress/session-2/c65s2ch24.pdf
++# * Public Law 66-40 (1919-08-20) repealed DST on October 1919's last Sunday.
++# https://www.loc.gov/law/help/statutes-at-large/66th-congress/session-1/c66s1ch51.pdf
++# * Public Law 77-403 (1942-01-20) started wartime DST on 1942-02-09.
++# https://www.loc.gov/law/help/statutes-at-large/77th-congress/session-2/c77s2ch7.pdf
++# * Public Law 79-187 (1945-09-25) ended wartime DST on 1945-09-30.
++# https://www.loc.gov/law/help/statutes-at-large/79th-congress/session-1/c79s1ch388.pdf
++# * Public Law 89-387 (1966-04-13) reinstituted a national standard for DST,
++# from April's last Sunday to October's last Sunday, effective 1967.
++# https://www.govinfo.gov/content/pkg/STATUTE-80/pdf/STATUTE-80-Pg107.pdf
++# * Public Law 93-182 (1973-12-15) moved the 1974 spring-forward to 01-06.
++# https://www.govinfo.gov/content/pkg/STATUTE-87/pdf/STATUTE-87-Pg707.pdf
++# * Public Law 93-434 (1974-10-05) moved the 1975 spring-forward to
++# February's last Sunday.
++# https://www.govinfo.gov/content/pkg/STATUTE-88/pdf/STATUTE-88-Pg1209.pdf
++# * Public Law 99-359 (1986-07-08) moved the spring-forward to April's first
++# Sunday.
++# https://www.govinfo.gov/content/pkg/STATUTE-100/pdf/STATUTE-100-Pg764.pdf
++# * Public Law 109-58 (2005-08-08), effective 2007, moved the spring-forward
++# to March's second Sunday and the fall-back to November's first Sunday.
++# https://www.govinfo.gov/content/pkg/PLAW-109publ58/pdf/PLAW-109publ58.pdf
++# All transitions are at 02:00 local time.
+
+ # From Arthur David Olson:
+ # Before the Uniform Time Act of 1966 took effect in 1967, observance of
+@@ -152,11 +175,11 @@
+ Rule US 1918 1919 - Oct lastSun 2:00 0 S
+ Rule US 1942 only - Feb 9 2:00 1:00 W # War
+ Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
+-Rule US 1945 only - Sep lastSun 2:00 0 S
++Rule US 1945 only - Sep 30 2:00 0 S
+ Rule US 1967 2006 - Oct lastSun 2:00 0 S
+ Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
+ Rule US 1974 only - Jan 6 2:00 1:00 D
+-Rule US 1975 only - Feb 23 2:00 1:00 D
++Rule US 1975 only - Feb lastSun 2:00 1:00 D
+ Rule US 1976 1986 - Apr lastSun 2:00 1:00 D
+ Rule US 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ Rule US 2007 max - Mar Sun>=8 2:00 1:00 D
+@@ -173,7 +196,7 @@
+ # increase the chances that they'll actually get compiled and to
+ # avoid the need to duplicate the US rules in another file.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone EST -5:00 - EST
+ Zone MST -7:00 - MST
+ Zone HST -10:00 - HST
+@@ -330,7 +353,7 @@
+ Rule NYC 1921 1966 - Apr lastSun 2:00 1:00 D
+ Rule NYC 1921 1954 - Sep lastSun 2:00 0 S
+ Rule NYC 1955 1966 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:03:58
+ -5:00 US E%sT 1920
+ -5:00 NYC E%sT 1942
+@@ -390,7 +413,7 @@
+ Rule Chicago 1922 1966 - Apr lastSun 2:00 1:00 D
+ Rule Chicago 1922 1954 - Sep lastSun 2:00 0 S
+ Rule Chicago 1955 1966 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
+ -6:00 US C%sT 1920
+ -6:00 Chicago C%sT 1936 Mar 1 2:00
+@@ -458,7 +481,7 @@
+ Rule Denver 1921 only - May 22 2:00 0 S
+ Rule Denver 1965 1966 - Apr lastSun 2:00 1:00 D
+ Rule Denver 1965 1966 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00:04
+ -7:00 US M%sT 1920
+ -7:00 Denver M%sT 1942
+@@ -511,7 +534,7 @@
+ Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
+ -8:00 US P%sT 1946
+ -8:00 CA P%sT 1967
+@@ -619,7 +642,7 @@
+ # So they won't be waiting for Alaska to join them on 2019-03-10, but will
+ # rather change their clocks twice in seven weeks.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 19 15:33:32
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+@@ -739,7 +762,7 @@
+ # Note that 1933-05-21 was a Sunday.
+ # We're left to guess the time of day when Act 163 was approved; guess noon.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
+ -10:30 - HST 1933 Apr 30 2:00
+ -10:30 1:00 HDT 1933 May 21 12:00
+@@ -769,7 +792,7 @@
+ # Shanks says the 1944 experiment came to an end on 1944-03-17.
+ # Go with the Arizona State Library instead.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
+ -7:00 US M%sT 1944 Jan 1 0:01
+ -7:00 - MST 1944 Apr 1 0:01
+@@ -795,7 +818,7 @@
+ # quarter of Idaho county) and eastern Oregon (most of Malheur County)
+ # switched four weeks late in 1974.
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
+ -8:00 US P%sT 1923 May 13 2:00
+ -7:00 US M%sT 1974
+@@ -867,7 +890,7 @@
+ Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D
+ Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
+ Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
+ -6:00 US C%sT 1920
+ -6:00 Indianapolis C%sT 1942
+@@ -887,7 +910,7 @@
+ Rule Marengo 1951 only - Sep lastSun 2:00 0 S
+ Rule Marengo 1954 1960 - Apr lastSun 2:00 1:00 D
+ Rule Marengo 1954 1960 - Sep lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
+ -6:00 US C%sT 1951
+ -6:00 Marengo C%sT 1961 Apr 30 2:00
+@@ -911,7 +934,7 @@
+ Rule Vincennes 1960 only - Oct lastSun 2:00 0 S
+ Rule Vincennes 1961 only - Sep lastSun 2:00 0 S
+ Rule Vincennes 1962 1963 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
+ -6:00 US C%sT 1946
+ -6:00 Vincennes C%sT 1964 Apr 26 2:00
+@@ -932,7 +955,7 @@
+ Rule Perry 1960 only - Oct lastSun 2:00 0 S
+ Rule Perry 1961 only - Sep lastSun 2:00 0 S
+ Rule Perry 1962 1963 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
+ -6:00 US C%sT 1946
+ -6:00 Perry C%sT 1964 Apr 26 2:00
+@@ -948,7 +971,7 @@
+ Rule Pike 1955 1960 - Sep lastSun 2:00 0 S
+ Rule Pike 1956 1964 - Apr lastSun 2:00 1:00 D
+ Rule Pike 1961 1964 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
+ -6:00 US C%sT 1955
+ -6:00 Pike C%sT 1965 Apr 25 2:00
+@@ -970,7 +993,7 @@
+ Rule Starke 1955 1956 - Oct lastSun 2:00 0 S
+ Rule Starke 1957 1958 - Sep lastSun 2:00 0 S
+ Rule Starke 1959 1961 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
+ -6:00 US C%sT 1947
+ -6:00 Starke C%sT 1962 Apr 29 2:00
+@@ -986,7 +1009,7 @@
+ Rule Pulaski 1946 1954 - Sep lastSun 2:00 0 S
+ Rule Pulaski 1955 1956 - Oct lastSun 2:00 0 S
+ Rule Pulaski 1957 1960 - Sep lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
+ -6:00 US C%sT 1946
+ -6:00 Pulaski C%sT 1961 Apr 30 2:00
+@@ -997,7 +1020,7 @@
+ -5:00 US E%sT
+ #
+ # Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
+ -6:00 US C%sT 1954 Apr 25 2:00
+ -5:00 - EST 1969
+@@ -1022,7 +1045,7 @@
+ Rule Louisville 1946 only - Jun 2 2:00 0 S
+ Rule Louisville 1950 1955 - Sep lastSun 2:00 0 S
+ Rule Louisville 1956 1960 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
+ -6:00 US C%sT 1921
+ -6:00 Louisville C%sT 1942
+@@ -1128,7 +1151,7 @@
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+ Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Detroit -5:32:11 - LMT 1905
+ -6:00 - CST 1915 May 15 2:00
+ -5:00 - EST 1942
+@@ -1145,7 +1168,7 @@
+ Rule Menominee 1946 only - Sep lastSun 2:00 0 S
+ Rule Menominee 1966 only - Apr lastSun 2:00 1:00 D
+ Rule Menominee 1966 only - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
+ -6:00 US C%sT 1946
+ -6:00 Menominee C%sT 1969 Apr 27 2:00
+@@ -1379,7 +1402,7 @@
+ Rule StJohns 2007 2010 - Nov Sun>=1 0:01 0 S
+ #
+ # St John's has an apostrophe, but Posix file names can't have apostrophes.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/St_Johns -3:30:52 - LMT 1884
+ -3:30:52 StJohns N%sT 1918
+ -3:30:52 Canada N%sT 1919
+@@ -1392,7 +1415,7 @@
+ # most of east Labrador
+
+ # The name 'Happy Valley-Goose Bay' is too long; use 'Goose Bay'.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
+ -3:30:52 - NST 1918
+ -3:30:52 Canada N%sT 1919
+@@ -1466,7 +1489,7 @@
+ Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
+ Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
+ Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
+ -4:00 Halifax A%sT 1918
+ -4:00 Canada A%sT 1919
+@@ -1504,7 +1527,7 @@
+ Rule Moncton 1957 1972 - Oct lastSun 2:00 0 S
+ Rule Moncton 1993 2006 - Apr Sun>=1 0:01 1:00 D
+ Rule Moncton 1993 2006 - Oct lastSun 0:01 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
+ -5:00 - EST 1902 Jun 15
+ -4:00 Canada A%sT 1933
+@@ -1533,7 +1556,7 @@
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Blanc-Sablon -3:48:28 - LMT 1884
+ -4:00 Canada A%sT 1970
+ -4:00 - AST
+@@ -1701,19 +1724,10 @@
+ # was meant.
+ Rule Toronto 1922 1926 - Sep Sun>=15 2:00 0 S
+ Rule Toronto 1924 1927 - May Sun>=1 2:00 1:00 D
+-# The 1927-to-1939 rules can be expressed more simply as
+-# Rule Toronto 1927 1937 - Sep Sun>=25 2:00 0 S
+-# Rule Toronto 1928 1937 - Apr Sun>=25 2:00 1:00 D
+-# Rule Toronto 1938 1940 - Apr lastSun 2:00 1:00 D
+-# Rule Toronto 1938 1939 - Sep lastSun 2:00 0 S
+-# The rules below avoid use of Sun>=25
+-# (which pre-2004 versions of zic cannot handle).
+-Rule Toronto 1927 1932 - Sep lastSun 2:00 0 S
+-Rule Toronto 1928 1931 - Apr lastSun 2:00 1:00 D
+-Rule Toronto 1932 only - May 1 2:00 1:00 D
+-Rule Toronto 1933 1940 - Apr lastSun 2:00 1:00 D
+-Rule Toronto 1933 only - Oct 1 2:00 0 S
+-Rule Toronto 1934 1939 - Sep lastSun 2:00 0 S
++Rule Toronto 1927 1937 - Sep Sun>=25 2:00 0 S
++Rule Toronto 1928 1937 - Apr Sun>=25 2:00 1:00 D
++Rule Toronto 1938 1940 - Apr lastSun 2:00 1:00 D
++Rule Toronto 1938 1939 - Sep lastSun 2:00 0 S
+ Rule Toronto 1945 1946 - Sep lastSun 2:00 0 S
+ Rule Toronto 1946 only - Apr lastSun 2:00 1:00 D
+ Rule Toronto 1947 1949 - Apr lastSun 0:00 1:00 D
+@@ -1746,7 +1760,7 @@
+ # War,... [t]he cities agreed to implement DST during the summer
+ # months for the remainder of the war years.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Toronto -5:17:32 - LMT 1895
+ -5:00 Canada E%sT 1919
+ -5:00 Toronto E%sT 1942 Feb 9 2:00s
+@@ -1821,7 +1835,7 @@
+ Rule Winn 1966 1986 - Apr lastSun 2:00s 1:00 D
+ Rule Winn 1966 2005 - Oct lastSun 2:00s 0 S
+ Rule Winn 1987 2005 - Apr Sun>=1 2:00s 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Winnipeg -6:28:36 - LMT 1887 Jul 16
+ -6:00 Winn C%sT 2006
+ -6:00 Canada C%sT
+@@ -1843,6 +1857,13 @@
+ # Willett (1914-03) notes that DST "has been in operation ... in the
+ # City of Moose Jaw, Saskatchewan, for one year."
+
++# From Paul Eggert (2019-04-26):
++# Chris Pearce's book "The Great Daylight Saving Time Controversy" (2017)
++# says that Regina observed DST in 1914-1917. No dates and times,
++# unfortunately. It also says that in 1914 Saskatoon observed DST
++# from 1 June to 6 July, and that DST was also tried out in Davidson,
++# Melfort, and Prince Albert.
++
+ # From Paul Eggert (2006-03-22):
+ # Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
+ # Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
+@@ -1905,7 +1926,7 @@
+ Rule Swift 1959 1961 - Apr lastSun 2:00 1:00 D
+ Rule Swift 1959 only - Oct lastSun 2:00 0 S
+ Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Regina -6:58:36 - LMT 1905 Sep
+ -7:00 Regina M%sT 1960 Apr lastSun 2:00
+ -6:00 - CST
+@@ -1936,7 +1957,7 @@
+ Rule Edm 1969 only - Oct lastSun 2:00 0 S
+ Rule Edm 1972 1986 - Apr lastSun 2:00 1:00 D
+ Rule Edm 1972 2006 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Edmonton -7:33:52 - LMT 1906 Sep
+ -7:00 Edm M%sT 1987
+ -7:00 Canada M%sT
+@@ -2029,7 +2050,7 @@
+ Rule Vanc 1946 only - Oct 13 2:00 0 S
+ Rule Vanc 1947 1961 - Sep lastSun 2:00 0 S
+ Rule Vanc 1962 2006 - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Vancouver -8:12:28 - LMT 1884
+ -8:00 Vanc P%sT 1987
+ -8:00 Canada P%sT
+@@ -2100,7 +2121,7 @@
+ # varying the manner of reckoning standard time.
+ #
+ # * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
+-# http://? - no online source found
++# [no online source found]
+ #
+ # * Standard Time and Time Zones in Canada; Thomson, Malcolm M.; JRASC,
+ # Vol. 64, pp.129-162; June 1970; SAO/NASA Astrophysics Data System (ADS)
+@@ -2133,7 +2154,7 @@
+ # to say eight hours behind Greenwich Time.
+ #
+ # * O.I.C. 1980/02 INTERPRETATION ACT
+-# http://? - no online source found
++# [no online source found]
+ #
+ # * Yukon Daylight Saving Time, YOIC 1987/56
+ # https://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
+@@ -2349,7 +2370,7 @@
+ Rule NT_YK 1980 1986 - Apr lastSun 2:00 1:00 D
+ Rule NT_YK 1980 2006 - Oct lastSun 2:00 0 S
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+ Zone America/Pangnirtung 0 - -00 1921 # trading post est.
+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+@@ -2496,7 +2517,7 @@
+
+ # From Paul Eggert (2001-03-03):
+ #
+-# http://www.latimes.com/news/nation/20010303/t000018766.html
++# https://www.latimes.com/archives/la-xpm-2001-mar-03-mn-32561-story.html
+ # James F. Smith writes in today's LA Times
+ # * Sonora will continue to observe standard time.
+ # * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that
+@@ -2623,7 +2644,7 @@
+ Rule Mexico 2001 only - Sep lastSun 2:00 0 S
+ Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
+ Rule Mexico 2002 max - Oct lastSun 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ # Quintana Roo; represented by Cancún
+ Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
+ -6:00 - CST 1981 Dec 23
+@@ -2816,7 +2837,7 @@
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Bahamas 1964 1975 - Oct lastSun 2:00 0 S
+ Rule Bahamas 1964 1975 - Apr lastSun 2:00 1:00 D
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Nassau -5:09:30 - LMT 1912 Mar 2
+ -5:00 Bahamas E%sT 1976
+ -5:00 US E%sT
+@@ -2831,7 +2852,7 @@
+ Rule Barb 1978 1980 - Apr Sun>=15 2:00 1:00 D
+ Rule Barb 1979 only - Sep 30 2:00 0 S
+ Rule Barb 1980 only - Sep 25 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
+ -3:58:29 - BMT 1932 # Bridgetown Mean Time
+ -4:00 Barb A%sT
+@@ -2845,7 +2866,7 @@
+ Rule Belize 1974 only - Feb 9 0:00 0 CST
+ Rule Belize 1982 only - Dec 18 0:00 1:00 CDT
+ Rule Belize 1983 only - Feb 12 0:00 0 CST
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Belize -5:52:48 - LMT 1912 Apr
+ -6:00 Belize %s
+
+@@ -2862,7 +2883,7 @@
+ # Friday, the same thing will happen in Bermuda.
+ # http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton
+ -4:00 - AST 1974 Apr 28 2:00
+ -4:00 Canada A%sT 1976
+@@ -2884,7 +2905,7 @@
+ Rule CR 1991 only - Jul 1 0:00 0 S
+ Rule CR 1992 only - Mar 15 0:00 0 S
+ # There are too many San Josés elsewhere, so we'll use 'Costa Rica'.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
+ -5:36:13 - SJMT 1921 Jan 15 # San José Mean Time
+ -6:00 CR C%sT
+@@ -3090,7 +3111,7 @@
+ Rule Cuba 2012 max - Nov Sun>=1 0:00s 0 S
+ Rule Cuba 2013 max - Mar Sun>=8 0:00s 1:00 D
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Havana -5:29:28 - LMT 1890
+ -5:29:36 - HMT 1925 Jul 19 12:00 # Havana MT
+ -5:00 Cuba C%sT
+@@ -3125,7 +3146,7 @@
+ Rule DR 1970 only - Feb 21 0:00 0 EST
+ Rule DR 1971 only - Jan 20 0:00 0 EST
+ Rule DR 1972 1974 - Jan 21 0:00 0 EST
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Santo_Domingo -4:39:36 - LMT 1890
+ -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
+ -5:00 DR %s 1974 Oct 27
+@@ -3140,7 +3161,7 @@
+ Rule Salv 1987 1988 - Sep lastSun 0:00 0 S
+ # There are too many San Salvadors elsewhere, so use America/El_Salvador
+ # instead of America/San_Salvador.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
+ -6:00 Salv C%sT
+
+@@ -3173,7 +3194,7 @@
+ Rule Guat 1991 only - Sep 7 0:00 0 S
+ Rule Guat 2006 only - Apr 30 0:00 1:00 D
+ Rule Guat 2006 only - Oct 1 0:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
+ -6:00 Guat C%sT
+
+@@ -3259,7 +3280,7 @@
+ Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ Rule Haiti 2017 max - Mar Sun>=8 2:00 1:00 D
+ Rule Haiti 2017 max - Nov Sun>=1 2:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+ -5:00 Haiti E%sT
+@@ -3298,7 +3319,7 @@
+ Rule Hond 1987 1988 - Sep lastSun 0:00 0 S
+ Rule Hond 2006 only - May Sun>=1 0:00 1:00 D
+ Rule Hond 2006 only - Aug Mon>=1 0:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Tegucigalpa -5:48:52 - LMT 1921 Apr
+ -6:00 Hond C%sT
+ #
+@@ -3319,7 +3340,7 @@
+ # Neita L. The politician in all of us. Jamaica Observer 2014-09-20
+ # http://www.jamaicaobserver.com/columns/The-politician-in-all-of-us_17573647
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Jamaica -5:07:10 - LMT 1890 # Kingston
+ -5:07:10 - KMT 1912 Feb # Kingston Mean Time
+ -5:00 - EST 1974
+@@ -3327,7 +3348,7 @@
+ -5:00 - EST
+
+ # Martinique
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
+ -4:04:20 - FFMT 1911 May # Fort-de-France MT
+ -4:00 - AST 1980 Apr 6
+@@ -3391,7 +3412,7 @@
+ Rule Nic 2005 only - Oct Sun>=1 0:00 0 S
+ Rule Nic 2006 only - Apr 30 2:00 1:00 D
+ Rule Nic 2006 only - Oct Sun>=1 1:00 0 S
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Managua -5:45:08 - LMT 1890
+ -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
+ -6:00 - CST 1973 May
+@@ -3403,7 +3424,7 @@
+ -6:00 Nic C%sT
+
+ # Panama
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Panama -5:18:08 - LMT 1890
+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
+@@ -3411,7 +3432,7 @@
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
+ -4:00 - AST 1942 May 3
+ -4:00 US A%sT 1946
+@@ -3423,7 +3444,7 @@
+
+ # St Pierre and Miquelon
+ # There are too many St Pierres elsewhere, so we'll use 'Miquelon'.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
+ -4:00 - AST 1980 May
+ -3:00 - -03 1987
+@@ -3469,7 +3490,7 @@
+ # by March 2018 for TCI. Magnetic Media. 2017-08-25.
+ # http://magneticmediatv.com/2017/08/time-change-back-by-march-2018-for-tci/
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Grand_Turk -4:44:32 - LMT 1890
+ -5:07:10 - KMT 1912 Feb # Kingston Mean Time
+ -5:00 - EST 1979
+--- contrib/tzdata/pacificnew.orig
++++ contrib/tzdata/pacificnew
+@@ -21,7 +21,7 @@
+ ## Rule Twilite XXXX max uspres Nov Sun>=7 2:00 0 S
+ ## Rule Twilite XXXX max nonpres Oct lastSun 2:00 0 S
+
+-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++# Zone NAME STDOFF RULES/SAVE FORMAT [UNTIL]
+ ## Zone America/Los_Angeles-PET -8:00 US P%sT XXXX
+ ## -8:00 Twilite P%sT
+
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -396,7 +396,7 @@
+ # plus is that this silences a zic complaint that there's no POSIX TZ
+ # setting for timestamps past 2038.
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ #
+ # Buenos Aires (BA), Capital Federal (CF),
+ Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
+@@ -577,7 +577,7 @@
+ Link America/Curacao America/Aruba
+
+ # Bolivia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/La_Paz -4:32:36 - LMT 1890
+ -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
+ -4:32:36 1:00 BST 1932 Mar 21 # Bolivia ST
+@@ -920,14 +920,13 @@
+ # removed Tocantins.
+ Rule Brazil 2013 2014 - Feb Sun>=15 0:00 0 -
+ Rule Brazil 2015 only - Feb Sun>=22 0:00 0 -
+-Rule Brazil 2016 2022 - Feb Sun>=15 0:00 0 -
++Rule Brazil 2016 2019 - Feb Sun>=15 0:00 0 -
+ # From Steffen Thorsen (2017-12-18):
+ # According to many media sources, next year's DST start in Brazil will move to
+-# the first Sunday of November, and it will stay like that for the years after.
++# the first Sunday of November
+ # ... https://www.timeanddate.com/news/time/brazil-delays-dst-2018.html
+ # From Steffen Thorsen (2017-12-20):
+ # http://www.planalto.gov.br/ccivil_03/_ato2015-2018/2017/decreto/D9242.htm
+-#
+ # From Fábio Gomes (2018-10-04):
+ # The Brazilian president just announced a new change on this year DST.
+ # It was scheduled to start on November 4th and it was changed to November 18th.
+@@ -935,22 +934,21 @@
+ # The Brazilian government just announced that the change in DST was
+ # canceled.... Maybe the president Michel Temer also woke up one hour
+ # earlier today. :)
+-Rule Brazil 2018 max - Nov Sun>=1 0:00 1:00 -
+-Rule Brazil 2023 only - Feb Sun>=22 0:00 0 -
+-Rule Brazil 2024 2025 - Feb Sun>=15 0:00 0 -
+-Rule Brazil 2026 only - Feb Sun>=22 0:00 0 -
+-Rule Brazil 2027 2033 - Feb Sun>=15 0:00 0 -
+-Rule Brazil 2034 only - Feb Sun>=22 0:00 0 -
+-Rule Brazil 2035 2036 - Feb Sun>=15 0:00 0 -
+-Rule Brazil 2037 only - Feb Sun>=22 0:00 0 -
+-# From Arthur David Olson (2008-09-29):
+-# The next is wrong in some years but is better than nothing.
+-Rule Brazil 2038 max - Feb Sun>=15 0:00 0 -
+-
+-# The latest ruleset listed above says that the following states observe DST:
++Rule Brazil 2018 only - Nov Sun>=1 0:00 1:00 -
++# The last ruleset listed above says that the following states observed DST:
+ # DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
++#
++# From Steffen Thorsen (2019-04-05):
++# According to multiple sources the Brazilian president wants to get rid of DST.
++# https://gmconline.com.br/noticias/politica/bolsonaro-horario-de-verao-deve-acabar-este-ano
++# https://g1.globo.com/economia/noticia/2019/04/05/governo-anuncia-fim-do-horario-de-verao.ghtml
++# From Marcus Diniz (2019-04-25):
++# Brazil no longer has DST changes - decree signed today
++# https://g1.globo.com/politica/noticia/2019/04/25/bolsonaro-assina-decreto-que-acaba-com-o-horario-de-verao.ghtml
++# From Daniel Soares de Oliveira (2019-04-26):
++# http://www.planalto.gov.br/ccivil_03/_Ato2019-2022/2019/Decreto/D9772.htm
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ #
+ # Fernando de Noronha (administratively part of PE)
+ Zone America/Noronha -2:09:40 - LMT 1914
+@@ -1258,6 +1256,8 @@
+ # https://twitter.com/MinEnergia/status/1029009354001973248
+ # "We will keep the new time policy unchanged for at least the next 4 years."
+ # So we extend the new rules on Saturdays at 24:00 mainland time indefinitely.
++# From Juan Correa (2019-02-04):
++# http://www.diariooficial.interior.gob.cl/publicaciones/2018/11/23/42212/01/1498738.pdf
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Chile 1927 1931 - Sep 1 0:00 1:00 -
+@@ -1298,7 +1298,7 @@
+ Rule Chile 2019 max - Sep Sun>=2 4:00u 1:00 -
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Santiago -4:42:46 - LMT 1890
+ -4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
+ -5:00 - -05 1916 Jul 1
+@@ -1347,7 +1347,7 @@
+ # Palmer has followed Chile. Prior to that, before the Falklands War,
+ # Palmer used to be supplied from Argentina.
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Antarctica/Palmer 0 - -00 1965
+ -4:00 Arg -04/-03 1969 Oct 5
+ -3:00 Arg -03/-02 1982 May
+@@ -1362,7 +1362,7 @@
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule CO 1992 only - May 3 0:00 1:00 -
+ Rule CO 1993 only - Apr 4 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Bogota -4:56:16 - LMT 1884 Mar 13
+ -4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time
+ -5:00 CO -05/-04
+@@ -1387,7 +1387,7 @@
+ # Netherlands as Kingdom Islands. This won't affect their time zones
+ # though, as far as we know.
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
+ -4:30 - -0430 1965
+ -4:00 - AST
+@@ -1423,7 +1423,7 @@
+ Rule Ecuador 1992 only - Nov 28 0:00 1:00 -
+ Rule Ecuador 1993 only - Feb 5 0:00 0 -
+ #
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Guayaquil -5:19:20 - LMT 1890
+ -5:14:00 - QMT 1931 # Quito Mean Time
+ -5:00 Ecuador -05/-04
+@@ -1526,7 +1526,7 @@
+ Rule Falk 1986 2000 - Apr Sun>=16 0:00 0 -
+ Rule Falk 2001 2010 - Apr Sun>=15 2:00 0 -
+ Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Stanley -3:51:24 - LMT 1890
+ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
+ -4:00 Falk -04/-03 1983 May
+@@ -1535,13 +1535,13 @@
+ -3:00 - -03
+
+ # French Guiana
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Cayenne -3:29:20 - LMT 1911 Jul
+ -4:00 - -04 1967 Oct
+ -3:00 - -03
+
+ # Guyana
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
+ -3:45 - -0345 1975 Jul 31
+ -3:00 - -03 1991
+@@ -1635,7 +1635,7 @@
+ # http://www.presidencia.gov.py/archivos/documentos/DECRETO1264_ey9r8zai.pdf
+ Rule Para 2013 max - Mar Sun>=22 0:00 0 -
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Asuncion -3:50:40 - LMT 1890
+ -3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time
+ -4:00 - -04 1972 Oct
+@@ -1664,13 +1664,13 @@
+ # IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
+ Rule Peru 1994 only - Jan 1 0:00 1:00 -
+ Rule Peru 1994 only - Apr 1 0:00 0 -
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Lima -5:08:12 - LMT 1890
+ -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
+ -5:00 Peru -05/-04
+
+ # South Georgia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+ -2:00 - -02
+
+@@ -1678,7 +1678,7 @@
+ # uninhabited; scientific personnel have wintered
+
+ # Suriname
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Paramaribo -3:40:40 - LMT 1911
+ -3:40:52 - PMT 1935 # Paramaribo Mean Time
+ -3:40:36 - PMT 1945 Oct # The capital moved?
+@@ -1686,7 +1686,7 @@
+ -3:00 - -03
+
+ # Trinidad and Tobago
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2
+ -4:00 - AST
+
+@@ -1957,7 +1957,7 @@
+ # ... published in the official Gazette [2016-04-18], here:
+ # http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
+
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++# Zone NAME STDOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+ -4:30 - -0430 1965 Jan 1 0:00
+--- contrib/tzdata/systemv.orig
++++ contrib/tzdata/systemv
+@@ -23,7 +23,7 @@
+ Rule SystemV 1976 max - Apr lastSun 2:00 1:00 D
+ Rule SystemV 1976 max - Oct lastSun 2:00 0 S
+
+-# Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++# Zone NAME STDOFF RULES/SAVE FORMAT [UNTIL]
+ ## Zone SystemV/AST4ADT -4:00 SystemV A%sT
+ ## Zone SystemV/EST5EDT -5:00 SystemV E%sT
+ ## Zone SystemV/CST6CDT -6:00 SystemV C%sT
+--- contrib/tzdata/theory.html.orig
++++ contrib/tzdata/theory.html
+@@ -88,7 +88,7 @@
+ standard for UNIX-like systems.
+ As of this writing, the current edition of POSIX is: The Open
++href="https://pubs.opengroup.org/onlinepubs/9699919799/"> The Open
+ Group Base Specifications Issue 7, IEEE Std 1003.1-2017, 2018
+ Edition.
+ Because the database's scope encompasses real-world changes to civil
+@@ -186,7 +186,7 @@
+ href="https://en.wikipedia.org/wiki/ASCII">ASCII letters,
+ '.
', '-
' and '_
'.
+ Do not use digits, as that might create an ambiguity with POSIX
++ href="https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03">POSIX
+ TZ
strings.
+ A file name component must not exceed 14 characters or start with
+ '-
'.
+@@ -301,7 +301,7 @@
+
+
+ Guidelines have evolved with time, and names following old versions of
+-this guideline might not follow the current version. When guidelines
++these guidelines might not follow the current version. When guidelines
+ have changed, old names continue to be supported. Guideline changes
+ have included the following:
+
+@@ -330,7 +330,7 @@
+
+
+
+-Older versions of this guideline said that
++Older versions of these guidelines said that
+ there should typically be at least one name for each ISO
+@@ -379,8 +379,8 @@
+ special meaning to the
+ UNIX shell
+ and cause commands like
+- 'set
+- `date`
'
++ 'set
++ `date`
'
+ to have unexpected effects.
+ Previous editions of this guideline required upper-case letters, but the
+ Congressman who introduced
+@@ -955,7 +955,7 @@
+
+
+ In POSIX, there is no tamper-proof way for a process to learn the
+- system's best idea of local wall clock.
++ system's best idea of local (wall clock) time.
+ This is important for applications that an administrator wants
+ used only at certain times – without regard to whether the
+ user has fiddled the
+@@ -1052,14 +1052,14 @@
+
+
+ A function tzsetwall
has been added to arrange for the
+- system's best approximation to local wall clock time to be delivered
++ system's best approximation to local (wall clock) time to be delivered
+ by subsequent calls to localtime
.
+- Source code for portable applications that "must" run on local wall
+- clock time should call tzsetwall
;
++ Source code for portable applications that "must" run on local
++ time should call tzsetwall
;
+ if such code is moved to "old" systems that do not
+ provide tzsetwall
, you will not be able to generate an
+ executable program.
+- (These functions also arrange for local wall clock time to
++ (These functions also arrange for local time to
+ be used if tzset
is called – directly or
+ indirectly – and there is no TZ
environment
+ variable; portable applications should not, however, rely on this
+@@ -1354,11 +1354,11 @@
+ Michael Allison and Robert Schmunk,
+ "Technical
+ Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
+- (2015-06-30).
++ (2018-12-13).
+
+
+ Jia-Rui Chong,
+- "Workdays
++ "Workdays
+ Fit for a Martian", Los Angeles Times
+ (2004-01-14), pp A1, A20–A21.
+
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -1 +1 @@
+-2019a
++2019b
+--- contrib/tzdata/zishrink.awk.orig
++++ contrib/tzdata/zishrink.awk
+@@ -20,7 +20,8 @@
+ # Return a shortened rule name representing NAME,
+ # and record this relationship to the hash table.
+
+-function gen_rule_name(name, n)
++function gen_rule_name(name, \
++ n)
+ {
+ # Use a simple memonic: the first two letters.
+ n = substr(name, 1, 2)
+@@ -29,7 +30,8 @@
+ return n
+ }
+
+-function prehash_rule_names(name)
++function prehash_rule_names( \
++ name)
+ {
+ # Rule names are not part of the tzdb API, so substitute shorter
+ # ones. Shortening them consistently from one release to the next
+@@ -148,9 +150,11 @@
+ }
+ }
+
+-# Process an input line and save it for later output.
++# Process the input line LINE and save it for later output.
+
+-function process_input_line(line, field, end, i, n, startdef)
++function process_input_line(line, \
++ field, end, i, n, startdef, \
++ linkline, ruleline, zoneline)
+ {
+ # Remove comments, normalize spaces, and append a space to each line.
+ sub(/#.*/, "", line)
+@@ -157,11 +161,10 @@
+ line = line " "
+ gsub(/[\t ]+/, " ", line)
+
+- # Abbreviate keywords. Do not abbreviate "Link" to just "L",
+- # as pre-2017c zic erroneously diagnoses "Li" as ambiguous.
+- sub(/^Link /, "Li ", line)
+- sub(/^Rule /, "R ", line)
+- sub(/^Zone /, "Z ", line)
++ # Abbreviate keywords and determine line type.
++ linkline = sub(/^Link /, "L ", line)
++ ruleline = sub(/^Rule /, "R ", line)
++ zoneline = sub(/^Zone /, "Z ", line)
+
+ # SystemV rules are not needed.
+ if (line ~ /^R SystemV /) return
+@@ -169,7 +172,7 @@
+ # Replace FooAsia rules with the same rules without "Asia", as they
+ # are duplicates.
+ if (match(line, /[^ ]Asia /)) {
+- if (line ~ /^R /) return
++ if (ruleline) return
+ line = substr(line, 1, RSTART) substr(line, RSTART + 5)
+ }
+
+@@ -179,21 +182,19 @@
+ while (match(line, /:0[^:]/))
+ line = substr(line, 1, RSTART - 1) substr(line, RSTART + 2)
+
+- # Abbreviate weekday names. Do not abbreviate "Sun" and "Sat", as
+- # pre-2017c zic erroneously diagnoses "Su" and "Sa" as ambiguous.
++ # Abbreviate weekday names.
+ while (match(line, / (last)?(Mon|Wed|Fri)[ <>]/)) {
+ end = RSTART + RLENGTH
+ line = substr(line, 1, end - 4) substr(line, end - 1)
+ }
+- while (match(line, / (last)?(Tue|Thu)[ <>]/)) {
++ while (match(line, / (last)?(Sun|Tue|Thu|Sat)[ <>]/)) {
+ end = RSTART + RLENGTH
+ line = substr(line, 1, end - 3) substr(line, end - 1)
+ }
+
+- # Abbreviate "max", "only" and month names.
+- # Do not abbreviate "min", as pre-2017c zic erroneously diagnoses "mi"
+- # as ambiguous.
++ # Abbreviate "max", "min", "only" and month names.
+ gsub(/ max /, " ma ", line)
++ gsub(/ min /, " mi ", line)
+ gsub(/ only /, " o ", line)
+ gsub(/ Jan /, " Ja ", line)
+ gsub(/ Feb /, " F ", line)
+@@ -221,7 +222,7 @@
+ n = split(line, field)
+
+ # Abbreviate rule names.
+- i = field[1] == "Z" ? 4 : field[1] == "Li" ? 0 : 2
++ i = zoneline ? 4 : linkline ? 0 : 2
+ if (i && field[i] ~ /^[^-+0-9]/) {
+ if (!rule[field[i]])
+ rule[field[i]] = gen_rule_name(field[i])
+@@ -231,11 +232,11 @@
+ # If this zone supersedes an earlier one, delete the earlier one
+ # from the saved output lines.
+ startdef = ""
+- if (field[1] == "Z")
++ if (zoneline)
+ zonename = startdef = field[2]
+- else if (field[1] == "Li")
++ else if (linkline)
+ zonename = startdef = field[3]
+- else if (field[1] == "R")
++ else if (ruleline)
+ zonename = ""
+ if (startdef) {
+ i = zonedef[startdef]
+@@ -254,7 +255,8 @@
+ output_line[nout++] = line
+ }
+
+-function output_saved_lines(i)
++function output_saved_lines( \
++ i)
+ {
+ for (i = 0; i < nout; i++)
+ if (output_line[i])
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -332,7 +332,10 @@
+ RS +4450+02030 Europe/Belgrade
+ RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
+ RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
+-RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++# The obsolescent zone.tab format cannot represent Europe/Simferopol well.
++# Put it in RU section and list as UA. See "territorial claims" above.
++# Programs should use zone1970.tab instead; see above.
++UA +4457+03406 Europe/Simferopol MSK+00 - Crimea
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
+ RU +4844+04425 Europe/Volgograd MSK+01 - Volgograd
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -290,7 +290,8 @@
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+ RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
+ RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
+-RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++# Mention RU and UA alphabetically. See "territorial claims" above.
++RU,UA +4457+03406 Europe/Simferopol MSK+00 - Crimea
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
+ RU +4844+04425 Europe/Volgograd MSK+01 - Volgograd
+--- contrib/tzdata/zoneinfo2tdf.pl.orig
++++ contrib/tzdata/zoneinfo2tdf.pl
+@@ -28,7 +28,7 @@
+
+ $contZone = '';
+ if ($type eq 'zone') {
+- # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ # Zone NAME STDOFF RULES/SAVE FORMAT [UNTIL]
+ my $nfields = @fields;
+ $nfields >= 5 or warn "bad zone line";
+ if ($nfields > 6) {
Property changes on: head/share/security/patches/EN-19:12/tzdata-2019b.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/EN-19:12/tzdata-2019b.patch.asc
===================================================================
--- head/share/security/patches/EN-19:12/tzdata-2019b.patch.asc (nonexistent)
+++ head/share/security/patches/EN-19:12/tzdata-2019b.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9XxfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cJuRg//X8SzMWUt3ZqAQEVqRxYPouBZFuL9avfKo6vTjJZ27nKNHjtmeoElhKw7
+9bffgA9nbeWnzmo9EtOmVLGVmRYe/doqtZN/2tc8w9W1RmoUYd/MsqCg0qt9Y14v
+8wUPtfWlz5BRkWHCAyamEz/sK7LRvYfniS+vVX3bo/Rw7l+txp+fhER9zBloTuW5
+/4b1pjIPmWJMPAORCUeUc/4ZOBiI3MDb5HYQgoOo3yWGn6SMs7RHtLZBbaqy8LVW
+KZyAjBn3TNoqxxLZZ0VfomFzrnc45Sm2PxoqSwGbP1hsom4hKfvdFpWybYgGqnUx
+JRjvA8rAyHvr64NhoVavEKg514HYVZZT9qPe3hFvTD7oCvtuRTLYF0N7huF9R2h6
+E51iCAPlPKelyxv5FUhyD6FAKtZWkBhda52ZlFZSMmLxShAvbGibwkKVj49mcKBT
+yBJ9+Ik3W3FaWQmgZ+G73imZlXwV7DHR4UDuG/DWuT77wPO9nk5M2SQxe7tsO/qo
+WeT5P8rGk/ZJxTBrJR6JBa17JpsuHS3spMx8I5lp4tqZWP089bjyzfcdKUYVqju0
+sIonbeuzzvwMvrRoJ7a/j9cP44P7Bet11xtcoucJkB6WxLiDX++FyWdBzUaKnG3Z
+d27co2rLq/xoHGPFYkj4UhBVyRzz5E1rY00BrVmN9FrgFZdG/fw=
+=n8zD
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/EN-19:12/tzdata-2019b.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:09/iconv.patch
===================================================================
--- head/share/security/patches/SA-19:09/iconv.patch (nonexistent)
+++ head/share/security/patches/SA-19:09/iconv.patch (revision 53209)
@@ -0,0 +1,11 @@
+--- lib/libc/iconv/citrus_none.c.orig
++++ lib/libc/iconv/citrus_none.c
+@@ -144,7 +144,7 @@
+ s[2] = (char)(idx >> 16);
+ *nresult = 3;
+ } else {
+- if (n < 3) {
++ if (n < 4) {
+ *nresult = (size_t)-1;
+ return (E2BIG);
+ }
Property changes on: head/share/security/patches/SA-19:09/iconv.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:09/iconv.patch.asc
===================================================================
--- head/share/security/patches/SA-19:09/iconv.patch.asc (nonexistent)
+++ head/share/security/patches/SA-19:09/iconv.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9YlfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cJR6xAAmPrRDXyil1P/HfAKIsjxoUx1C+fg99S2IEebgZYleUOr16m6TWmp8miT
+5yEgGFKEc1WF9ieryIDITgvDrh44wSmI2r4V1WNocHB89x+IAVZgbmNXyTiTcbZA
+G1QDwH97oNAB38+L1Ev0qDjgwX+mhnLpIV846NDNUiXBb4iTRjOejCTYyfd+t6Hr
+fHsGN5WllKYegx7j8taEFaix4SzgZmwOxEnJpx/WG9cfZDkKBsRC+Vg7haIdFsNY
+fHBPeLWpokYyZu8i7m2Hnw36z+1FQTFXCF7ZqGL5nLsYghkSXFYN9u/w2MJKgbkB
+uMWC1DxE+3UmdaStx+2gZc9t/pM/AyU/eCeV+T3guCj8pHb8A125HaGWCgYVVVcd
+4rvhFUqBERqLKk+Kp8SZO5Iu8zdhawk9fAaPX9zriLKoDukfJYjWcMLKlq2lTFjS
+/39ULR+iIcVAkNyqIkcw8FT2+s+iVjZZqTioQabDQPAFeGpK0VPIg/R6qGG1qNu0
+itOTwi9eaea7Bp3sGgKcoQZrwkPI1AD3DHHeVqqvEyPNfbyZ3JjCtO7XctTRAlB4
+SXQfq1mZ93z/FHwLAK/iRBhKcqoJtFF8a9qa0AWX76RoNDkywhxyDk65Zomw+ffk
+kUHguRj433i4db/yBKcqfOVG9zU5tUgsMAQMwBTHBXeW/5BHnQ4=
+=wCOy
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/SA-19:09/iconv.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:10/ufs.11.patch
===================================================================
--- head/share/security/patches/SA-19:10/ufs.11.patch (nonexistent)
+++ head/share/security/patches/SA-19:10/ufs.11.patch (revision 53209)
@@ -0,0 +1,311 @@
+--- sbin/fsck_ffs/dir.c.orig
++++ sbin/fsck_ffs/dir.c
+@@ -145,6 +145,7 @@
+ struct direct *dp, *ndp;
+ struct bufarea *bp;
+ long size, blksiz, fix, dploc;
++ int dc;
+
+ blksiz = idesc->id_numfrags * sblock.fs_fsize;
+ bp = getdirblk(idesc->id_blkno, blksiz);
+@@ -151,8 +152,16 @@
+ if (idesc->id_loc % DIRBLKSIZ == 0 && idesc->id_filesize > 0 &&
+ idesc->id_loc < blksiz) {
+ dp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
+- if (dircheck(idesc, dp))
++ if ((dc = dircheck(idesc, dp)) > 0) {
++ if (dc == 2) {
++ /*
++ * dircheck() cleared unused directory space.
++ * Mark the buffer as dirty to write it out.
++ */
++ dirty(bp);
++ }
+ goto dpok;
++ }
+ if (idesc->id_fix == IGNORE)
+ return (0);
+ fix = dofix(idesc, "DIRECTORY CORRUPTED");
+@@ -179,19 +188,26 @@
+ if ((idesc->id_loc % DIRBLKSIZ) == 0)
+ return (dp);
+ ndp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
+- if (idesc->id_loc < blksiz && idesc->id_filesize > 0 &&
+- dircheck(idesc, ndp) == 0) {
+- size = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
+- idesc->id_loc += size;
+- idesc->id_filesize -= size;
+- if (idesc->id_fix == IGNORE)
+- return (0);
+- fix = dofix(idesc, "DIRECTORY CORRUPTED");
+- bp = getdirblk(idesc->id_blkno, blksiz);
+- dp = (struct direct *)(bp->b_un.b_buf + dploc);
+- dp->d_reclen += size;
+- if (fix)
++ if (idesc->id_loc < blksiz && idesc->id_filesize > 0) {
++ if ((dc = dircheck(idesc, ndp)) == 0) {
++ size = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
++ idesc->id_loc += size;
++ idesc->id_filesize -= size;
++ if (idesc->id_fix == IGNORE)
++ return (0);
++ fix = dofix(idesc, "DIRECTORY CORRUPTED");
++ bp = getdirblk(idesc->id_blkno, blksiz);
++ dp = (struct direct *)(bp->b_un.b_buf + dploc);
++ dp->d_reclen += size;
++ if (fix)
++ dirty(bp);
++ } else if (dc == 2) {
++ /*
++ * dircheck() cleared unused directory space.
++ * Mark the buffer as dirty to write it out.
++ */
+ dirty(bp);
++ }
+ }
+ return (dp);
+ }
+@@ -199,6 +215,11 @@
+ /*
+ * Verify that a directory entry is valid.
+ * This is a superset of the checks made in the kernel.
++ * Also optionally clears padding and unused directory space.
++ *
++ * Returns 0 if the entry is bad, 1 if the entry is good and no changes
++ * were made, and 2 if the entry is good but modified to clear out padding
++ * and unused space and needs to be written back to disk.
+ */
+ static int
+ dircheck(struct inodesc *idesc, struct direct *dp)
+@@ -207,15 +228,39 @@
+ char *cp;
+ u_char type;
+ u_int8_t namlen;
+- int spaceleft;
++ int spaceleft, modified, unused;
+
++ modified = 0;
+ spaceleft = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
+ if (dp->d_reclen == 0 ||
+ dp->d_reclen > spaceleft ||
+- (dp->d_reclen & 0x3) != 0)
++ (dp->d_reclen & (DIR_ROUNDUP - 1)) != 0)
+ goto bad;
+- if (dp->d_ino == 0)
+- return (1);
++ if (dp->d_ino == 0) {
++ /*
++ * Special case of an unused directory entry. Normally
++ * the kernel would coalesce unused space with the previous
++ * entry by extending its d_reclen, but there are situations
++ * (e.g. fsck) where that doesn't occur.
++ * If we're clearing out directory cruft (-z flag), then make
++ * sure this entry gets fully cleared as well.
++ */
++ if (zflag && fswritefd >= 0) {
++ if (dp->d_type != 0) {
++ dp->d_type = 0;
++ modified = 1;
++ }
++ if (dp->d_namlen != 0) {
++ dp->d_namlen = 0;
++ modified = 1;
++ }
++ if (dp->d_name[0] != '\0') {
++ dp->d_name[0] = '\0';
++ modified = 1;
++ }
++ }
++ goto good;
++ }
+ size = DIRSIZ(0, dp);
+ namlen = dp->d_namlen;
+ type = dp->d_type;
+@@ -229,7 +274,37 @@
+ goto bad;
+ if (*cp != '\0')
+ goto bad;
++
++good:
++ if (zflag && fswritefd >= 0) {
++ /*
++ * Clear unused directory entry space, including the d_name
++ * padding.
++ */
++ /* First figure the number of pad bytes. */
++ unused = roundup2(namlen + 1, DIR_ROUNDUP) - (namlen + 1);
++
++ /* Add in the free space to the end of the record. */
++ unused += dp->d_reclen - DIRSIZ(0, dp);
++
++ /*
++ * Now clear out the unused space, keeping track if we actually
++ * changed anything.
++ */
++ for (cp = &dp->d_name[namlen + 1]; unused > 0; unused--, cp++) {
++ if (*cp != '\0') {
++ *cp = '\0';
++ modified = 1;
++ }
++ }
++
++ if (modified) {
++ return 2;
++ }
++ }
++
+ return (1);
++
+ bad:
+ if (debug)
+ printf("Bad dir: ino %d reclen %d namlen %d type %d name %s\n",
+--- sbin/fsck_ffs/fsck.h.orig
++++ sbin/fsck_ffs/fsck.h
+@@ -313,6 +313,7 @@
+ extern int debug; /* output debugging info */
+ extern int Eflag; /* delete empty data blocks */
+ extern int Zflag; /* zero empty data blocks */
++extern int zflag; /* zero unused directory space */
+ extern int inoopt; /* trim out unused inodes */
+ extern char ckclean; /* only do work if not cleanly unmounted */
+ extern int cvtlevel; /* convert to newer file system format */
+--- sbin/fsck_ffs/fsck_ffs.8.orig
++++ sbin/fsck_ffs/fsck_ffs.8
+@@ -29,7 +29,7 @@
+ .\" @(#)fsck.8 8.4 (Berkeley) 5/9/95
+ .\" $FreeBSD$
+ .\"
+-.Dd January 13, 2018
++.Dd May 3, 2019
+ .Dt FSCK_FFS 8
+ .Os
+ .Sh NAME
+@@ -38,7 +38,7 @@
+ .Nd file system consistency check and interactive repair
+ .Sh SYNOPSIS
+ .Nm
+-.Op Fl BCdEFfnpRrSyZ
++.Op Fl BCdEFfnpRrSyZz
+ .Op Fl b Ar block
+ .Op Fl c Ar level
+ .Op Fl m Ar mode
+@@ -301,6 +301,9 @@
+ and
+ .Fl Z
+ are specified, blocks are first zeroed and then erased.
++.It Fl z
++Clear unused directory space.
++The cleared space includes deleted file names and name padding.
+ .El
+ .Pp
+ Inconsistencies checked are as follows:
+--- sbin/fsck_ffs/globs.c.orig
++++ sbin/fsck_ffs/globs.c
+@@ -83,6 +83,7 @@
+ int debug; /* output debugging info */
+ int Eflag; /* delete empty data blocks */
+ int Zflag; /* zero empty data blocks */
++int zflag; /* zero unused directory space */
+ int inoopt; /* trim out unused inodes */
+ char ckclean; /* only do work if not cleanly unmounted */
+ int cvtlevel; /* convert to newer file system format */
+--- sbin/fsck_ffs/main.c.orig
++++ sbin/fsck_ffs/main.c
+@@ -86,7 +86,7 @@
+ sync();
+ skipclean = 1;
+ inoopt = 0;
+- while ((ch = getopt(argc, argv, "b:Bc:CdEfFm:npRrSyZ")) != -1) {
++ while ((ch = getopt(argc, argv, "b:Bc:CdEfFm:npRrSyZz")) != -1) {
+ switch (ch) {
+ case 'b':
+ skipclean = 0;
+@@ -163,6 +163,10 @@
+ Zflag++;
+ break;
+
++ case 'z':
++ zflag++;
++ break;
++
+ default:
+ usage();
+ }
+--- sys/ufs/ufs/dir.h.orig
++++ sys/ufs/ufs/dir.h
+@@ -105,13 +105,11 @@
+ * The DIRSIZ macro gives the minimum record length which will hold
+ * the directory entry. This requires the amount of space in struct direct
+ * without the d_name field, plus enough space for the name with a terminating
+- * null byte (dp->d_namlen+1), rounded up to a 4 byte boundary.
+- *
+- *
++ * null byte (dp->d_namlen + 1), rounded up to a 4 byte boundary.
+ */
+-#define DIRECTSIZ(namlen) \
+- ((__offsetof(struct direct, d_name) + \
+- ((namlen)+1)*sizeof(((struct direct *)0)->d_name[0]) + 3) & ~3)
++#define DIR_ROUNDUP 4 /* Directory name roundup size */
++#define DIRECTSIZ(namlen) \
++ (roundup2(__offsetof(struct direct, d_name) + (namlen) + 1, DIR_ROUNDUP))
+ #if (BYTE_ORDER == LITTLE_ENDIAN)
+ #define DIRSIZ(oldfmt, dp) \
+ ((oldfmt) ? DIRECTSIZ((dp)->d_type) : DIRECTSIZ((dp)->d_namlen))
+--- sys/ufs/ufs/ufs_lookup.c.orig
++++ sys/ufs/ufs/ufs_lookup.c
+@@ -823,14 +823,21 @@
+ struct componentname *cnp;
+ struct direct *newdirp;
+ {
++ u_int namelen;
+
+-#ifdef INVARIANTS
+- if ((cnp->cn_flags & SAVENAME) == 0)
+- panic("ufs_makedirentry: missing name");
+-#endif
++ namelen = (unsigned)cnp->cn_namelen;
++ KASSERT((cnp->cn_flags & SAVENAME) != 0,
++ ("ufs_makedirentry: missing name"));
++ KASSERT(namelen <= MAXNAMLEN,
++ ("ufs_makedirentry: name too long"));
+ newdirp->d_ino = ip->i_number;
+- newdirp->d_namlen = cnp->cn_namelen;
+- bcopy(cnp->cn_nameptr, newdirp->d_name, (unsigned)cnp->cn_namelen + 1);
++ newdirp->d_namlen = namelen;
++
++ /* Zero out after-name padding */
++ *(u_int32_t *)(&newdirp->d_name[namelen & ~(DIR_ROUNDUP - 1)]) = 0;
++
++ bcopy(cnp->cn_nameptr, newdirp->d_name, namelen);
++
+ if (ITOV(ip)->v_mount->mnt_maxsymlinklen > 0)
+ newdirp->d_type = IFTODT(ip->i_mode);
+ else {
+@@ -1209,16 +1216,21 @@
+ if (ip && rep->d_ino != ip->i_number)
+ panic("ufs_dirremove: ip %ju does not match dirent ino %ju\n",
+ (uintmax_t)ip->i_number, (uintmax_t)rep->d_ino);
+- if (dp->i_count == 0) {
++ /*
++ * Zero out the file directory entry metadata to reduce disk
++ * scavenging disclosure.
++ */
++ bzero(&rep->d_name[0], rep->d_namlen);
++ rep->d_namlen = 0;
++ rep->d_type = 0;
++ rep->d_ino = 0;
++
++ if (dp->i_count != 0) {
+ /*
+- * First entry in block: set d_ino to zero.
+- */
+- ep->d_ino = 0;
+- } else {
+- /*
+ * Collapse new free space into previous entry.
+ */
+ ep->d_reclen += rep->d_reclen;
++ rep->d_reclen = 0;
+ }
+ #ifdef UFS_DIRHASH
+ if (dp->i_dirhash != NULL)
Property changes on: head/share/security/patches/SA-19:10/ufs.11.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:10/ufs.11.patch.asc
===================================================================
--- head/share/security/patches/SA-19:10/ufs.11.patch.asc (nonexistent)
+++ head/share/security/patches/SA-19:10/ufs.11.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9ZNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cLSAw//fBSV+MIQNSJaq2Ux5SMQ1zvGG2vVbdX3pTFH764EL6A8s1cdQnLkFqCT
+W93kH1lyMqxb64WQ6gC1sLk41GHTDUGRM94KjkqqmkfCAy+q24ZFnSHEsq11Umks
+quVJQ4yehJXnFjfFNtIbat0FAVl1t2YzEtu33UzWyefoeQh6jOdebN22gYV5X4Od
+FiaKngO83tr7dHkamvrQ7eQZNgeC05kJYsKLTlkhoujnGfNyelmaiRj/KmICjWYj
+M9uCEccfSqTPaqYfE7qj7CzH4+rUCmBmULiuUVJEoxWGxQndhULqvSpAglq90bN5
+iZgVrfodheWBROtIJaov+0d2+GWjQ63jN6KHYKPOY75vQf/l9s8TxCXxCQ6pT3xB
+JHjLV6tRRaSnLZj/Xzd4RKHlg1tMxkjp0vtSRKaltyJISAu+gzqFUBkylGx9mvSb
+ar2iAvOWAlmCOfCbIG2xs/sPY4U8GV0JixEGPv8ghdusDnVxJeQa724vbnd9hWox
+UjE7VM3ynDtx+zQJ0aWr1K6JYZNgZ3KQjJvAN4vVWbw3ta/cyQ0uyaBrqk6zJZov
+R/E5DHV9LHQUfA7FC7tXMgHJLAAlMYWkRimmdKnsHbHSLjbgBpPhbOsSg4LpSDn5
+GCjkeA9XpuKd40YIixWUuM9X7GYS/yHamfofpWPIQTMXnGbNxSk=
+=WvjT
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/SA-19:10/ufs.11.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:10/ufs.12.patch
===================================================================
--- head/share/security/patches/SA-19:10/ufs.12.patch (nonexistent)
+++ head/share/security/patches/SA-19:10/ufs.12.patch (revision 53209)
@@ -0,0 +1,311 @@
+--- sbin/fsck_ffs/dir.c.orig
++++ sbin/fsck_ffs/dir.c
+@@ -147,6 +147,7 @@
+ struct direct *dp, *ndp;
+ struct bufarea *bp;
+ long size, blksiz, fix, dploc;
++ int dc;
+
+ blksiz = idesc->id_numfrags * sblock.fs_fsize;
+ bp = getdirblk(idesc->id_blkno, blksiz);
+@@ -153,8 +154,16 @@
+ if (idesc->id_loc % DIRBLKSIZ == 0 && idesc->id_filesize > 0 &&
+ idesc->id_loc < blksiz) {
+ dp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
+- if (dircheck(idesc, dp))
++ if ((dc = dircheck(idesc, dp)) > 0) {
++ if (dc == 2) {
++ /*
++ * dircheck() cleared unused directory space.
++ * Mark the buffer as dirty to write it out.
++ */
++ dirty(bp);
++ }
+ goto dpok;
++ }
+ if (idesc->id_fix == IGNORE)
+ return (0);
+ fix = dofix(idesc, "DIRECTORY CORRUPTED");
+@@ -181,19 +190,26 @@
+ if ((idesc->id_loc % DIRBLKSIZ) == 0)
+ return (dp);
+ ndp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
+- if (idesc->id_loc < blksiz && idesc->id_filesize > 0 &&
+- dircheck(idesc, ndp) == 0) {
+- size = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
+- idesc->id_loc += size;
+- idesc->id_filesize -= size;
+- if (idesc->id_fix == IGNORE)
+- return (0);
+- fix = dofix(idesc, "DIRECTORY CORRUPTED");
+- bp = getdirblk(idesc->id_blkno, blksiz);
+- dp = (struct direct *)(bp->b_un.b_buf + dploc);
+- dp->d_reclen += size;
+- if (fix)
++ if (idesc->id_loc < blksiz && idesc->id_filesize > 0) {
++ if ((dc = dircheck(idesc, ndp)) == 0) {
++ size = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
++ idesc->id_loc += size;
++ idesc->id_filesize -= size;
++ if (idesc->id_fix == IGNORE)
++ return (0);
++ fix = dofix(idesc, "DIRECTORY CORRUPTED");
++ bp = getdirblk(idesc->id_blkno, blksiz);
++ dp = (struct direct *)(bp->b_un.b_buf + dploc);
++ dp->d_reclen += size;
++ if (fix)
++ dirty(bp);
++ } else if (dc == 2) {
++ /*
++ * dircheck() cleared unused directory space.
++ * Mark the buffer as dirty to write it out.
++ */
+ dirty(bp);
++ }
+ }
+ return (dp);
+ }
+@@ -201,6 +217,11 @@
+ /*
+ * Verify that a directory entry is valid.
+ * This is a superset of the checks made in the kernel.
++ * Also optionally clears padding and unused directory space.
++ *
++ * Returns 0 if the entry is bad, 1 if the entry is good and no changes
++ * were made, and 2 if the entry is good but modified to clear out padding
++ * and unused space and needs to be written back to disk.
+ */
+ static int
+ dircheck(struct inodesc *idesc, struct direct *dp)
+@@ -209,15 +230,39 @@
+ char *cp;
+ u_char type;
+ u_int8_t namlen;
+- int spaceleft;
++ int spaceleft, modified, unused;
+
++ modified = 0;
+ spaceleft = DIRBLKSIZ - (idesc->id_loc % DIRBLKSIZ);
+ if (dp->d_reclen == 0 ||
+ dp->d_reclen > spaceleft ||
+- (dp->d_reclen & 0x3) != 0)
++ (dp->d_reclen & (DIR_ROUNDUP - 1)) != 0)
+ goto bad;
+- if (dp->d_ino == 0)
+- return (1);
++ if (dp->d_ino == 0) {
++ /*
++ * Special case of an unused directory entry. Normally
++ * the kernel would coalesce unused space with the previous
++ * entry by extending its d_reclen, but there are situations
++ * (e.g. fsck) where that doesn't occur.
++ * If we're clearing out directory cruft (-z flag), then make
++ * sure this entry gets fully cleared as well.
++ */
++ if (zflag && fswritefd >= 0) {
++ if (dp->d_type != 0) {
++ dp->d_type = 0;
++ modified = 1;
++ }
++ if (dp->d_namlen != 0) {
++ dp->d_namlen = 0;
++ modified = 1;
++ }
++ if (dp->d_name[0] != '\0') {
++ dp->d_name[0] = '\0';
++ modified = 1;
++ }
++ }
++ goto good;
++ }
+ size = DIRSIZ(0, dp);
+ namlen = dp->d_namlen;
+ type = dp->d_type;
+@@ -231,7 +276,37 @@
+ goto bad;
+ if (*cp != '\0')
+ goto bad;
++
++good:
++ if (zflag && fswritefd >= 0) {
++ /*
++ * Clear unused directory entry space, including the d_name
++ * padding.
++ */
++ /* First figure the number of pad bytes. */
++ unused = roundup2(namlen + 1, DIR_ROUNDUP) - (namlen + 1);
++
++ /* Add in the free space to the end of the record. */
++ unused += dp->d_reclen - DIRSIZ(0, dp);
++
++ /*
++ * Now clear out the unused space, keeping track if we actually
++ * changed anything.
++ */
++ for (cp = &dp->d_name[namlen + 1]; unused > 0; unused--, cp++) {
++ if (*cp != '\0') {
++ *cp = '\0';
++ modified = 1;
++ }
++ }
++
++ if (modified) {
++ return 2;
++ }
++ }
++
+ return (1);
++
+ bad:
+ if (debug)
+ printf("Bad dir: ino %d reclen %d namlen %d type %d name %s\n",
+--- sbin/fsck_ffs/fsck.h.orig
++++ sbin/fsck_ffs/fsck.h
+@@ -315,6 +315,7 @@
+ extern int debug; /* output debugging info */
+ extern int Eflag; /* delete empty data blocks */
+ extern int Zflag; /* zero empty data blocks */
++extern int zflag; /* zero unused directory space */
+ extern int inoopt; /* trim out unused inodes */
+ extern char ckclean; /* only do work if not cleanly unmounted */
+ extern int cvtlevel; /* convert to newer file system format */
+--- sbin/fsck_ffs/fsck_ffs.8.orig
++++ sbin/fsck_ffs/fsck_ffs.8
+@@ -29,7 +29,7 @@
+ .\" @(#)fsck.8 8.4 (Berkeley) 5/9/95
+ .\" $FreeBSD$
+ .\"
+-.Dd January 13, 2018
++.Dd May 3, 2019
+ .Dt FSCK_FFS 8
+ .Os
+ .Sh NAME
+@@ -38,7 +38,7 @@
+ .Nd file system consistency check and interactive repair
+ .Sh SYNOPSIS
+ .Nm
+-.Op Fl BCdEFfnpRrSyZ
++.Op Fl BCdEFfnpRrSyZz
+ .Op Fl b Ar block
+ .Op Fl c Ar level
+ .Op Fl m Ar mode
+@@ -301,6 +301,9 @@
+ and
+ .Fl Z
+ are specified, blocks are first zeroed and then erased.
++.It Fl z
++Clear unused directory space.
++The cleared space includes deleted file names and name padding.
+ .El
+ .Pp
+ Inconsistencies checked are as follows:
+--- sbin/fsck_ffs/globs.c.orig
++++ sbin/fsck_ffs/globs.c
+@@ -85,6 +85,7 @@
+ int debug; /* output debugging info */
+ int Eflag; /* delete empty data blocks */
+ int Zflag; /* zero empty data blocks */
++int zflag; /* zero unused directory space */
+ int inoopt; /* trim out unused inodes */
+ char ckclean; /* only do work if not cleanly unmounted */
+ int cvtlevel; /* convert to newer file system format */
+--- sbin/fsck_ffs/main.c.orig
++++ sbin/fsck_ffs/main.c
+@@ -89,7 +89,7 @@
+ sync();
+ skipclean = 1;
+ inoopt = 0;
+- while ((ch = getopt(argc, argv, "b:Bc:CdEfFm:npRrSyZ")) != -1) {
++ while ((ch = getopt(argc, argv, "b:Bc:CdEfFm:npRrSyZz")) != -1) {
+ switch (ch) {
+ case 'b':
+ skipclean = 0;
+@@ -166,6 +166,10 @@
+ Zflag++;
+ break;
+
++ case 'z':
++ zflag++;
++ break;
++
+ default:
+ usage();
+ }
+--- sys/ufs/ufs/dir.h.orig
++++ sys/ufs/ufs/dir.h
+@@ -108,13 +108,11 @@
+ * The DIRSIZ macro gives the minimum record length which will hold
+ * the directory entry. This requires the amount of space in struct direct
+ * without the d_name field, plus enough space for the name with a terminating
+- * null byte (dp->d_namlen+1), rounded up to a 4 byte boundary.
+- *
+- *
++ * null byte (dp->d_namlen + 1), rounded up to a 4 byte boundary.
+ */
+-#define DIRECTSIZ(namlen) \
+- ((__offsetof(struct direct, d_name) + \
+- ((namlen)+1)*sizeof(((struct direct *)0)->d_name[0]) + 3) & ~3)
++#define DIR_ROUNDUP 4 /* Directory name roundup size */
++#define DIRECTSIZ(namlen) \
++ (roundup2(__offsetof(struct direct, d_name) + (namlen) + 1, DIR_ROUNDUP))
+ #if (BYTE_ORDER == LITTLE_ENDIAN)
+ #define DIRSIZ(oldfmt, dp) \
+ ((oldfmt) ? DIRECTSIZ((dp)->d_type) : DIRECTSIZ((dp)->d_namlen))
+--- sys/ufs/ufs/ufs_lookup.c.orig
++++ sys/ufs/ufs/ufs_lookup.c
+@@ -825,14 +825,21 @@
+ struct componentname *cnp;
+ struct direct *newdirp;
+ {
++ u_int namelen;
+
+-#ifdef INVARIANTS
+- if ((cnp->cn_flags & SAVENAME) == 0)
+- panic("ufs_makedirentry: missing name");
+-#endif
++ namelen = (unsigned)cnp->cn_namelen;
++ KASSERT((cnp->cn_flags & SAVENAME) != 0,
++ ("ufs_makedirentry: missing name"));
++ KASSERT(namelen <= UFS_MAXNAMLEN,
++ ("ufs_makedirentry: name too long"));
+ newdirp->d_ino = ip->i_number;
+- newdirp->d_namlen = cnp->cn_namelen;
+- bcopy(cnp->cn_nameptr, newdirp->d_name, (unsigned)cnp->cn_namelen + 1);
++ newdirp->d_namlen = namelen;
++
++ /* Zero out after-name padding */
++ *(u_int32_t *)(&newdirp->d_name[namelen & ~(DIR_ROUNDUP - 1)]) = 0;
++
++ bcopy(cnp->cn_nameptr, newdirp->d_name, namelen);
++
+ if (ITOV(ip)->v_mount->mnt_maxsymlinklen > 0)
+ newdirp->d_type = IFTODT(ip->i_mode);
+ else {
+@@ -1211,16 +1218,21 @@
+ if (ip && rep->d_ino != ip->i_number)
+ panic("ufs_dirremove: ip %ju does not match dirent ino %ju\n",
+ (uintmax_t)ip->i_number, (uintmax_t)rep->d_ino);
+- if (dp->i_count == 0) {
++ /*
++ * Zero out the file directory entry metadata to reduce disk
++ * scavenging disclosure.
++ */
++ bzero(&rep->d_name[0], rep->d_namlen);
++ rep->d_namlen = 0;
++ rep->d_type = 0;
++ rep->d_ino = 0;
++
++ if (dp->i_count != 0) {
+ /*
+- * First entry in block: set d_ino to zero.
+- */
+- ep->d_ino = 0;
+- } else {
+- /*
+ * Collapse new free space into previous entry.
+ */
+ ep->d_reclen += rep->d_reclen;
++ rep->d_reclen = 0;
+ }
+ #ifdef UFS_DIRHASH
+ if (dp->i_dirhash != NULL)
Property changes on: head/share/security/patches/SA-19:10/ufs.12.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:10/ufs.12.patch.asc
===================================================================
--- head/share/security/patches/SA-19:10/ufs.12.patch.asc (nonexistent)
+++ head/share/security/patches/SA-19:10/ufs.12.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9ZdfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cKqKRAAjnl9PFeoSWEWhpszLDoMxytsZbCE+paF7FrNnEgIzuhaE8k+uah+okP2
+7schte688xS+zav1rBlc+WSChzV6UsAiUZsU/UDojhJeFmeOFsThiKJo/Ccp2hr0
+7k7pv3NyAylBhVoUTH/QKuGO7UktPzC5KbWXjBv0gB4N+2fHfpY7iIB5/SF5LVnl
+DNVSA/JsDn8Iyk2ymqJTJUFe6jzJzMZQgcO7NxkKZnhsv6sYkJHDmOSmYhi7fly5
++hg4t3gg2UMUlHDnIY/NmM4OaC5UiznW7wcXgU7ID+w35R8h2sMN0pwEZk3U+h4N
+Xpe9y16MuPQX2u6RVBDl2GTEJEZLvPMt/eS9lH4grIQ2maU7UyTHxpraQ01i83NX
+eLSHnnZuArrQZ4c5NAo4j8+kCrxgoqVhl0987pt8VKmPRqteTRhgX6k5OCxRFneQ
+mO8OvtTzNKDMXjDymMbP4WoLn1bMgXvqM/9CGD1K5j78BkzioZemlUlly9t56I8b
+RVUDL8dDajIpmAbzlq0JgDQ8SYzEj2qowmjaTKhKihbSlF1riC0bXcRAgufmt8FH
+RFF4m8cjq4FKMX5t6ZLlHSoW6hC7yOpVe2IPfbnTV8PT6Fpot5SOkyw8plBAAu87
+YZdxZp/jdczLFQCI2M/4BafAEHIQOlx3Vm7bPlw+ZLMN/u+k6R0=
+=MGNg
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/SA-19:10/ufs.12.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:11/cd_ioctl.11.patch
===================================================================
--- head/share/security/patches/SA-19:11/cd_ioctl.11.patch (nonexistent)
+++ head/share/security/patches/SA-19:11/cd_ioctl.11.patch (revision 53209)
@@ -0,0 +1,184 @@
+--- sys/cam/scsi/scsi_cd.c.orig
++++ sys/cam/scsi/scsi_cd.c
+@@ -1281,7 +1281,7 @@
+
+ struct cam_periph *periph;
+ struct cd_softc *softc;
+- int nocopyout, error = 0;
++ int error = 0;
+
+ periph = (struct cam_periph *)dp->d_drv1;
+ cam_periph_lock(periph);
+@@ -1323,7 +1323,6 @@
+ */
+ cam_periph_unlock(periph);
+
+- nocopyout = 0;
+ switch (cmd) {
+
+ case CDIOCPLAYTRACKS:
+@@ -1499,9 +1498,6 @@
+ cam_periph_unlock(periph);
+ }
+ break;
+- case CDIOCREADSUBCHANNEL_SYSSPACE:
+- nocopyout = 1;
+- /* Fallthrough */
+ case CDIOCREADSUBCHANNEL:
+ {
+ struct ioc_read_subchannel *args
+@@ -1546,13 +1542,7 @@
+ data->header.data_len[1] +
+ sizeof(struct cd_sub_channel_header)));
+ cam_periph_unlock(periph);
+- if (nocopyout == 0) {
+- if (copyout(data, args->data, len) != 0) {
+- error = EFAULT;
+- }
+- } else {
+- bcopy(data, args->data, len);
+- }
++ error = copyout(data, args->data, len);
+ free(data, M_SCSICD);
+ }
+ break;
+--- sys/compat/linux/linux_ioctl.c.orig
++++ sys/compat/linux/linux_ioctl.c
+@@ -1549,16 +1549,26 @@
+ struct ioc_read_subchannel bsdsc;
+ struct cd_sub_channel_info bsdinfo;
+
++ error = copyin((void *)args->arg, &sc, sizeof(sc));
++ if (error)
++ break;
++
++ /*
++ * Invoke the native ioctl and bounce the returned data through
++ * the userspace buffer. This works because the Linux structure
++ * is the same size as our structures for the subchannel header
++ * and position data.
++ */
+ bsdsc.address_format = CD_LBA_FORMAT;
+ bsdsc.data_format = CD_CURRENT_POSITION;
+ bsdsc.track = 0;
+- bsdsc.data_len = sizeof(bsdinfo);
+- bsdsc.data = &bsdinfo;
+- error = fo_ioctl(fp, CDIOCREADSUBCHANNEL_SYSSPACE,
+- (caddr_t)&bsdsc, td->td_ucred, td);
++ bsdsc.data_len = sizeof(sc);
++ bsdsc.data = (void *)args->arg;
++ error = fo_ioctl(fp, CDIOCREADSUBCHANNEL, (caddr_t)&bsdsc,
++ td->td_ucred, td);
+ if (error)
+ break;
+- error = copyin((void *)args->arg, &sc, sizeof(sc));
++ error = copyin((void *)args->arg, &bsdinfo, sizeof(bsdinfo));
+ if (error)
+ break;
+ sc.cdsc_audiostatus = bsdinfo.header.audio_status;
+--- sys/dev/mcd/mcd.c.orig
++++ sys/dev/mcd/mcd.c
+@@ -134,8 +134,7 @@
+ static int mcd_hard_reset(struct mcd_softc *);
+ static int mcd_setmode(struct mcd_softc *, int mode);
+ static int mcd_getqchan(struct mcd_softc *, struct mcd_qchninfo *q);
+-static int mcd_subchan(struct mcd_softc *, struct ioc_read_subchannel *sc,
+- int nocopyout);
++static int mcd_subchan(struct mcd_softc *, struct ioc_read_subchannel *sc);
+ static int mcd_toc_header(struct mcd_softc *, struct ioc_toc_header *th);
+ static int mcd_read_toc(struct mcd_softc *);
+ static int mcd_toc_entrys(struct mcd_softc *, struct ioc_read_toc_entry *te);
+@@ -482,10 +481,8 @@
+ case CDIOCPLAYMSF:
+ r = mcd_playmsf(sc, (struct ioc_play_msf *) addr);
+ break;
+- case CDIOCREADSUBCHANNEL_SYSSPACE:
+- return mcd_subchan(sc, (struct ioc_read_subchannel *) addr, 1);
+ case CDIOCREADSUBCHANNEL:
+- return mcd_subchan(sc, (struct ioc_read_subchannel *) addr, 0);
++ return mcd_subchan(sc, (struct ioc_read_subchannel *) addr);
+ case CDIOREADTOCHEADER:
+ r = mcd_toc_header(sc, (struct ioc_toc_header *) addr);
+ break;
+@@ -1411,7 +1408,7 @@
+ }
+
+ static int
+-mcd_subchan(struct mcd_softc *sc, struct ioc_read_subchannel *sch, int nocopyout)
++mcd_subchan(struct mcd_softc *sc, struct ioc_read_subchannel *sch)
+ {
+ struct mcd_qchninfo q;
+ struct cd_sub_channel_info data;
+@@ -1478,10 +1475,7 @@
+ }
+
+ MCD_UNLOCK(sc);
+- if (nocopyout == 0)
+- return copyout(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len));
+- bcopy(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len));
+- return (0);
++ return (copyout(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len)));
+ }
+
+ static int
+--- sys/dev/scd/scd.c.orig
++++ sys/dev/scd/scd.c
+@@ -130,7 +130,7 @@
+ static int scd_playtracks(struct scd_softc *, struct ioc_play_track *pt);
+ static int scd_playmsf(struct scd_softc *, struct ioc_play_msf *msf);
+ static int scd_play(struct scd_softc *, struct ioc_play_msf *msf);
+-static int scd_subchan(struct scd_softc *, struct ioc_read_subchannel *sch, int nocopyout);
++static int scd_subchan(struct scd_softc *, struct ioc_read_subchannel *sch);
+ static int read_subcode(struct scd_softc *, struct sony_subchannel_position_data *sch);
+
+ /* for xcdplayer */
+@@ -357,10 +357,8 @@
+ case CDIOCPLAYMSF:
+ error = scd_playmsf(sc, (struct ioc_play_msf *) addr);
+ break;
+- case CDIOCREADSUBCHANNEL_SYSSPACE:
+- return scd_subchan(sc, (struct ioc_read_subchannel *) addr, 1);
+ case CDIOCREADSUBCHANNEL:
+- return scd_subchan(sc, (struct ioc_read_subchannel *) addr, 0);
++ return scd_subchan(sc, (struct ioc_read_subchannel *) addr);
+ case CDIOREADTOCHEADER:
+ error = scd_toc_header (sc, (struct ioc_toc_header *) addr);
+ break;
+@@ -564,7 +562,7 @@
+ }
+
+ static int
+-scd_subchan(struct scd_softc *sc, struct ioc_read_subchannel *sch, int nocopyout)
++scd_subchan(struct scd_softc *sc, struct ioc_read_subchannel *sch)
+ {
+ struct sony_subchannel_position_data q;
+ struct cd_sub_channel_info data;
+@@ -594,12 +592,8 @@
+ data.what.position.absaddr.msf.frame = bcd2bin(q.abs_msf[2]);
+ SCD_UNLOCK(sc);
+
+- if (nocopyout == 0) {
+- if (copyout(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len))!=0)
+- return (EFAULT);
+- } else {
+- bcopy(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len));
+- }
++ if (copyout(&data, sch->data, min(sizeof(struct cd_sub_channel_info), sch->data_len))!=0)
++ return (EFAULT);
+ return (0);
+ }
+
+--- sys/sys/cdio.h.orig
++++ sys/sys/cdio.h
+@@ -274,11 +274,4 @@
+
+ #define CDIOCCAPABILITY _IOR('c',30,struct ioc_capability) /*<2>*/
+
+-/*
+- * Special version of CDIOCREADSUBCHANNEL which assumes that
+- * ioc_read_subchannel->data points to the kernel memory. For
+- * use in compatibility layers.
+- */
+-#define CDIOCREADSUBCHANNEL_SYSSPACE _IOWR('c', 31, struct ioc_read_subchannel)
+-
+ #endif /* !_SYS_CDIO_H_ */
Property changes on: head/share/security/patches/SA-19:11/cd_ioctl.11.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:11/cd_ioctl.11.patch.asc
===================================================================
--- head/share/security/patches/SA-19:11/cd_ioctl.11.patch.asc (nonexistent)
+++ head/share/security/patches/SA-19:11/cd_ioctl.11.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9aFfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cI3Vw/+Mc8GXRbl0iHi5N7Xyy0Myc7nFATusTCOJH/nf6eQO/BYgeJjxTgBuqxX
+1s9/ivxZE/V1wZiJ8HX99qXlHUYRTrCe0/eetkTRMkndohOloiE3gJ6PxmLv49pw
+TM/b9RZ/pNG9hKJmSMIx7fMGumN0Wk20TsYsAVm447ZOIj7DMQHIv9Rn5m0ZkLke
+7M70Hha9uJmAv4AYxJ1GI5R9ugw59jd9K1RuAe/htSv+quPWMCu0HEehRHN8dYNR
+59yuL4751ypGcDt7whl+CKU63ZwDCBy9DM21fd5kKw3xLBQDGU4bJcR+ncGLt8B3
+AJH27WuNnSZ8YS0bNs7YXRoUe4k7pedmTL2To9XiMSKrWza9dr8n++aIHe8gNWEF
+5JVKEds20tZo3s+SzLHIHRVKZC3MxoCaIRkkJ5uOD59PqBvYJKBFn83qQ71F6oyZ
+mnqhOqp0lrZ1Xckmr49iYNXgjpCu3cVHOUrGzDg3N4u6GlTr79bqkWzGnKwR+tim
+5Lq7Fy34ljzdVBqx2rsQN44GFwB0xiumXnTskDT6J0O8UQwZgcOABCrruA2DUli3
+vYIUyoHT0+sXe0nFEWLGI/RopEk9C+33lh7R+GUIDmln8iZYBHx0XipOuhlZVeCI
+YvO1uKixz9UuG3IStBidWpPZAsNAZI2RGR56c4bckB6KobovErg=
+=LP7V
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/SA-19:11/cd_ioctl.11.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:11/cd_ioctl.12.patch
===================================================================
--- head/share/security/patches/SA-19:11/cd_ioctl.12.patch (nonexistent)
+++ head/share/security/patches/SA-19:11/cd_ioctl.12.patch (revision 53209)
@@ -0,0 +1,92 @@
+--- sys/cam/scsi/scsi_cd.c.orig
++++ sys/cam/scsi/scsi_cd.c
+@@ -1314,7 +1314,7 @@
+
+ struct cam_periph *periph;
+ struct cd_softc *softc;
+- int nocopyout, error = 0;
++ int error = 0;
+
+ periph = (struct cam_periph *)dp->d_drv1;
+ cam_periph_lock(periph);
+@@ -1356,7 +1356,6 @@
+ */
+ cam_periph_unlock(periph);
+
+- nocopyout = 0;
+ switch (cmd) {
+
+ case CDIOCPLAYTRACKS:
+@@ -1532,9 +1531,6 @@
+ cam_periph_unlock(periph);
+ }
+ break;
+- case CDIOCREADSUBCHANNEL_SYSSPACE:
+- nocopyout = 1;
+- /* Fallthrough */
+ case CDIOCREADSUBCHANNEL:
+ {
+ struct ioc_read_subchannel *args
+@@ -1579,13 +1575,7 @@
+ data->header.data_len[1] +
+ sizeof(struct cd_sub_channel_header)));
+ cam_periph_unlock(periph);
+- if (nocopyout == 0) {
+- if (copyout(data, args->data, len) != 0) {
+- error = EFAULT;
+- }
+- } else {
+- bcopy(data, args->data, len);
+- }
++ error = copyout(data, args->data, len);
+ free(data, M_SCSICD);
+ }
+ break;
+--- sys/compat/linux/linux_ioctl.c.orig
++++ sys/compat/linux/linux_ioctl.c
+@@ -1489,16 +1489,26 @@
+ struct ioc_read_subchannel bsdsc;
+ struct cd_sub_channel_info bsdinfo;
+
++ error = copyin((void *)args->arg, &sc, sizeof(sc));
++ if (error)
++ break;
++
++ /*
++ * Invoke the native ioctl and bounce the returned data through
++ * the userspace buffer. This works because the Linux structure
++ * is the same size as our structures for the subchannel header
++ * and position data.
++ */
+ bsdsc.address_format = CD_LBA_FORMAT;
+ bsdsc.data_format = CD_CURRENT_POSITION;
+ bsdsc.track = 0;
+- bsdsc.data_len = sizeof(bsdinfo);
+- bsdsc.data = &bsdinfo;
+- error = fo_ioctl(fp, CDIOCREADSUBCHANNEL_SYSSPACE,
+- (caddr_t)&bsdsc, td->td_ucred, td);
++ bsdsc.data_len = sizeof(sc);
++ bsdsc.data = (void *)args->arg;
++ error = fo_ioctl(fp, CDIOCREADSUBCHANNEL, (caddr_t)&bsdsc,
++ td->td_ucred, td);
+ if (error)
+ break;
+- error = copyin((void *)args->arg, &sc, sizeof(sc));
++ error = copyin((void *)args->arg, &bsdinfo, sizeof(bsdinfo));
+ if (error)
+ break;
+ sc.cdsc_audiostatus = bsdinfo.header.audio_status;
+--- sys/sys/cdio.h.orig
++++ sys/sys/cdio.h
+@@ -274,11 +274,4 @@
+
+ #define CDIOCCAPABILITY _IOR('c',30,struct ioc_capability) /*<2>*/
+
+-/*
+- * Special version of CDIOCREADSUBCHANNEL which assumes that
+- * ioc_read_subchannel->data points to the kernel memory. For
+- * use in compatibility layers.
+- */
+-#define CDIOCREADSUBCHANNEL_SYSSPACE _IOWR('c', 31, struct ioc_read_subchannel)
+-
+ #endif /* !_SYS_CDIO_H_ */
Property changes on: head/share/security/patches/SA-19:11/cd_ioctl.12.patch
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/security/patches/SA-19:11/cd_ioctl.12.patch.asc
===================================================================
--- head/share/security/patches/SA-19:11/cd_ioctl.12.patch.asc (nonexistent)
+++ head/share/security/patches/SA-19:11/cd_ioctl.12.patch.asc (revision 53209)
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEE/A6HiuWv54gCjWNV05eS9J6n5cIFAl0b9aRfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEZD
+MEU4NzhBRTVBRkU3ODgwMjhENjM1NUQzOTc5MkY0OUVBN0U1QzIACgkQ05eS9J6n
+5cKFvA//c5t8a5Abb13ttJyT2EoBJYKVYA/i9cWqJLT8/whxVSMZKCI68hIebx0W
+qLJmuJOSdZJjLSZjvoFuQJTqeC4KkMXR+6xAjdVZjWCQDLA1QIKO0a+HedbIijZg
+NRCkkbSvu4pkBOpQjDkgJJIVsZmLvvWhHCdFvtTy/rS/cSEqBU/MNJXvsaTc9gz5
+byhXrFWg9/NS9t0mK++dI5Z6wTFqyhMKwPYA94IK4zDnyOFQlIvylRBNzQy0gs+v
++EWMeyqDJoh/GGqmF564xdY7XxFEwhxVuQNTrLv/ypQgUFprVcezDI4ZmqXM4ghw
+k8pIRfdn6QSwR2INx2mRWDJakNG1aZ3ijdXEZVt4kClnJpbBp/B/xtNem9US3+E1
+E2O31CxHm/FlkqhJxMYSZl8JSp3PWCJ7hc7xo3HYM28maLoziuPB9XBdVtqkdB3h
+01IIIsQzb9ZpR61OCV/eMohMVima7Os7iBl4SZY49Ke8X0NKcmxl2ZSFXmsjrhyh
+ZogBkAyIlO9GuQ46z4z8DhXwy5t1KB6fJmnP2lif6vFYJZopj183hF5qAaDf0jOD
+86YfXynXqGomizJm+BMd5/tFCTrnT5wIz0K5CDViL3iNEwBqE4j6+HeNNgvpAKkI
+tWPQa2R1MRiywDytEBYaPia9wSnhXH8sF1j8/FxvFiEG39NNCV8=
+=l/O+
+-----END PGP SIGNATURE-----
Property changes on: head/share/security/patches/SA-19:11/cd_ioctl.12.patch.asc
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Index: head/share/xml/advisories.xml
===================================================================
--- head/share/xml/advisories.xml (revision 53208)
+++ head/share/xml/advisories.xml (revision 53209)
@@ -1,4636 +1,4658 @@
$FreeBSD$
2019
+ 7
+
+
+ 2
+
+
+ FreeBSD-SA-19:11.cd_ioctl
+
+
+
+ FreeBSD-SA-19:10.ufs
+
+
+
+ FreeBSD-SA-19:09.iconv
+
+
+
+
+
+
+
6
19
FreeBSD-SA-19:08.rack
5
14
FreeBSD-SA-19:07.mds
FreeBSD-SA-19:06.pf
FreeBSD-SA-19:05.pf
FreeBSD-SA-19:04.ntp
FreeBSD-SA-19:03.wpa
2
5
FreeBSD-SA-19:02.fd
FreeBSD-SA-19:01.syscall
2018
12
19
FreeBSD-SA-18:15.bootpd
04
FreeBSD-SA-18:14.bhyve
11
27
FreeBSD-SA-18:13.nfs
9
12
FreeBSD-SA-18:12.elf
8
14
FreeBSD-SA-18:11.hostapd
FreeBSD-SA-18:10.ip
FreeBSD-SA-18:09.l1tf
6
FreeBSD-SA-18:08.tcp
6
21
FreeBSD-SA-18:07.lazyfpu
5
8
FreeBSD-SA-18:06.debugreg
4
4
FreeBSD-SA-18:05.ipsec
FreeBSD-SA-18:04.vt
3
14
FreeBSD-SA-18:03.speculative_execution
7
FreeBSD-SA-18:02.ntp
FreeBSD-SA-18:01.ipsec
2017
12
09
FreeBSD-SA-17:12.openssl
11
29
FreeBSD-SA-17:11.openssl
15
FreeBSD-SA-17:10.kldstat
FreeBSD-SA-17:09.shm
FreeBSD-SA-17:08.ptrace
10
17
FreeBSD-SA-17:07.wpa
8
10
FreeBSD-SA-17:06.openssh
7
12
FreeBSD-SA-17:05.heimdal
4
27
FreeBSD-SA-17:04.ipfilter
12
FreeBSD-SA-17:03.ntp
2
23
FreeBSD-SA-17:02.openssl
1
11
FreeBSD-SA-17:01.openssh
2016
12
22
FreeBSD-SA-16:39.ntp
6
FreeBSD-SA-16:38.bhyve
FreeBSD-SA-16:37.libc
FreeBSD-SA-16:36.telnetd
11
2
FreeBSD-SA-16:35.openssl
FreeBSD-SA-16:34.bind
FreeBSD-SA-16:33.openssh
10
25
FreeBSD-SA-16:32.bhyve
10
FreeBSD-SA-16:31.libarchive
FreeBSD-SA-16:30.portsnap
FreeBSD-SA-16:29.bspatch
FreeBSD-SA-16:28.bind
FreeBSD-SA-16:27.openssl
9
23
FreeBSD-SA-16:26.openssl
7
25
FreeBSD-SA-16:25.bspatch
6
4
FreeBSD-SA-16:24.ntp
5
31
FreeBSD-SA-16:23.libarchive
FreeBSD-SA-16:22.libarchive
FreeBSD-SA-16:21.43bsd
FreeBSD-SA-16:20.linux
17
FreeBSD-SA-16:19.sendmsg
FreeBSD-SA-16:18.atkbd
4
FreeBSD-SA-16:17.openssl
4
29
FreeBSD-SA-16:16.ntp
3
16
FreeBSD-SA-16:15.sysarch
FreeBSD-SA-16:14.openssh
10
FreeBSD-SA-16:13.bind
FreeBSD-SA-16:12.openssl
1
30
FreeBSD-SA-16:11.openssl
27
FreeBSD-SA-16:10.linux
FreeBSD-SA-16:09.ntp
FreeBSD-SA-16:08.bind
14
FreeBSD-SA-16:07.openssh
FreeBSD-SA-16:06.bsnmpd
FreeBSD-SA-16:05.tcp
FreeBSD-SA-16:04.linux
FreeBSD-SA-16:03.linux
FreeBSD-SA-16:02.ntp
FreeBSD-SA-16:01.sctp
2015
12
16
FreeBSD-SA-15:27.bind
6
FreeBSD-SA-15:26.openssl
10
26
FreeBSD-SA-15:25.ntp
9
29
FreeBSD-SA-15:24.rpcbind
2
FreeBSD-SA-15:23.bind
8
25
FreeBSD-SA-15:22.openssh
FreeBSD-SA-15:21.amd64
18
FreeBSD-SA-15:20.expat
5
FreeBSD-SA-15:19.routed
FreeBSD-SA-15:18.bsdpatch
7
28
FreeBSD-SA-15:17.bind
FreeBSD-SA-15:16.openssh
FreeBSD-SA-15:15.tcp
FreeBSD-SA-15:14.bsdpatch
21
FreeBSD-SA-15:13.tcp
9
FreeBSD-SA-15:12.openssl
7
FreeBSD-SA-15:11.bind
6
12
FreeBSD-SA-15:10.openssl
4
7
FreeBSD-SA-15:09.ipv6
FreeBSD-SA-15:08.bsdinstall
FreeBSD-SA-15:07.ntp
3
19
FreeBSD-SA-15:06.openssl
2
25
FreeBSD-SA-15:05.bind
FreeBSD-SA-15:04.igmp
1
27
FreeBSD-SA-15:03.sctp
FreeBSD-SA-15:02.kmem
14
FreeBSD-SA-15:01.openssl
2014
12
23
FreeBSD-SA-14:31.ntp
17
FreeBSD-SA-14:30.unbound
10
FreeBSD-SA-14:29.bind
FreeBSD-SA-14:28.file
FreeBSD-SA-14:27.stdio
11
04
FreeBSD-SA-14:26.ftp
FreeBSD-SA-14:25.setlogin
FreeBSD-SA-14:24.sshd
10
21
FreeBSD-SA-14:23.openssl
FreeBSD-SA-14:22.namei
FreeBSD-SA-14:21.routed
FreeBSD-SA-14:20.rtsold
9
16
FreeBSD-SA-14:19.tcp
9
FreeBSD-SA-14:18.openssl
7
8
FreeBSD-SA-14:17.kmem
6
24
FreeBSD-SA-14:16.file
FreeBSD-SA-14:15.iconv
5
FreeBSD-SA-14:14.openssl
3
FreeBSD-SA-14:13.pam
FreeBSD-SA-14:12.ktrace
FreeBSD-SA-14:11.sendmail
5
13
FreeBSD-SA-14:10.openssl
4
30
FreeBSD-SA-14:09.openssl
FreeBSD-SA-14:08.tcp
FreeBSD-SA-14:07.devfs
08
FreeBSD-SA-14:06.openssl
FreeBSD-SA-14:05.nfsserver
1
14
FreeBSD-SA-14:04.bind
FreeBSD-SA-14:03.openssl
FreeBSD-SA-14:02.ntpd
FreeBSD-SA-14:01.bsnmpd
2013
11
19
FreeBSD-SA-13:14.openssh
9
10
FreeBSD-SA-13:13.nullfs
FreeBSD-SA-13:12.ifioctl
FreeBSD-SA-13:11.sendfile
8
22
FreeBSD-SA-13:10.sctp
FreeBSD-SA-13:09.ip_multicast
7
26
FreeBSD-SA-13:08.nfsserver
FreeBSD-SA-13:07.bind
6
18
FreeBSD-SA-13:06.mmap
4
29
FreeBSD-SA-13:05.nfsserver
2
FreeBSD-SA-13:04.bind
FreeBSD-SA-13:03.openssl
2
19
FreeBSD-SA-13:02.libc
FreeBSD-SA-13:01.bind
2012
11
22
FreeBSD-SA-12:08.linux
FreeBSD-SA-12:07.hostapd
FreeBSD-SA-12:06.bind
8
6
FreeBSD-SA-12:05.bind
6
12
FreeBSD-SA-12:04.sysret
FreeBSD-SA-12:03.bind
5
30
FreeBSD-SA-12:02.crypt
30
FreeBSD-SA-12:01.openssl
2011
12
23
FreeBSD-SA-11:10.pam
FreeBSD-SA-11:09.pam_ssh
FreeBSD-SA-11:08.telnetd
FreeBSD-SA-11:07.chroot
FreeBSD-SA-11:06.bind
9
28
FreeBSD-SA-11:05.unix
FreeBSD-SA-11:04.compress
FreeBSD-SA-11:03.bind
5
28
FreeBSD-SA-11:02.bind
4
20
FreeBSD-SA-11:01.mountd
2010
11
29
FreeBSD-SA-10:10.openssl
10
FreeBSD-SA-10:09.pseudofs
9
20
FreeBSD-SA-10:08.bzip2
7
13
FreeBSD-SA-10:07.mbuf
5
27
FreeBSD-SA-10:06.nfsclient
FreeBSD-SA-10:05.opie
FreeBSD-SA-10:04.jail
1
6
FreeBSD-SA-10:03.zfs
FreeBSD-SA-10:02.ntpd
FreeBSD-SA-10:01.bind
2009
12
3
FreeBSD-SA-09:17.freebsd-update
FreeBSD-SA-09:16.rtld
FreeBSD-SA-09:15.ssl
10
2
FreeBSD-SA-09:14.devfs
FreeBSD-SA-09:13.pipe
7
29
FreeBSD-SA-09:12.bind
6
10
FreeBSD-SA-09:11.ntpd
FreeBSD-SA-09:10.ipv6
FreeBSD-SA-09:09.pipe
4
22
FreeBSD-SA-09:08.openssl
FreeBSD-SA-09:07.libc
3
23
FreeBSD-SA-09:06.ktimer
2
16
FreeBSD-SA-09:05.telnetd
1
13
FreeBSD-SA-09:04.bind
FreeBSD-SA-09:03.ntpd
7
FreeBSD-SA-09:02.openssl
FreeBSD-SA-09:01.lukemftpd
2008
12
23
FreeBSD-SA-08:13.protosw
FreeBSD-SA-08:12.ftpd
11
24
FreeBSD-SA-08:11.arc4random
10
2
FreeBSD-SA-08:10.nd6
9
3
FreeBSD-SA-08:09.icmp6
FreeBSD-SA-08:08.nmount
FreeBSD-SA-08:07.amd64
7
13
FreeBSD-SA-08:06.bind
4
17
FreeBSD-SA-08:05.openssh
2
14
FreeBSD-SA-08:04.ipsec
FreeBSD-SA-08:03.sendfile
1
18
FreeBSD 6.3-RELEASE
14
FreeBSD-SA-08:02.libc
FreeBSD-SA-08:01.pty
2007
11
29
FreeBSD-SA-07:10.gtar
FreeBSD-SA-07:09.random
10
3
FreeBSD-SA-07:08.openssl
8
1
FreeBSD-SA-07:07.bind
FreeBSD-SA-07:06.tcpdump
7
12
FreeBSD-SA-07:05.libarchive
5
23
FreeBSD-SA-07:04.file
4
26
FreeBSD-SA-07:03.ipv6
2
9
FreeBSD-SA-07:02.bind
1
15
FreeBSD 6.2-RELEASE
11
FreeBSD-SA-07:01.jail
2006
12
6
FreeBSD-SA-06:26.gtar
FreeBSD-SA-06:25.kmem
11
8
FreeBSD-SA-06:24.libarchive
9
30
FreeBSD-SA-06:22.openssh
28
FreeBSD-SA-06:23.openssl
19
FreeBSD-SA-06:21.gzip
6
FreeBSD-SA-06:20.bind
FreeBSD-SA-06:19.openssl
8
23
FreeBSD-SA-06:18.ppp
6
14
FreeBSD-SA-06:17.sendmail
5
31
FreeBSD-SA-06:16.smbfs
FreeBSD-SA-06:15.ypserv
25
FreeBSD 5.5-RELEASE
9
FreeBSD 6.1-RELEASE
4
19
FreeBSD-SA-06:14.fpu
3
22
FreeBSD-SA-06:13.sendmail
FreeBSD-SA-06:12.opie
FreeBSD-SA-06:11.ipsec
1
FreeBSD-SA-06:10.nfs
FreeBSD-SA-06:09.openssh
2
1
FreeBSD-SA-06:08.sack
1
25
FreeBSD-SA-06:07.pf
FreeBSD-SA-06:06.kmem
18
FreeBSD-SA-06:05.80211
11
FreeBSD-SA-06:04.ipfw
FreeBSD-SA-06:03.cpio
FreeBSD-SA-06:02.ee
FreeBSD-SA-06:01.texindex
2005
11
4
FreeBSD 6.0-RELEASE
10
11
FreeBSD-SA-05:21.openssl
9
7
FreeBSD-SA-05:20.cvsbug
7
27
FreeBSD-SA-05:19.ipsec
FreeBSD-SA-05:18.zlib
20
FreeBSD-SA-05:17.devfs
6
FreeBSD-SA-05:16.zlib
6
29
FreeBSD-SA-05:15.tcp
FreeBSD-SA-05:14.bzip2
FreeBSD-SA-05:13.ipfw
9
FreeBSD-SA-05:12.bind9
FreeBSD-SA-05:11.gzip
FreeBSD-SA-05:10.tcpdump
5
13
FreeBSD-SA-05:09.htt
9
FreeBSD 5.4-RELEASE
6
FreeBSD-SA-05:08.kmem
FreeBSD-SA-05:07.ldt
FreeBSD-SA-05:06.iir
4
22
FreeBSD-SA-05:05.cvs
15
FreeBSD-SA-05:04.ifconf
6
FreeBSD-SA-05:03.amd64
4
FreeBSD-SA-05:02.sendfile
3
28
FreeBSD-SA-05:01.telnet
1
25
FreeBSD 4.11-RELEASE
2004
12
1
FreeBSD-SA-04:17.procfs
11
18
FreeBSD-SA-04:16.fetch
6
FreeBSD 5.3-RELEASE
10
4
FreeBSD-SA-04:15.syscons
9
19
FreeBSD-SA-04:14.cvs
6
30
FreeBSD-SA-04:13.linux
7
FreeBSD-SA-04:12.jailroute
5
27
FreeBSD 4.10-RELEASE
19
FreeBSD-SA-04:11.msync
19
FreeBSD-SA-04:10.cvs
5
FreeBSD-SA-04:09.kadmind
FreeBSD-SA-04:08.heimdal
4
15
FreeBSD-SA-04:07.cvs
3
29
FreeBSD-SA-04:06.ipv6
17
FreeBSD-SA-04:05.openssl
2
FreeBSD-SA-04:04.tcp
2
26
FreeBSD 5.2.1-RELEASE
25
FreeBSD-SA-04:03.jail
05
FreeBSD-SA-04:02.shmat
1
30
FreeBSD-SA-04:01.mksnap_ffs
12
FreeBSD 5.2-RELEASE
2003
11
28
FreeBSD-SA-03:19.bind
10
27
FreeBSD 4.9-RELEASE
5
FreeBSD-SA-03:15.openssh
3
FreeBSD-SA-03:18.openssl
FreeBSD-SA-03:17.procfs
2
FreeBSD-SA-03:16.filedesc
9
23
FreeBSD-SA-03:14.arp
17
FreeBSD-SA-03:13.sendmail
16
FreeBSD-SA-03:12.openssh
8
26
FreeBSD-SA-03:11.sendmail
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1170
10
FreeBSD-SA-03:10.ibcs2
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1164
FreeBSD-SA-03:09.signal
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1163
3
FreeBSD-SA-03:08.realpath
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1158
6
9
FreeBSD 5.1-RELEASE
4
8
FreeBSD-SN-03:02
7
FreeBSD-SN-03:01
3
FreeBSD 4.8-RELEASE
3
30
FreeBSD-SA-03:07.sendmail
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1122
21
FreeBSD-SA-03:06.openssl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1118
20
FreeBSD-SA-03:05.xdr
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1117
3
FreeBSD-SA-03:04.sendmail
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1112
2
24
FreeBSD-SA-03:03.syncookies
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1106
FreeBSD-SA-03:02.openssl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1105
04
FreeBSD-SA-03:01.cvs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1100
1
19
FreeBSD 5.0-RELEASE
07
FreeBSD-SA-02:44.filedesc
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1090
2002
11
15
FreeBSD-SA-02:43.bind
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1084
FreeBSD-SA-02:41.smrsh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1082
12
FreeBSD-SA-02:42.resolv
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1083
FreeBSD-SA-02:40.kadmind
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1081
10
10
FreeBSD 4.7-RELEASE
FreeBSD-SN-02:06
9
16
FreeBSD-SA-02:39.libkvm
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1051
8
28
FreeBSD-SN-02:05
19
FreeBSD-SA-02:38.signed-error
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1041
15
FreeBSD 4.6.2-RELEASE
05
FreeBSD-SA-02:37.kqueue
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1033
FreeBSD-SA-02:36.nfs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1032
FreeBSD-SA-02:35.ffs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1031
FreeBSD-SA-02:33.openssl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1023
01
FreeBSD-SA-02:34.rpc
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1024
7
31
FreeBSD-SA-02:32.pppd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1022
15
FreeBSD-SA-02:31.openssh
12
FreeBSD-SA-02:30.ktrace
FreeBSD-SA-02:29.tcpdump
6
26
FreeBSD-SA-02:28.resolv
19
FreeBSD-SN-02:04
15
FreeBSD 4.6-RELEASE
5
29
FreeBSD-SA-02:27.rc
FreeBSD-SA-02:26.accept
28
FreeBSD-SN-02:03
20
FreeBSD-SA-02:25.bzip2
FreeBSD-SA-02:24.k5su
13
FreeBSD-SN-02:02
4
22
FreeBSD-SA-02:23.stdio
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/1021
18
FreeBSD-SA-02:22.mmap
17
FreeBSD-SA-02:21.tcpip
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/980
16
FreeBSD-SA-02:20.syncache
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/979
3
30
FreeBSD-SN-02:01
26
FreeBSD-SA-02:19.squid
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/960
18
FreeBSD-SA-02:18.zlib
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/978
12
FreeBSD-SA-02:17.mod_frontpage
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/954
FreeBSD-SA-02:16.netscape
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/953
FreeBSD-SA-02:15.cyrus-sasl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/952
FreeBSD-SA-02:14.pam-pgsql
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/951
07
FreeBSD-SA-02:13.openssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/945
2
21
FreeBSD-SA-02:12.squid
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/938
12
FreeBSD-SA-02:11.snmp
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/936
06
FreeBSD-SA-02:10.rsync
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/928
FreeBSD-SA-02:09.fstatfs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/927
1
29
FreeBSD 4.5-RELEASE
24
FreeBSD-SA-02:08.exec
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/923
18
FreeBSD-SA-02:07.k5su
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/912
16
FreeBSD-SA-02:06.sudo
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/909
04
FreeBSD-SA-02:05.pine
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/894
FreeBSD-SA-02:04.mutt
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/893
FreeBSD-SA-02:03.mod_auth_pgsql
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/892
FreeBSD-SA-02:02.pw
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/891
FreeBSD-SA-02:01.pkg_add
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/898
2001
12
04
FreeBSD-SA-01:64.wu-ftpd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/870
02
FreeBSD-SA-01:63.openssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/871
10
08
FreeBSD-SA-01:62.uucp
FreeBSD-SA-01:61.squid
9
24
FreeBSD-SA-01:60.procmail
20
FreeBSD 4.4-RELEASE
04
FreeBSD-SA-01:59.rmuser
8
30
FreeBSD-SA-01:58.lpd
27
FreeBSD-SA-01:57.sendmail
23
FreeBSD-SA-01:56.tcp_wrappers
21
FreeBSD-SA-01:55.procfs
20
FreeBSD-SA-01:54.ports-telnetd
17
FreeBSD-SA-01:53.ipfw
06
FreeBSD-SA-01:52.fragment
7
30
FreeBSD-SA-01:51.openssl
27
FreeBSD-SA-01:50.windowmaker
23
FreeBSD-SA-01:49.telnetd
17
FreeBSD-SA-01:48.tcpdump
10
FreeBSD-SA-01:47.xinetd
FreeBSD-SA-01:46.w3m
FreeBSD-SA-01:45.samba
FreeBSD-SA-01:44.gnupg
FreeBSD-SA-01:43.fetchmail
FreeBSD-SA-01:42.signal
09
FreeBSD-SA-01:41.hanterm
6
04
FreeBSD-SA-01:40.fts
5
02
FreeBSD-SA-01:39.tcp-isn
4
23
FreeBSD-SA-01:38.sudo
FreeBSD-SA-01:37.slrn
FreeBSD-SA-01:36.samba
FreeBSD-SA-01:35.licq
FreeBSD-SA-01:34.hylafax
20
FreeBSD 4.3-RELEASE
17
FreeBSD-SA-01:33.ftpd-glob
16
FreeBSD-SA-01:32.ipfilter
06
FreeBSD-SA-01:31.ntpd
3
22
FreeBSD-SA-01:30.ufs-ext2fs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/738
12
FreeBSD-SA-01:29.rwhod
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/732
FreeBSD-SA-01:28.timed
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/731
FreeBSD-SA-01:27.cfengine
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/730
FreeBSD-SA-01:26.interbase
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/729
FreeBSD-SA-01:23.icecast
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/728
2
14
FreeBSD-SA-01:25.kerberosIV
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/716
12
FreeBSD-SA-01:24.ssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/715
07
FreeBSD-SA-01:22.dc20ctrl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/714
FreeBSD-SA-01:21.ja-elvis
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/713
FreeBSD-SA-01:20.mars_nwe
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/712
FreeBSD-SA-01:19.ja-klock
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/707
1
31
FreeBSD-SA-01:18.bind
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/706
29
FreeBSD-SA-01:17.exmh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/705
FreeBSD-SA-01:16.mysql
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/704
FreeBSD-SA-01:15.tinyproxy
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/703
FreeBSD-SA-01:14.micq
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/702
FreeBSD-SA-01:13.sort
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/701
FreeBSD-SA-01:12.periodic
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/700
FreeBSD-SA-01:11.inetd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/699
23
FreeBSD-SA-01:10.bind
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/698
FreeBSD-SA-01:09.crontab
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/697
FreeBSD-SA-01:08.ipfw
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/696
FreeBSD-SA-01:07.xfree86
15
FreeBSD-SA-01:06.zope
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/669
FreeBSD-SA-01:05.stunnel
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/668
FreeBSD-SA-01:04.joe
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/667
FreeBSD-SA-01:03.bash1
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/666
FreeBSD-SA-01:02.syslog-ng
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/665
FreeBSD-SA-01:01.openssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/664
2000
12
20
FreeBSD-SA-00:81.ethereal
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/651
FreeBSD-SA-00:80.halflifeserver
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/650
FreeBSD-SA-00:79.oops
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/649
FreeBSD-SA-00:78.bitchx
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/648
18
FreeBSD-SA-00:77.procfs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/647
11
20
FreeBSD-SA-00:76.tcsh-csh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/628
FreeBSD-SA-00:75.php
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/627
FreeBSD-SA-00:74.gaim
FreeBSD-SA-00:73.thttpd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/626
FreeBSD-SA-00:72.curl
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/625
FreeBSD-SA-00:71.mgetty
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/624
14
FreeBSD-SA-00:70.ppp-nat
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/623
FreeBSD-SA-00:69.telnetd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/622
13
FreeBSD-SA-00:68.ncurses
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/621
10
FreeBSD-SA-00:67.gnupg
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/620
06
FreeBSD-SA-00:66.netscape
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/619
FreeBSD-SA-00:65.xfce
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/618
FreeBSD-SA-00:64.global
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/617
01
FreeBSD-SA-00:63.getnameinfo
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/589
FreeBSD-SA-00:62.top
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/616
10
31
FreeBSD-SA-00:61.tcpdump
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/615
30
FreeBSD-SA-00:60.boa
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/586
FreeBSD-SA-00:59.pine
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/585
FreeBSD-SA-00:58.chpass
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/584
13
FreeBSD-SA-00:57.muh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/570
FreeBSD-SA-00:56.lprng
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/569
FreeBSD-SA-00:55.xpdf
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/568
FreeBSD-SA-00:54.fingerd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/567
06
FreeBSD-SA-00:52.tcp-iss
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/561
9
27
FreeBSD-SA-00:53.catopen
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/562
13
FreeBSD-SA-00:51.mailman
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/550
FreeBSD-SA-00:50.listmanager
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/549
FreeBSD-SA-00:49.eject
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/548
FreeBSD-SA-00:48.xchat
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/547
FreeBSD-SA-00:47.pine
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/546
FreeBSD-SA-00:46.screen
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/545
8
31
FreeBSD-SA-00:45.esound
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/526
28
FreeBSD-SA-00:44.xlock
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/523
FreeBSD-SA-00:43.brouted
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/520
FreeBSD-SA-00:42.linux
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/530
FreeBSD-SA-00:41.elf
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/527
FreeBSD-SA-00:40.mopd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/521
FreeBSD-SA-00:39.netscape
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/528
14
FreeBSD-SA-00:38.zope
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/525
FreeBSD-SA-00:37.cvsweb
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/524
FreeBSD-SA-00:36.ntop
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/531
FreeBSD-SA-00:35.proftpd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/522
FreeBSD-SA-00:34.dhclient
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/529
7
12
FreeBSD-SA-00:33.kerberosIV
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/488
05
FreeBSD-SA-00:32.bitchx
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/487
FreeBSD-SA-00:31.canna
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/486
FreeBSD-SA-00:30.openssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/485
FreeBSD-SA-00:29.wu-ftpd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/489
FreeBSD-SA-00:28.majordomo
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/484
FreeBSD-SA-00:27.XFree86-4
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/483
FreeBSD-SA-00:26.popper
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/482
FreeBSD-SA-00:24.libedit
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/481
6
19
FreeBSD-SA-00:23.ip-options
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/480
12
FreeBSD-SA-00:25.alpha-random
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/473
07
FreeBSD-SA-00:22.apsfilter
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/461
FreeBSD-SA-00:21.ssh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/459
5
26
FreeBSD-SA-00:20.krb5
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/452
23
FreeBSD-SA-00:19.semconfig
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/451
09
FreeBSD-SA-00:18.gnapster.knapster
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/429
FreeBSD-SA-00:17.libmytinfo
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/442
FreeBSD-SA-00:16.golddig
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/439
4
24
FreeBSD-SA-00:15.imap-uw
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/438
FreeBSD-SA-00:14.imap-uw
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/441
19
FreeBSD-SA-00:13.generic-nqs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/437
10
FreeBSD-SA-00:12.healthd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/436
FreeBSD-SA-00:11.ircii
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/440
3
15
FreeBSD-SA-00:10.orville-write
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/408
FreeBSD-SA-00:09.mtr
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/408
FreeBSD-SA-00:08.lynx
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/407
FreeBSD-SA-00:07.mh
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/411
01
FreeBSD-SA-00:06.htdig
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/403
2
28
FreeBSD-SA-00:05.mysql
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/402
19
FreeBSD-SA-00:04.delegate
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/392
FreeBSD-SA-00:03.asmon
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/391
1
24
FreeBSD-SA-00:02.procfs
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/380
19
FreeBSD-SA-00:01.make
1999
9
16
FreeBSD-SA-99:06.amd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/318
15
FreeBSD-SA-99:05.fts
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/313
FreeBSD-SA-99:04.core
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/312
05
FreeBSD-SA-99:03.ftpd
http://home.jp.freebsd.org/cgi-bin/showmail/announce-jp/311
04
FreeBSD-SA-99:02.profil
FreeBSD-SA-99:01.chflags
1998
11
04
FreeBSD-SA-98:08.fragment
10
13
FreeBSD-SA-98:07.rst
6
10
FreeBSD-SA-98:06.icmp
04
FreeBSD-SA-98:05.nfs
02
FreeBSD-SA-98:04.mmap
5
14
FreeBSD-SA-98:03.ttcp
3
12
FreeBSD-SA-98:02.mmap
1997
12
09
FreeBSD-SA-97:06.f00f
01
FreeBSD-SA-98:01.land
10
29
FreeBSD-SA-97:05.open
8
19
FreeBSD-SA-97:04.procfs
4
07
FreeBSD-SA-97:03.sysinstall
3
26
FreeBSD-SA-97:02.lpd
2
05
FreeBSD-SA-97:01.setlocale
1
18
FreeBSD-SA-96:21.talkd
1996
12
16
FreeBSD-SA-96:20.stack-overflow
10
FreeBSD-SA-96:19.modstat
11
25
FreeBSD-SA-96:18.lpr
7
16
FreeBSD-SA-96:17.rzsz
12
FreeBSD-SA-96:16.rdist
04
FreeBSD-SA-96:15.ppp
6
28
FreeBSD-SA-96:12.perl
24
FreeBSD-SA-96:14.ipfw
05
FreeBSD-SA-96:13.comsat
5
21
FreeBSD-SA-96:11.man
17
FreeBSD-SA-96:10.mount_union
FreeBSD-SA-96:09.vfsload
4
22
FreeBSD-SA-96:02.apache
21
FreeBSD-SA-96:08.syslog
FreeBSD-SA-96:01.sliplogin
20
FreeBSD-SA-96:03.sendmail-suggestion
Index: head/share/xml/notices.xml
===================================================================
--- head/share/xml/notices.xml (revision 53208)
+++ head/share/xml/notices.xml (revision 53209)
@@ -1,1052 +1,1065 @@
$FreeBSD$
2019
+ 7
+
+
+ 2
+
+
+ FreeBSD-EN-19:12.tzdata
+
+
+
+
+
+
6
19
FreeBSD-EN-19:11.net
5
14
FreeBSD-EN-19:10.scp
FreeBSD-EN-19:09.xinstall
FreeBSD-EN-19:08.tzdata
2
5
FreeBSD-EN-19:07.lle
FreeBSD-EN-19:06.dtrace
1
9
FreeBSD-EN-19:05.kqueue
FreeBSD-EN-19:04.tzdata
FreeBSD-EN-19:03.sqlite
FreeBSD-EN-19:02.tcp
FreeBSD-EN-19:01.cc_cubic
2018
12
19
FreeBSD-EN-18:18.zfs
FreeBSD-EN-18:17.vm
FreeBSD-EN-18:16.ptrace
11
27
FreeBSD-EN-18:15.loader
FreeBSD-EN-18:14.tzdata
FreeBSD-EN-18:13.icmp
9
27
FreeBSD-EN-18:12.mem
FreeBSD-EN-18:11.listen
FreeBSD-EN-18:10.syscall
FreeBSD-EN-18:09.ip
12
FreeBSD-EN-18:08.lazyfpu
6
21
FreeBSD-EN-18:07.pmap
5
8
FreeBSD-EN-18:06.tzdata
FreeBSD-EN-18:05.mem
4
4
FreeBSD-EN-18:04.mem
FreeBSD-EN-18:03.tzdata
3
7
FreeBSD-EN-18:02.file
FreeBSD-EN-18:01.tzdata
2017
11
2
FreeBSD-EN-17:09.tzdata
8
10
FreeBSD-EN-17:08.pf
FreeBSD-EN-17:07.vnet
7
12
FreeBSD-EN-17:06.hyperv
4
12
FreeBSD-EN-17:05.xen
2
23
FreeBSD-EN-17:04.mandoc
FreeBSD-EN-17:03.hyperv
FreeBSD-EN-17:02.yp
FreeBSD-EN-17:01.pcie
2016
12
6
FreeBSD-EN-16:21.localedef
FreeBSD-EN-16:20.tzdata
FreeBSD-EN-16:19.tzcode
10
25
FreeBSD-EN-16:18.loader
FreeBSD-EN-16:17.vm
8
12
FreeBSD-EN-16:16.hv_storvsc
FreeBSD-EN-16:15.vmbus
FreeBSD-EN-16:14.hv_storvsc
FreeBSD-EN-16:13.vmbus
FreeBSD-EN-16:12.hv_storvsc
FreeBSD-EN-16:11.vmbus
FreeBSD-EN-16:10.dhclient
7
25
FreeBSD-EN-16:09.freebsd-update
5
4
FreeBSD-EN-16:08.zfs
FreeBSD-EN-16:07.ipi
FreeBSD-EN-16:06.libc
3
16
FreeBSD-EN-16:05.hv_netvsc
FreeBSD-EN-16:04.hyperv
1
14
FreeBSD-EN-16:03.yplib
FreeBSD-EN-16:02.pf
FreeBSD-EN-16:01.filemon
2015
11
4
FreeBSD-EN-15:20.vm
FreeBSD-EN-15:19.kqueue
9
16
FreeBSD-EN-15:18.pkg
FreeBSD-EN-15:17.libc
FreeBSD-EN-15:16.pw
8
25
FreeBSD-EN-15:15.pkg
FreeBSD-EN-15:14.ixgbe
18
FreeBSD-EN-15:13.vidcontrol
FreeBSD-EN-15:12.netstat
FreeBSD-EN-15:11.toolchain
6
30
FreeBSD-EN-15:10.iconv
FreeBSD-EN-15:09.xlocale
18
FreeBSD-EN-15:08.sendmail
9
FreeBSD-EN-15:07.zfs
FreeBSD-EN-15:06.file
5
13
FreeBSD-EN-15:05.ufs
FreeBSD-EN-15:04.freebsd-update
2
25
FreeBSD-EN-15:03.freebsd-update
FreeBSD-EN-15:02.openssl
FreeBSD-EN-15:01.vt
2014
12
23
FreeBSD-EN-14:13.freebsd-update
11
04
FreeBSD-EN-14:12.zfs
10
22
FreeBSD-EN-14:11.crypt
FreeBSD-EN-14:10.tzdata
7
8
FreeBSD-EN-14:09.jail
6
24
FreeBSD-EN-14:08.heimdal
FreeBSD-EN-14:07.pmap
3
FreeBSD-EN-14:06.exec
5
13
FreeBSD-EN-14:05.ciss
FreeBSD-EN-14:04.kldxref
FreeBSD-EN-14:03.pkg
1
14
FreeBSD-EN-14:02.mmap
FreeBSD-EN-14:01.random
2013
11
28
FreeBSD-EN-13:05.freebsd-update
10
26
FreeBSD-EN-13:04.freebsd-update
8
22
FreeBSD-EN-13:03.mfi
6
28
FreeBSD-EN-13:01.fxp
FreeBSD-EN-13:02.vtnet
2012
6
12
FreeBSD-EN-12:02.ipv6refcount
1
4
FreeBSD-EN-12:01.freebsd-update
2010
2
27
FreeBSD-EN-10:02.sched_ule
1
6
FreeBSD-EN-10:01.freebsd
2009
10
2
FreeBSD-EN-09:05.null
6
24
FreeBSD-EN-09:04.fork
FreeBSD-EN-09:03.fxp
FreeBSD-EN-09:02.bce
3
23
FreeBSD-EN-09:01.kenv
2008
6
19
FreeBSD-EN-08:02.tcp
4
17
FreeBSD-EN-08:01.libpthread
2007
3
15
FreeBSD-EN-07:05.freebsd-update
2
28
FreeBSD-EN-07:04.zoneinfo
FreeBSD-EN-07:03.rc.d_jail
FreeBSD-EN-07:02.net
14
FreeBSD-EN-07:01.nfs
2006
8
28
FreeBSD-EN-06:02.net
7
7
FreeBSD-EN-06:01.jail
2005
12
19
FreeBSD-EN-05:04.nfs
1
16
FreeBSD-EN-05:03.ipi
6
FreeBSD-EN-05:02.sk
5
FreeBSD-EN-05:01.nfs
2004
6
28
FreeBSD-EN-04:01.twe
2
26
FreeBSD 5.2.1-RELEASE