Merge
This commit is contained in:
commit
529069c19a
@ -21,4 +21,4 @@
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
tzdata2015b
|
||||
tzdata2015d
|
||||
|
@ -342,35 +342,29 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
|
||||
# above) says DST had no affect on electricity consumption. There is
|
||||
# no information about when DST will end this fall. See:
|
||||
# http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833
|
||||
|
||||
# From Steffen Thorsen (2015-04-08):
|
||||
# Egypt will start DST on midnight after Thursday, April 30, 2015.
|
||||
# This is based on a law (no 35) from May 15, 2014 saying it starts the last
|
||||
# Thursday of April.... Clocks will still be turned back for Ramadan, but
|
||||
# dates not yet announced....
|
||||
# http://almogaz.com/news/weird-news/2015/04/05/1947105 ...
|
||||
# http://www.timeanddate.com/news/time/egypt-starts-dst-2015.html
|
||||
|
||||
# From Ahmed Nazmy (2015-04-20):
|
||||
# Egypt's ministers cabinet just announced ... that it will cancel DST at
|
||||
# least for 2015.
|
||||
#
|
||||
# For now, guess that later spring and fall transitions will use
|
||||
# 2010's rules, and guess that Egypt will switch to standard time at
|
||||
# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the
|
||||
# first Friday after Ramadan. To implement this,
|
||||
# transition dates for 2015 through 2037 were determined by running
|
||||
# the following program under GNU Emacs 24.3, with the results integrated
|
||||
# by hand into the table below. Ramadan again intrudes on the guessed
|
||||
# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff.
|
||||
# (let ((islamic-year 1436))
|
||||
# (while (< islamic-year 1460)
|
||||
# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
|
||||
# (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
|
||||
# (friday 5))
|
||||
# (while (/= friday (mod a 7))
|
||||
# (setq a (1- a)))
|
||||
# (while (/= friday (mod b 7))
|
||||
# (setq b (1+ b)))
|
||||
# (setq a (1- a))
|
||||
# (setq b (1- b))
|
||||
# (setq a (calendar-gregorian-from-absolute a))
|
||||
# (setq b (calendar-gregorian-from-absolute b))
|
||||
# (insert
|
||||
# (format
|
||||
# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n"
|
||||
# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n")
|
||||
# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
|
||||
# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
|
||||
# (setq islamic-year (+ 1 islamic-year))))
|
||||
# From Tim Parenti (2015-04-20):
|
||||
# http://english.ahram.org.eg/WriterArticles/NewsContentP/1/128195/Egypt/No-daylight-saving-this-summer-Egypts-prime-minist.aspx
|
||||
# "Egypt's cabinet agreed on Monday not to switch clocks for daylight saving
|
||||
# time this summer, and carry out studies on the possibility of canceling the
|
||||
# practice altogether in future years."
|
||||
#
|
||||
# From Paul Eggert (2015-04-20):
|
||||
# For now, assume DST will be canceled. Any resumption would likely
|
||||
# use different rules anyway.
|
||||
|
||||
Rule Egypt 2008 only - Aug lastThu 24:00 0 -
|
||||
Rule Egypt 2009 only - Aug 20 24:00 0 -
|
||||
Rule Egypt 2010 only - Aug 10 24:00 0 -
|
||||
@ -379,22 +373,7 @@ Rule Egypt 2010 only - Sep lastThu 24:00 0 -
|
||||
Rule Egypt 2014 only - May 15 24:00 1:00 S
|
||||
Rule Egypt 2014 only - Jun 26 24:00 0 -
|
||||
Rule Egypt 2014 only - Jul 31 24:00 1:00 S
|
||||
Rule Egypt 2014 max - Sep lastThu 24:00 0 -
|
||||
Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S
|
||||
Rule Egypt 2015 only - Jun 11 24:00 0 -
|
||||
Rule Egypt 2015 only - Jul 23 24:00 1:00 S
|
||||
Rule Egypt 2016 only - Jun 2 24:00 0 -
|
||||
Rule Egypt 2016 only - Jul 7 24:00 1:00 S
|
||||
Rule Egypt 2017 only - May 25 24:00 0 -
|
||||
Rule Egypt 2017 only - Jun 29 24:00 1:00 S
|
||||
Rule Egypt 2018 only - May 10 24:00 0 -
|
||||
Rule Egypt 2018 only - Jun 14 24:00 1:00 S
|
||||
Rule Egypt 2019 only - May 2 24:00 0 -
|
||||
Rule Egypt 2019 only - Jun 6 24:00 1:00 S
|
||||
Rule Egypt 2020 only - May 28 24:00 1:00 S
|
||||
Rule Egypt 2021 only - May 13 24:00 1:00 S
|
||||
Rule Egypt 2022 only - May 5 24:00 1:00 S
|
||||
Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S
|
||||
Rule Egypt 2014 only - Sep lastThu 24:00 0 -
|
||||
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone Africa/Cairo 2:05:09 - LMT 1900 Oct
|
||||
|
@ -38,41 +38,6 @@
|
||||
# I made up all time zone abbreviations mentioned here; corrections welcome!
|
||||
# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
|
||||
|
||||
# These rules are stolen from the 'southamerica' file.
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule ArgAQ 1964 1966 - Mar 1 0:00 0 -
|
||||
Rule ArgAQ 1964 1966 - Oct 15 0:00 1:00 S
|
||||
Rule ArgAQ 1967 only - Apr 2 0:00 0 -
|
||||
Rule ArgAQ 1967 1968 - Oct Sun>=1 0:00 1:00 S
|
||||
Rule ArgAQ 1968 1969 - Apr Sun>=1 0:00 0 -
|
||||
Rule ArgAQ 1974 only - Jan 23 0:00 1:00 S
|
||||
Rule ArgAQ 1974 only - May 1 0:00 0 -
|
||||
Rule ChileAQ 1972 1986 - Mar Sun>=9 3:00u 0 -
|
||||
Rule ChileAQ 1974 1987 - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule ChileAQ 1987 only - Apr 12 3:00u 0 -
|
||||
Rule ChileAQ 1988 1989 - Mar Sun>=9 3:00u 0 -
|
||||
Rule ChileAQ 1988 only - Oct Sun>=1 4:00u 1:00 S
|
||||
Rule ChileAQ 1989 only - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule ChileAQ 1990 only - Mar 18 3:00u 0 -
|
||||
Rule ChileAQ 1990 only - Sep 16 4:00u 1:00 S
|
||||
Rule ChileAQ 1991 1996 - Mar Sun>=9 3:00u 0 -
|
||||
Rule ChileAQ 1991 1997 - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule ChileAQ 1997 only - Mar 30 3:00u 0 -
|
||||
Rule ChileAQ 1998 only - Mar Sun>=9 3:00u 0 -
|
||||
Rule ChileAQ 1998 only - Sep 27 4:00u 1:00 S
|
||||
Rule ChileAQ 1999 only - Apr 4 3:00u 0 -
|
||||
Rule ChileAQ 1999 2010 - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule ChileAQ 2000 2007 - Mar Sun>=9 3:00u 0 -
|
||||
# N.B.: the end of March 29 in Chile is March 30 in Universal time,
|
||||
# which is used below in specifying the transition.
|
||||
Rule ChileAQ 2008 only - Mar 30 3:00u 0 -
|
||||
Rule ChileAQ 2009 only - Mar Sun>=9 3:00u 0 -
|
||||
Rule ChileAQ 2010 only - Apr Sun>=1 3:00u 0 -
|
||||
Rule ChileAQ 2011 only - May Sun>=2 3:00u 0 -
|
||||
Rule ChileAQ 2011 only - Aug Sun>=16 4:00u 1:00 S
|
||||
Rule ChileAQ 2012 2015 - Apr Sun>=23 3:00u 0 -
|
||||
Rule ChileAQ 2012 2014 - Sep Sun>=2 4:00u 1:00 S
|
||||
|
||||
# Argentina - year-round bases
|
||||
# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
|
||||
# Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01
|
||||
@ -367,21 +332,7 @@ Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
|
||||
# USA - year-round bases
|
||||
#
|
||||
# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
|
||||
#
|
||||
# From Ethan Dicks (1996-10-06):
|
||||
# It keeps the same time as Punta Arenas, Chile, because, just like us
|
||||
# and the South Pole, that's the other end of their supply line....
|
||||
# I verified with someone who was there that since 1980,
|
||||
# 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 Antarctica/Palmer 0 - zzz 1965
|
||||
-4:00 ArgAQ AR%sT 1969 Oct 5
|
||||
-3:00 ArgAQ AR%sT 1982 May
|
||||
-4:00 ChileAQ CL%sT 2015 Apr 26 3:00u
|
||||
-3:00 - CLT
|
||||
#
|
||||
# See 'southamerica' for Antarctica/Palmer, since it uses South American DST.
|
||||
#
|
||||
# McMurdo Station, Ross Island, since 1955-12
|
||||
# Amundsen-Scott South Pole Station, continuously occupied since 1956-11-20
|
||||
|
@ -43,6 +43,7 @@ Link America/Argentina/Jujuy America/Jujuy
|
||||
Link America/Indiana/Knox America/Knox_IN
|
||||
Link America/Kentucky/Louisville America/Louisville
|
||||
Link America/Argentina/Mendoza America/Mendoza
|
||||
Link America/Toronto America/Montreal
|
||||
Link America/Rio_Branco America/Porto_Acre
|
||||
Link America/Argentina/Cordoba America/Rosario
|
||||
Link America/Denver America/Shiprock
|
||||
|
@ -99,7 +99,7 @@
|
||||
# 1:00:14 SET Swedish (1879-1899)*
|
||||
# 2:00 EET EEST Eastern Europe
|
||||
# 3:00 FET Further-eastern Europe (2011-2014)*
|
||||
# 3:00 MSK MSD MSM* Moscow
|
||||
# 3:00 MSK MSD MSM* Minsk, Moscow
|
||||
|
||||
# From Peter Ilieve (1994-12-04),
|
||||
# The original six [EU members]: Belgium, France, (West) Germany, Italy,
|
||||
|
@ -250,9 +250,14 @@ Zone PST8PDT -8:00 US P%sT
|
||||
# The law doesn't give abbreviations.
|
||||
#
|
||||
# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
|
||||
# Public law 106-564 (2000-12-23) introduced the abbreviation
|
||||
# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
|
||||
# See the file "australasia".
|
||||
# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
|
||||
# for time in Guam and the Northern Marianas. See the file "australasia".
|
||||
#
|
||||
# From Paul Eggert (2015-04-17):
|
||||
# HST and HDT are standardized abbreviations for Hawaii-Aleutian
|
||||
# standard and daylight times. See section 9.47 (p 234) of the
|
||||
# U.S. Government Printing Office Style Manual (2008)
|
||||
# http://www.gpo.gov/fdsys/pkg/GPO-STYLEMANUAL-2008/pdf/GPO-STYLEMANUAL-2008.pdf
|
||||
|
||||
# From Arthur David Olson, 2005-08-09
|
||||
# The following was signed into law on 2005-08-08.
|
||||
@ -559,7 +564,7 @@ Zone America/Adak 12:13:21 - LMT 1867 Oct 18
|
||||
-11:00 - BST 1969
|
||||
-11:00 US B%sT 1983 Oct 30 2:00
|
||||
-10:00 US AH%sT 1983 Nov 30
|
||||
-10:00 US HA%sT
|
||||
-10:00 US H%sT
|
||||
# The following switches don't quite make our 1970 cutoff.
|
||||
#
|
||||
# Shanks writes that part of southwest Alaska (e.g. Aniak)
|
||||
@ -1354,14 +1359,9 @@ Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
|
||||
|
||||
# Quebec
|
||||
|
||||
# From Paul Eggert (2013-08-30):
|
||||
# Since 1970 most of Quebec has been like Toronto.
|
||||
# However, because earlier versions of the tz database mistakenly relied on data
|
||||
# from Shanks & Pottenger saying that Quebec differed from Ontario after 1970,
|
||||
# a separate entry was created for most of Quebec. We're loath to lose
|
||||
# its pre-1970 info, even though the tz database is normally limited to
|
||||
# zones that differ after 1970, so keep this otherwise out-of-scope entry.
|
||||
|
||||
# From Paul Eggert (2015-03-24):
|
||||
# See America/Toronto for most of Quebec, including Montreal.
|
||||
#
|
||||
# Matthews and Vincent (1998) also write that Quebec east of the -63
|
||||
# meridian is supposed to observe AST, but residents as far east as
|
||||
# Natashquan use EST/EDT, and residents east of Natashquan use AST.
|
||||
@ -1375,39 +1375,10 @@ Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
|
||||
# For lack of better info, guess this practice began around 1970, contra to
|
||||
# Shanks & Pottenger who have this region observing AST/ADT.
|
||||
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule Mont 1917 only - Mar 25 2:00 1:00 D
|
||||
Rule Mont 1917 only - Apr 24 0:00 0 S
|
||||
Rule Mont 1919 only - Mar 31 2:30 1:00 D
|
||||
Rule Mont 1919 only - Oct 25 2:30 0 S
|
||||
Rule Mont 1920 only - May 2 2:30 1:00 D
|
||||
Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
|
||||
Rule Mont 1921 only - May 1 2:00 1:00 D
|
||||
Rule Mont 1922 only - Apr 30 2:00 1:00 D
|
||||
Rule Mont 1924 only - May 17 2:00 1:00 D
|
||||
Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
|
||||
Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
|
||||
Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
|
||||
Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
|
||||
Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
|
||||
Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
|
||||
Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
|
||||
Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
|
||||
Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
|
||||
Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
|
||||
Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
|
||||
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone America/Blanc-Sablon -3:48:28 - LMT 1884
|
||||
-4:00 Canada A%sT 1970
|
||||
-4:00 - AST
|
||||
Zone America/Montreal -4:54:16 - LMT 1884
|
||||
-5:00 Mont E%sT 1918
|
||||
-5:00 Canada E%sT 1919
|
||||
-5:00 Mont E%sT 1942 Feb 9 2:00s
|
||||
-5:00 Canada E%sT 1946
|
||||
-5:00 Mont E%sT 1974
|
||||
-5:00 Canada E%sT
|
||||
|
||||
# Ontario
|
||||
|
||||
@ -1898,17 +1869,115 @@ Zone America/Creston -7:46:04 - LMT 1884
|
||||
# Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
|
||||
# Mathew Englander (1996-10-07) gives the following refs:
|
||||
# * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
|
||||
# c. 7 defines Yukon standard time as UTC-9. This is still valid;
|
||||
# c. 7 defines Yukon standard time as UTC-9....
|
||||
# see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
|
||||
# [http://canlii.ca/t/7vhg]
|
||||
# * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
|
||||
# * O.I.C. 1980/02 established DST.
|
||||
# * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
|
||||
# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
|
||||
# with Englander.
|
||||
# From Chris Walton (2006-06-26):
|
||||
# Here is a link to the old daylight saving portion of the interpretation
|
||||
# act which was last updated in 1987:
|
||||
# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
|
||||
|
||||
# From Brian Inglis (2015-04-14):
|
||||
#
|
||||
# I tried to trace the history of Yukon time and found the following
|
||||
# regulations, giving the reference title and URL if found, regulation name,
|
||||
# and relevant quote if available. Each regulation specifically revokes its
|
||||
# predecessor. The final reference is to the current Interpretation Act
|
||||
# authorizing and resulting from these regulatory changes.
|
||||
#
|
||||
# Only recent regulations were retrievable via Yukon government site search or
|
||||
# index, and only some via Canadian legal sources. Other sources used include
|
||||
# articles titled "Standard Time and Time Zones in Canada" from JRASC via ADS
|
||||
# Abstracts, cited by ADO for 1932 ..., and updated versions from 1958 and
|
||||
# 1970 quoted below; each article includes current extracts from provincial
|
||||
# and territorial ST and DST regulations at the end, summaries and details of
|
||||
# standard times and daylight saving time at many locations across Canada,
|
||||
# with time zone maps, tables and calculations for Canadian Sunrise, Sunset,
|
||||
# and LMST; they also cover many countries and global locations, with a chart
|
||||
# and table showing current Universal Time offsets, and may be useful as
|
||||
# another source of information for 1970 and earlier.
|
||||
#
|
||||
# * Standard Time and Time Zones in Canada; Smith, C.C.; JRASC, Vol. 26,
|
||||
# pp.49-77; February 1932; SAO/NASA Astrophysics Data System (ADS)
|
||||
# http://adsabs.harvard.edu/abs/1932JRASC..26...49S from p.75:
|
||||
# Yukon Interpretation Ordinance
|
||||
# Yukon standard time is the local mean time at the one hundred and
|
||||
# thirty-fifth meridian.
|
||||
#
|
||||
# * Standard Time and Time Zones in Canada; Smith, C.C.; Thomson, Malcolm M.;
|
||||
# JRASC, Vol. 52, pp.193-223; October 1958; SAO/NASA Astrophysics Data System
|
||||
# (ADS) http://adsabs.harvard.edu/abs/1958JRASC..52..193S from pp.220-1:
|
||||
# Yukon Interpretation Ordinance, 1955, Chap. 16.
|
||||
#
|
||||
# (1) Subject to this section, standard time shall be reckoned as nine
|
||||
# hours behind Greenwich Time and called Yukon Standard Time.
|
||||
#
|
||||
# (2) Notwithstanding subsection (1), the Commissioner may make regulations
|
||||
# varying the manner of reckoning standard time.
|
||||
#
|
||||
# * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
|
||||
# http://? - 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)
|
||||
# http://adsabs.harvard.edu/abs/1970JRASC..64..129T from p.156: Yukon
|
||||
# Territory Commissioner's Order 1967-59 Interpretation Ordinance ...
|
||||
#
|
||||
# 1. Commissioner's Order 1966-20 dated at Whitehorse in the Yukon
|
||||
# Territory on 27th January, 1966, is hereby revoked.
|
||||
#
|
||||
# 2. Yukon (East) Standard Time as defined by section 36 of the
|
||||
# Interpretation Ordinance from and after mid-night on the 28th day of May,
|
||||
# 1967 shall be reckoned in the same manner as Pacific Standard Time, that
|
||||
# is to say, eight hours behind Greenwich Time in the area of the Yukon
|
||||
# Territory lying east of the 138th degree longitude west.
|
||||
#
|
||||
# 3. In the remainder of the Territory, lying west of the 138th degree
|
||||
# longitude west, Yukon (West) Standard Time shall be reckoned as nine
|
||||
# hours behind Greenwich Time.
|
||||
#
|
||||
# * Yukon Standard Time defined as Pacific Standard Time, YCO 1973/214
|
||||
# http://www.canlii.org/en/yk/laws/regu/yco-1973-214/latest/yco-1973-214.html
|
||||
# C.O. 1973/214 INTERPRETATION ACT ...
|
||||
#
|
||||
# 1. Effective October 28, 1973 Commissioner's Order 1967/59 is hereby
|
||||
# revoked.
|
||||
#
|
||||
# 2. Yukon Standard Time as defined by section 36 of the Interpretation
|
||||
# Act from and after midnight on the twenty-eighth day of October, 1973
|
||||
# shall be reckoned in the same manner as Pacific Standard Time, that is
|
||||
# to say eight hours behind Greenwich Time.
|
||||
#
|
||||
# * O.I.C. 1980/02 INTERPRETATION ACT
|
||||
# http://? - no online source found
|
||||
#
|
||||
# * Yukon Daylight Saving Time, YOIC 1987/56
|
||||
# http://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
|
||||
# O.I.C. 1987/056 INTERPRETATION ACT ...
|
||||
#
|
||||
# In every year between
|
||||
# (a) two o'clock in the morning in the first Sunday in April, and
|
||||
# (b) two o'clock in the morning in the last Sunday in October,
|
||||
# Standard Time shall be reckoned as seven hours behind Greenwich Time and
|
||||
# called Yukon Daylight Saving Time.
|
||||
# ...
|
||||
# Dated ... 9th day of March, A.D., 1987.
|
||||
#
|
||||
# * Yukon Daylight Saving Time 2006, YOIC 2006/127
|
||||
# http://www.canlii.org/en/yk/laws/regu/yoic-2006-127/latest/yoic-2006-127.html
|
||||
# O.I.C. 2006/127 INTERPRETATION ACT ...
|
||||
#
|
||||
# 1. In Yukon each year the time for general purposes shall be 7 hours
|
||||
# behind Greenwich mean time during the period commencing at two o'clock
|
||||
# in the forenoon on the second Sunday of March and ending at two o'clock
|
||||
# in the forenoon on the first Sunday of November and shall be called
|
||||
# Yukon Daylight Saving Time.
|
||||
#
|
||||
# 2. Order-in-Council 1987/56 is revoked.
|
||||
#
|
||||
# 3. This order comes into force January 1, 2007.
|
||||
#
|
||||
# * Interpretation Act, RSY 2002, c 125
|
||||
# http://www.canlii.org/en/yk/laws/stat/rsy-2002-c-125/latest/rsy-2002-c-125.html
|
||||
|
||||
# From Rives McDow (1999-09-04):
|
||||
# Nunavut ... moved ... to incorporate the whole territory into one time zone.
|
||||
@ -2134,7 +2203,7 @@ Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
|
||||
-7:00 NT_YK M%sT 1980
|
||||
-7:00 Canada M%sT
|
||||
Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
|
||||
-9:00 NT_YK Y%sT 1966 Jul 1 2:00
|
||||
-9:00 NT_YK Y%sT 1967 May 28 0:00
|
||||
-8:00 NT_YK P%sT 1980
|
||||
-8:00 Canada P%sT
|
||||
Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
|
||||
|
@ -1121,6 +1121,60 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
|
||||
|
||||
# Chile
|
||||
|
||||
# From Paul Eggert (2015-04-03):
|
||||
# Shanks & Pottenger says America/Santiago introduced standard time in
|
||||
# 1890 and rounds its UTC offset to 70W40; guess that in practice this
|
||||
# was the same offset as in 1916-1919. It also says Pacific/Easter
|
||||
# standardized on 109W22 in 1890; assume this didn't change the clocks.
|
||||
#
|
||||
# Dates for America/Santiago from 1910 to 2004 are primarily from
|
||||
# the following source, cited by Oscar van Vlijmen (2006-10-08):
|
||||
# [1] Chile Law
|
||||
# http://www.webexhibits.org/daylightsaving/chile.html
|
||||
# This contains a copy of a this official table:
|
||||
# Cambios en la hora oficial de Chile desde 1900 (retrieved 2008-03-30)
|
||||
# http://web.archive.org/web/20080330200901/http://www.horaoficial.cl/cambio.htm
|
||||
# [1] needs several corrections, though.
|
||||
#
|
||||
# The first set of corrections is from:
|
||||
# [2] History of the Official Time of Chile
|
||||
# http://www.horaoficial.cl/ing/horaof_ing.html (retrieved 2012-03-06). See:
|
||||
# http://web.archive.org/web/20120306042032/http://www.horaoficial.cl/ing/horaof_ing.html
|
||||
# This is an English translation of:
|
||||
# Historia de la hora oficial de Chile (retrieved 2012-10-24). See:
|
||||
# http://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
|
||||
# A fancier Spanish version (requiring mouse-clicking) is at:
|
||||
# http://www.horaoficial.cl/historia_hora.html
|
||||
# Conflicts between [1] and [2] were resolved as follows:
|
||||
#
|
||||
# - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
|
||||
# Boletín Nº 1, Aviso Nº 1 (1910). Go with [2].
|
||||
#
|
||||
# - [1] says SMT was -4:42:45, [2] says Chile's official time from
|
||||
# 1916 to 1919 was -4:42:46.3, the meridian of Chile's National
|
||||
# Astronomical Observatory (OAN), then located in what is now
|
||||
# Quinta Normal in Santiago. Go with [2], rounding it to -4:42:46.
|
||||
#
|
||||
# - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
|
||||
# Boletín Nº 22, Aviso Nº 129/1918 (1918-08-23). Go with [2].
|
||||
#
|
||||
# - [1] does not give times for transitions; assume they occur
|
||||
# at midnight mainland time, the current common practice. However,
|
||||
# go with [2]'s specification of 23:00 for the 1947-05-21 transition.
|
||||
#
|
||||
# Another correction to [1] is from Jesper Nørgaard Welen, who
|
||||
# wrote (2006-10-08), "I think that there are some obvious mistakes in
|
||||
# the suggested link from Oscar van Vlijmen,... for instance entry 66
|
||||
# says that GMT-4 ended 1990-09-12 while entry 67 only begins GMT-3 at
|
||||
# 1990-09-15 (they should have been 1990-09-15 and 1990-09-16
|
||||
# respectively), but anyhow it clears up some doubts too."
|
||||
#
|
||||
# Data for Pacific/Easter from 1910 through 1967 come from Shanks &
|
||||
# Pottenger. After that, for lack of better info assume
|
||||
# Pacific/Easter is always two hours behind America/Santiago;
|
||||
# this is known to work for DST transitions starting in 2008 and
|
||||
# may well be true for earlier transitions.
|
||||
|
||||
# From Eduardo Krell (1995-10-19):
|
||||
# The law says to switch to DST at midnight [24:00] on the second SATURDAY
|
||||
# of October.... The law is the same for March and October.
|
||||
@ -1133,78 +1187,35 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
|
||||
# Because of the same drought, the government decided to end DST later,
|
||||
# on April 3, (one-time change).
|
||||
|
||||
# From Oscar van Vlijmen (2006-10-08):
|
||||
# http://www.horaoficial.cl/cambio.htm
|
||||
|
||||
# From Jesper Nørgaard Welen (2006-10-08):
|
||||
# I think that there are some obvious mistakes in the suggested link
|
||||
# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
|
||||
# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
|
||||
# (they should have been 1990-09-15 and 1990-09-16 respectively), but
|
||||
# anyhow it clears up some doubts too.
|
||||
|
||||
# From Paul Eggert (2014-08-12):
|
||||
# The following data entries for Chile and America/Santiago are from
|
||||
# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
|
||||
# Jesper Nørgaard Welen. The data entries for Pacific/Easter are from Shanks
|
||||
# & Pottenger, except with DST transitions after 1932 cloned from
|
||||
# America/Santiago. The pre-1980 Pacific/Easter data entries are dubious,
|
||||
# but we have no other source.
|
||||
|
||||
# From Germán Poo-Caamaño (2008-03-03):
|
||||
# Due to drought, Chile extends Daylight Time in three weeks. This
|
||||
# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
|
||||
# and Saturday 3/29 at 22:00 for Pacific/Easter)
|
||||
# The Supreme Decree is located at
|
||||
# http://www.shoa.cl/servicios/supremo316.pdf
|
||||
# and the instructions for 2008 are located in:
|
||||
# http://www.horaoficial.cl/cambio.htm
|
||||
|
||||
#
|
||||
# From José Miguel Garrido (2008-03-05):
|
||||
# ...
|
||||
# You could see the announces of the change on
|
||||
# http://www.shoa.cl/noticias/2008/04hora/hora.htm
|
||||
|
||||
# From Angel Chiang (2010-03-04):
|
||||
# Subject: DST in Chile exceptionally extended to 3 April due to earthquake
|
||||
# http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
|
||||
# (in Spanish, last paragraph).
|
||||
#
|
||||
# This is breaking news. There should be more information available later.
|
||||
|
||||
# From Arthur David Olson (2010-03-06):
|
||||
# Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
|
||||
|
||||
# From Glenn Eychaner (2011-03-02):
|
||||
# It appears that the Chilean government has decided to postpone the
|
||||
# change from summer time to winter time again, by three weeks to April
|
||||
# 2nd:
|
||||
# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
|
||||
#
|
||||
# This is not yet reflected in the official "cambio de hora" site, but
|
||||
# probably will be soon:
|
||||
# http://www.horaoficial.cl/cambio.htm
|
||||
|
||||
# From Arthur David Olson (2011-03-02):
|
||||
# The emol.com article mentions a water shortage as the cause of the
|
||||
# postponement, which may mean that it's not a permanent change.
|
||||
|
||||
# From Glenn Eychaner (2011-03-28):
|
||||
# The article:
|
||||
# http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
|
||||
#
|
||||
# In English:
|
||||
# Chile's clocks will go back an hour this year on the 7th of May instead
|
||||
# of this Saturday. They will go forward again the 3rd Saturday in
|
||||
# August, not in October as they have since 1968. This is a pilot plan
|
||||
# which will be reevaluated in 2012.
|
||||
# August, not in October as they have since 1968.
|
||||
|
||||
# From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
|
||||
# As stated in the website of the Chilean Energy Ministry
|
||||
# http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
|
||||
# The Chilean Government has decided to postpone the entrance into winter time
|
||||
# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
|
||||
# been yet formalized but it will within the next days.
|
||||
# (to leave DST) from March 11 2012 to April 28th 2012....
|
||||
# Quote from the website communication:
|
||||
#
|
||||
# 6. For the year 2012, the dates of entry into winter time will be as follows:
|
||||
@ -1237,17 +1248,9 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
|
||||
# From Paul Eggert (2015-03-03):
|
||||
# For now, assume that the extension will persist indefinitely.
|
||||
|
||||
# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
|
||||
# 'antarctica' file.
|
||||
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
|
||||
Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
|
||||
Rule Chile 1928 1932 - Apr 1 0:00 0 -
|
||||
Rule Chile 1942 only - Jun 1 4:00u 0 -
|
||||
Rule Chile 1942 only - Aug 1 5:00u 1:00 S
|
||||
Rule Chile 1946 only - Jul 15 4:00u 1:00 S
|
||||
Rule Chile 1946 only - Sep 1 3:00u 0:00 -
|
||||
Rule Chile 1947 only - Apr 1 4:00u 0 -
|
||||
Rule Chile 1968 only - Nov 3 4:00u 1:00 S
|
||||
Rule Chile 1969 only - Mar 30 3:00u 0 -
|
||||
Rule Chile 1969 only - Nov 23 4:00u 1:00 S
|
||||
@ -1258,10 +1261,8 @@ Rule Chile 1972 1986 - Mar Sun>=9 3:00u 0 -
|
||||
Rule Chile 1973 only - Sep 30 4:00u 1:00 S
|
||||
Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule Chile 1987 only - Apr 12 3:00u 0 -
|
||||
Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
|
||||
Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
|
||||
Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule Chile 1990 only - Mar 18 3:00u 0 -
|
||||
Rule Chile 1988 1990 - Mar Sun>=9 3:00u 0 -
|
||||
Rule Chile 1988 1989 - Oct Sun>=9 4:00u 1:00 S
|
||||
Rule Chile 1990 only - Sep 16 4:00u 1:00 S
|
||||
Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
|
||||
Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
|
||||
@ -1284,15 +1285,21 @@ Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
|
||||
# (1996-09) says 1998-03-08. Ignore these.
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone America/Santiago -4:42:46 - LMT 1890
|
||||
-4:42:46 - SMT 1910 # Santiago Mean Time
|
||||
-4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
|
||||
-5:00 - CLT 1916 Jul 1 # Chile Time
|
||||
-4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
|
||||
-4:00 - CLT 1919 Jul 1 # Chile Time
|
||||
-4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
|
||||
-5:00 Chile CL%sT 1947 May 22 # Chile Time
|
||||
-4:42:46 - SMT 1918 Sep 10
|
||||
-4:00 - CLT 1919 Jul 1
|
||||
-4:42:46 - SMT 1927 Sep 1
|
||||
-5:00 Chile CL%sT 1932 Sep 1
|
||||
-4:00 - CLT 1942 Jun 1
|
||||
-5:00 - CLT 1942 Aug 1
|
||||
-4:00 - CLT 1946 Jul 15
|
||||
-4:00 1:00 CLST 1946 Sep 1 # central Chile
|
||||
-4:00 - CLT 1947 Apr 1
|
||||
-5:00 - CLT 1947 May 21 23:00
|
||||
-4:00 Chile CL%sT 2015 Apr 26 3:00u
|
||||
-3:00 - CLT
|
||||
Zone Pacific/Easter -7:17:44 - LMT 1890
|
||||
Zone Pacific/Easter -7:17:28 - LMT 1890
|
||||
-7:17:28 - EMT 1932 Sep # Easter Mean Time
|
||||
-7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
|
||||
-6:00 Chile EAS%sT 2015 Apr 26 3:00u
|
||||
@ -1302,6 +1309,25 @@ Zone Pacific/Easter -7:17:44 - LMT 1890
|
||||
# Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
|
||||
# and Antarctic bases, are like America/Santiago.
|
||||
|
||||
# Antarctic base using South American rules
|
||||
# (See the file 'antarctica' for more.)
|
||||
#
|
||||
# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
|
||||
#
|
||||
# From Ethan Dicks (1996-10-06):
|
||||
# It keeps the same time as Punta Arenas, Chile, because, just like us
|
||||
# and the South Pole, that's the other end of their supply line....
|
||||
# I verified with someone who was there that since 1980,
|
||||
# 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 Antarctica/Palmer 0 - zzz 1965
|
||||
-4:00 Arg AR%sT 1969 Oct 5
|
||||
-3:00 Arg AR%sT 1982 May
|
||||
-4:00 Chile CL%sT 2015 Apr 26 3:00u
|
||||
-3:00 - CLT
|
||||
|
||||
# Colombia
|
||||
|
||||
# Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes,
|
||||
|
@ -827,7 +827,7 @@ ifndef BUILD_HEADLESS_ONLY
|
||||
LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/java.desktop/macosx/native/libsplashscreen
|
||||
endif
|
||||
|
||||
LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE \
|
||||
LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0 \
|
||||
$(addprefix -I, $(LIBSPLASHSCREEN_DIRS)) \
|
||||
$(LIBJAVA_HEADER_FLAGS) \
|
||||
#
|
||||
|
@ -49,6 +49,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBHPROF, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) $(CFLAGS_WARNINGS_ARE_ERRORS) \
|
||||
$(BUILD_LIBHPROF_CFLAGS), \
|
||||
CFLAGS_debug := -DHPROF_LOGGING, \
|
||||
CFLAGS_windows := -D_WINSOCK_DEPRECATED_NO_WARNINGS, \
|
||||
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libhprof/mapfile-vers, \
|
||||
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||
$(call SET_SHARED_LIBRARY_ORIGIN), \
|
||||
|
@ -333,6 +333,19 @@ import java.util.StringTokenizer;
|
||||
* "../../../technotes/guides/plugin/developer_guide/rsa_how.html#use">
|
||||
* usePolicy Permission</a>.</td>
|
||||
* </tr>
|
||||
*
|
||||
* <tr>
|
||||
* <td>localeServiceProvider</td>
|
||||
* <td>This {@code RuntimePermission} is required to be granted to
|
||||
* classes which subclass and implement
|
||||
* {@code java.util.spi.LocaleServiceProvider}. The permission is
|
||||
* checked during invocation of the abstract base class constructor.
|
||||
* This permission ensures trust in classes which implement this
|
||||
* security-sensitive provider mechanism. </td>
|
||||
* <td>See <a href= "../util/spi/LocaleServiceProvider.html">
|
||||
* {@code java.util.spi.LocaleServiceProvider}</a> for more
|
||||
* information.</td>
|
||||
* </tr>
|
||||
* </table>
|
||||
*
|
||||
* @see java.security.BasicPermission
|
||||
|
@ -103,6 +103,10 @@ public final class ZoneOffsetTransition
|
||||
* Serialization version.
|
||||
*/
|
||||
private static final long serialVersionUID = -6946044323557704546L;
|
||||
/**
|
||||
* The transition epoch-second.
|
||||
*/
|
||||
private final long epochSecond;
|
||||
/**
|
||||
* The local transition date-time at the transition.
|
||||
*/
|
||||
@ -152,6 +156,7 @@ public final class ZoneOffsetTransition
|
||||
* @param offsetAfter the offset at and after the transition, not null
|
||||
*/
|
||||
ZoneOffsetTransition(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter) {
|
||||
this.epochSecond = transition.toEpochSecond(offsetBefore);
|
||||
this.transition = transition;
|
||||
this.offsetBefore = offsetBefore;
|
||||
this.offsetAfter = offsetAfter;
|
||||
@ -165,6 +170,7 @@ public final class ZoneOffsetTransition
|
||||
* @param offsetAfter the offset at and after the transition, not null
|
||||
*/
|
||||
ZoneOffsetTransition(long epochSecond, ZoneOffset offsetBefore, ZoneOffset offsetAfter) {
|
||||
this.epochSecond = epochSecond;
|
||||
this.transition = LocalDateTime.ofEpochSecond(epochSecond, 0, offsetBefore);
|
||||
this.offsetBefore = offsetBefore;
|
||||
this.offsetAfter = offsetAfter;
|
||||
@ -209,7 +215,7 @@ public final class ZoneOffsetTransition
|
||||
* @throws IOException if an error occurs
|
||||
*/
|
||||
void writeExternal(DataOutput out) throws IOException {
|
||||
Ser.writeEpochSec(toEpochSecond(), out);
|
||||
Ser.writeEpochSec(epochSecond, out);
|
||||
Ser.writeOffset(offsetBefore, out);
|
||||
Ser.writeOffset(offsetAfter, out);
|
||||
}
|
||||
@ -253,7 +259,7 @@ public final class ZoneOffsetTransition
|
||||
* @return the transition epoch second
|
||||
*/
|
||||
public long toEpochSecond() {
|
||||
return transition.toEpochSecond(offsetBefore);
|
||||
return epochSecond;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------
|
||||
@ -397,7 +403,13 @@ public final class ZoneOffsetTransition
|
||||
*/
|
||||
@Override
|
||||
public int compareTo(ZoneOffsetTransition transition) {
|
||||
return this.getInstant().compareTo(transition.getInstant());
|
||||
if (epochSecond < transition.epochSecond) {
|
||||
return -1;
|
||||
} else if (epochSecond > transition.epochSecond) {
|
||||
return 1;
|
||||
} else {
|
||||
return this.getInstant().compareTo(transition.getInstant());
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
@ -416,7 +428,8 @@ public final class ZoneOffsetTransition
|
||||
}
|
||||
if (other instanceof ZoneOffsetTransition) {
|
||||
ZoneOffsetTransition d = (ZoneOffsetTransition) other;
|
||||
return transition.equals(d.transition) &&
|
||||
return epochSecond == d.epochSecond &&
|
||||
transition.equals(d.transition) &&
|
||||
offsetBefore.equals(d.offsetBefore) && offsetAfter.equals(d.offsetAfter);
|
||||
}
|
||||
return false;
|
||||
|
@ -33,7 +33,7 @@ package sun.security.action;
|
||||
* <code>AccessController.doPrivileged</code>.
|
||||
*
|
||||
* <p>The following code retrieves the boolean value of the system
|
||||
* property named <code>"prop"</code> as a privileged action: <p>
|
||||
* property named <code>"prop"</code> as a privileged action:
|
||||
*
|
||||
* <pre>
|
||||
* boolean b = java.security.AccessController.doPrivileged
|
||||
|
@ -35,7 +35,7 @@ import java.security.Security;
|
||||
* <code>AccessController.doPrivileged</code>.
|
||||
*
|
||||
* <p>The following code retrieves the boolean value of the security
|
||||
* property named <code>"prop"</code> as a privileged action: <p>
|
||||
* property named <code>"prop"</code> as a privileged action:
|
||||
*
|
||||
* <pre>
|
||||
* boolean b = java.security.AccessController.doPrivileged
|
||||
|
@ -36,7 +36,7 @@ package sun.security.action;
|
||||
* property named <code>"prop"</code> as a privileged action. Since it does
|
||||
* not pass a default value to be used in case the property
|
||||
* <code>"prop"</code> is not defined, it has to check the result for
|
||||
* <code>null</code>: <p>
|
||||
* <code>null</code>:
|
||||
*
|
||||
* <pre>
|
||||
* Integer tmp = java.security.AccessController.doPrivileged
|
||||
@ -50,7 +50,7 @@ package sun.security.action;
|
||||
* <p>The following code retrieves the integer value of the system
|
||||
* property named <code>"prop"</code> as a privileged action, and also passes
|
||||
* a default value to be used in case the property <code>"prop"</code> is not
|
||||
* defined: <p>
|
||||
* defined:
|
||||
*
|
||||
* <pre>
|
||||
* int i = ((Integer)java.security.AccessController.doPrivileged(
|
||||
@ -84,7 +84,7 @@ public class GetIntegerAction
|
||||
* value of that property.
|
||||
*
|
||||
* @param theProp the name of the system property.
|
||||
* @param defaulVal the default value.
|
||||
* @param defaultVal the default value.
|
||||
*/
|
||||
public GetIntegerAction(String theProp, int defaultVal) {
|
||||
this.theProp = theProp;
|
||||
|
@ -36,7 +36,7 @@ package sun.security.action;
|
||||
* property named <code>"prop"</code> as a privileged action. Since it does
|
||||
* not pass a default value to be used in case the property
|
||||
* <code>"prop"</code> is not defined, it has to check the result for
|
||||
* <code>null</code>: <p>
|
||||
* <code>null</code>:
|
||||
*
|
||||
* <pre>
|
||||
* Long tmp = java.security.AccessController.doPrivileged
|
||||
@ -50,7 +50,7 @@ package sun.security.action;
|
||||
* <p>The following code retrieves the <code>Long</code> value of the system
|
||||
* property named <code>"prop"</code> as a privileged action, and also passes
|
||||
* a default value to be used in case the property <code>"prop"</code> is not
|
||||
* defined: <p>
|
||||
* defined:
|
||||
*
|
||||
* <pre>
|
||||
* long l = java.security.AccessController.doPrivileged
|
||||
@ -83,7 +83,7 @@ public class GetLongAction implements java.security.PrivilegedAction<Long> {
|
||||
* value of that property.
|
||||
*
|
||||
* @param theProp the name of the system property.
|
||||
* @param defaulVal the default value.
|
||||
* @param defaultVal the default value.
|
||||
*/
|
||||
public GetLongAction(String theProp, long defaultVal) {
|
||||
this.theProp = theProp;
|
||||
|
@ -33,7 +33,7 @@ package sun.security.action;
|
||||
* <code>AccessController.doPrivileged</code>.
|
||||
*
|
||||
* <p>The following code retrieves the value of the system
|
||||
* property named <code>"prop"</code> as a privileged action: <p>
|
||||
* property named <code>"prop"</code> as a privileged action:
|
||||
*
|
||||
* <pre>
|
||||
* String s = java.security.AccessController.doPrivileged
|
||||
@ -66,7 +66,7 @@ public class GetPropertyAction
|
||||
* value of that property.
|
||||
*
|
||||
* @param theProp the name of the system property.
|
||||
* @param defaulVal the default value.
|
||||
* @param defaultVal the default value.
|
||||
*/
|
||||
public GetPropertyAction(String theProp, String defaultVal) {
|
||||
this.theProp = theProp;
|
||||
|
@ -117,7 +117,7 @@ public class GetInstance {
|
||||
/**
|
||||
* This method exists for compatibility with JCE only. It will be removed
|
||||
* once JCE has been changed to use the replacement method.
|
||||
* @deprecated use getServices(List<ServiceId>) instead
|
||||
* @deprecated use {@code getServices(List<ServiceId>)} instead
|
||||
*/
|
||||
@Deprecated
|
||||
public static List<Service> getServices(String type,
|
||||
|
@ -353,7 +353,7 @@ public final class ProviderList {
|
||||
/**
|
||||
* This method exists for compatibility with JCE only. It will be removed
|
||||
* once JCE has been changed to use the replacement method.
|
||||
* @deprecated use getServices(List<ServiceId>) instead
|
||||
* @deprecated use {@code getServices(List<ServiceId>)} instead
|
||||
*/
|
||||
@Deprecated
|
||||
public List<Service> getServices(String type, List<String> algorithms) {
|
||||
|
@ -51,7 +51,6 @@ import sun.misc.HexDumpEncoder;
|
||||
* in string form, its value is a (single-valued)
|
||||
* byte array that is the SET's encoding.
|
||||
*
|
||||
* <P>
|
||||
* <TABLE BORDER CELLPADDING=8 ALIGN=CENTER>
|
||||
*
|
||||
* <TR>
|
||||
@ -476,7 +475,7 @@ public class PKCS9Attribute implements DerEncoder {
|
||||
* Construct a PKCS9Attribute from its encoding on an input
|
||||
* stream.
|
||||
*
|
||||
* @param val the DerValue representing the DER encoding of the attribute.
|
||||
* @param derVal the DerValue representing the DER encoding of the attribute.
|
||||
* @exception IOException on parsing error.
|
||||
*/
|
||||
public PKCS9Attribute(DerValue derVal) throws IOException {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -1642,23 +1642,22 @@ public final class PKCS12KeyStore extends KeyStoreSpi {
|
||||
Entry entry = entries.get(alias);
|
||||
|
||||
// certificate chain
|
||||
int chainLen = 1;
|
||||
Certificate[] certs = null;
|
||||
Certificate[] certs;
|
||||
|
||||
if (entry instanceof PrivateKeyEntry) {
|
||||
PrivateKeyEntry keyEntry = (PrivateKeyEntry) entry;
|
||||
if (keyEntry.chain == null) {
|
||||
chainLen = 0;
|
||||
} else {
|
||||
chainLen = keyEntry.chain.length;
|
||||
}
|
||||
certs = keyEntry.chain;
|
||||
|
||||
if (keyEntry.chain != null) {
|
||||
certs = keyEntry.chain;
|
||||
} else {
|
||||
certs = new Certificate[0];
|
||||
}
|
||||
} else if (entry instanceof CertEntry) {
|
||||
certs = new Certificate[]{((CertEntry) entry).cert};
|
||||
certs = new Certificate[]{((CertEntry) entry).cert};
|
||||
} else {
|
||||
certs = new Certificate[0];
|
||||
}
|
||||
|
||||
for (int i = 0; i < chainLen; i++) {
|
||||
for (int i = 0; i < certs.length; i++) {
|
||||
// create SafeBag of Type CertBag
|
||||
DerOutputStream safeBag = new DerOutputStream();
|
||||
safeBag.putOID(CertBag_OID);
|
||||
|
@ -186,7 +186,7 @@ import sun.net.www.ParseUtil;
|
||||
* <p> Case is unimportant for the identifiers (<code>permission</code>,
|
||||
* <code>signedBy</code>, <code>codeBase</code>, etc.) but is
|
||||
* significant for the <i>Type</i>
|
||||
* or for any string that is passed in as a value. <p>
|
||||
* or for any string that is passed in as a value.
|
||||
*
|
||||
* <p> An example of two entries in a policy configuration file is
|
||||
* <pre>
|
||||
@ -212,7 +212,7 @@ import sun.net.www.ParseUtil;
|
||||
* with one or more Principal class/name pairs. The exact
|
||||
* replacement performed depends upon the contents of the
|
||||
* grant clause to which the permission belongs.
|
||||
*<p>
|
||||
* <p>
|
||||
*
|
||||
* If the grant clause does not contain any principal information,
|
||||
* the permission will be ignored (permissions containing
|
||||
@ -220,11 +220,11 @@ import sun.net.www.ParseUtil;
|
||||
* of a principal-based grant clause). For example, BarPermission
|
||||
* will always be ignored in the following grant clause:
|
||||
*
|
||||
*<pre>
|
||||
* <pre>
|
||||
* grant codebase "www.foo.com", signedby "duke" {
|
||||
* permission BarPermission "... ${{self}} ...";
|
||||
* };
|
||||
*</pre>
|
||||
* </pre>
|
||||
*
|
||||
* If the grant clause contains principal information, <b>${{self}}</b>
|
||||
* will be replaced with that same principal information.
|
||||
@ -389,7 +389,7 @@ public class PolicyFile extends java.security.Policy {
|
||||
* <p>Case is unimportant for the identifiers (<code>permission</code>,
|
||||
* <code>signedBy</code>, <code>codeBase</code>, etc.) but is
|
||||
* significant for the <i>Type</i>
|
||||
* or for any string that is passed in as a value. <p>
|
||||
* or for any string that is passed in as a value.
|
||||
*
|
||||
* <p>An example of two entries in a policy configuration file is
|
||||
* <pre>
|
||||
@ -399,7 +399,7 @@ public class PolicyFile extends java.security.Policy {
|
||||
* grant signedBy "Duke" {
|
||||
* permission java.io.FilePermission "/tmp/*", "read,write";
|
||||
* };
|
||||
* <p>
|
||||
*
|
||||
* // grant everyone the following permission
|
||||
*
|
||||
* grant {
|
||||
@ -1044,8 +1044,8 @@ public class PolicyFile extends java.security.Policy {
|
||||
* the ProtectionDomain and tests whether the permission is
|
||||
* granted.
|
||||
*
|
||||
* @param domain the ProtectionDomain to test
|
||||
* @param permission the Permission object to be tested for implication.
|
||||
* @param pd the ProtectionDomain to test
|
||||
* @param p the Permission object to be tested for implication.
|
||||
*
|
||||
* @return true if "permission" is a proper subset of a permission
|
||||
* granted to this ProtectionDomain.
|
||||
@ -1093,8 +1093,6 @@ public class PolicyFile extends java.security.Policy {
|
||||
* originally granted permission, as well as the Class and name
|
||||
* for the respective <code>Principal</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @param domain the Permissions granted to this
|
||||
* <code>ProtectionDomain</code> are returned.
|
||||
*
|
||||
@ -1131,7 +1129,7 @@ public class PolicyFile extends java.security.Policy {
|
||||
* Examines this Policy and creates a PermissionCollection object with
|
||||
* the set of permissions for the specified CodeSource.
|
||||
*
|
||||
* @param CodeSource the codesource associated with the caller.
|
||||
* @param codesource the CodeSource associated with the caller.
|
||||
* This encapsulates the original location of the code (where the code
|
||||
* came from) and the public key(s) of its signer.
|
||||
*
|
||||
@ -1430,9 +1428,7 @@ public class PolicyFile extends java.security.Policy {
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* @param sp the SelfPermission that needs to be expanded <p>
|
||||
* @param sp the SelfPermission that needs to be expanded.
|
||||
*
|
||||
* @param entryPs list of principals for the Policy entry.
|
||||
*
|
||||
|
@ -45,19 +45,19 @@ import sun.security.util.ResourcesMgr;
|
||||
* is represented as a separate
|
||||
* persistent configuration. The configuration may be stored as a
|
||||
* flat ASCII file, as a serialized binary file of
|
||||
* the Policy class, or as a database. <p>
|
||||
* the Policy class, or as a database.
|
||||
*
|
||||
* <p>The Java runtime creates one global Policy object, which is used to
|
||||
* represent the static policy configuration file. It is consulted by
|
||||
* a ProtectionDomain when the protection domain initializes its set of
|
||||
* permissions. <p>
|
||||
* permissions.
|
||||
*
|
||||
* <p>The Policy <code>init</code> method parses the policy
|
||||
* configuration file, and then
|
||||
* populates the Policy object. The Policy object is agnostic in that
|
||||
* it is not involved in making policy decisions. It is merely the
|
||||
* Java runtime representation of the persistent policy configuration
|
||||
* file. <p>
|
||||
* file.
|
||||
*
|
||||
* <p>When a protection domain needs to initialize its set of
|
||||
* permissions, it executes code such as the following
|
||||
@ -842,8 +842,7 @@ public class PolicyParser {
|
||||
|
||||
/**
|
||||
* Each grant entry in the policy configuration file is
|
||||
* represented by a
|
||||
* GrantEntry object. <p>
|
||||
* represented by a GrantEntry object.
|
||||
*
|
||||
* <p>
|
||||
* For example, the entry
|
||||
@ -1094,7 +1093,7 @@ public class PolicyParser {
|
||||
/**
|
||||
* Each permission entry in the policy configuration file is
|
||||
* represented by a
|
||||
* PermissionEntry object. <p>
|
||||
* PermissionEntry object.
|
||||
*
|
||||
* <p>
|
||||
* For example, the entry
|
||||
|
@ -208,7 +208,7 @@ implements java.io.Serializable {
|
||||
/**
|
||||
* Generates a user-specified number of random bytes.
|
||||
*
|
||||
* @param bytes the array to be filled in with random bytes.
|
||||
* @param result the array to be filled in with random bytes.
|
||||
*/
|
||||
@Override
|
||||
public synchronized void engineNextBytes(byte[] result) {
|
||||
|
@ -41,7 +41,7 @@ import java.util.Base64;
|
||||
import sun.security.pkcs.ParsingException;
|
||||
|
||||
/**
|
||||
* This class defines a certificate factory for X.509 v3 certificates &
|
||||
* This class defines a certificate factory for X.509 v3 certificates {@literal &}
|
||||
* certification paths, and X.509 v2 certificate revocation lists (CRLs).
|
||||
*
|
||||
* @author Jan Luehe
|
||||
@ -536,7 +536,7 @@ public class X509Factory extends CertificateFactorySpi {
|
||||
* after the newline character after the -----END SOMETHING----- line.
|
||||
*
|
||||
* @param is the InputStream
|
||||
* @returns byte block or null if end of stream
|
||||
* @return byte block or null if end of stream
|
||||
* @throws IOException If any parsing error
|
||||
*/
|
||||
private static byte[] readOneBlock(InputStream is) throws IOException {
|
||||
@ -664,7 +664,7 @@ public class X509Factory extends CertificateFactorySpi {
|
||||
* @param is Read from this InputStream
|
||||
* @param bout Write into this OutputStream
|
||||
* @param tag Tag already read (-1 mean not read)
|
||||
* @returns The current tag, used to check EOC in indefinite-length BER
|
||||
* @return The current tag, used to check EOC in indefinite-length BER
|
||||
* @throws IOException Any parsing error
|
||||
*/
|
||||
private static int readBERInternal(InputStream is,
|
||||
|
@ -75,10 +75,10 @@ import java.util.List;
|
||||
* values <code>SUCCEED</code> and <code>FAIL</code> mean that we've come to
|
||||
* the end of the build process, and there will not be any more entries in
|
||||
* the list.
|
||||
* <p>
|
||||
*
|
||||
* @see sun.security.provider.certpath.BuildStep
|
||||
* @see sun.security.provider.certpath.Vertex
|
||||
* <p>
|
||||
*
|
||||
* @author seth proctor
|
||||
* @since 1.4
|
||||
*/
|
||||
|
@ -93,7 +93,7 @@ public class BuildStep {
|
||||
/**
|
||||
* return vertex description for this build step
|
||||
*
|
||||
* @returns Vertex
|
||||
* @return Vertex
|
||||
*/
|
||||
public Vertex getVertex() {
|
||||
return vertex;
|
||||
@ -102,7 +102,7 @@ public class BuildStep {
|
||||
/**
|
||||
* return the certificate associated with this build step
|
||||
*
|
||||
* @returns X509Certificate
|
||||
* @return X509Certificate
|
||||
*/
|
||||
public X509Certificate getCertificate() {
|
||||
return cert;
|
||||
@ -112,7 +112,7 @@ public class BuildStep {
|
||||
* return string form of issuer name from certificate associated with this
|
||||
* build step
|
||||
*
|
||||
* @returns String form of issuer name or null, if no certificate.
|
||||
* @return String form of issuer name or null, if no certificate.
|
||||
*/
|
||||
public String getIssuerName() {
|
||||
return getIssuerName(null);
|
||||
@ -125,7 +125,7 @@ public class BuildStep {
|
||||
*
|
||||
* @param defaultName name to use as default if unable to return an issuer
|
||||
* name from the certificate, or if no certificate.
|
||||
* @returns String form of issuer name or defaultName, if no certificate or
|
||||
* @return String form of issuer name or defaultName, if no certificate or
|
||||
* exception received while trying to extract issuer name from certificate.
|
||||
*/
|
||||
public String getIssuerName(String defaultName) {
|
||||
@ -137,7 +137,7 @@ public class BuildStep {
|
||||
* return string form of subject name from certificate associated with this
|
||||
* build step.
|
||||
*
|
||||
* @returns String form of subject name or null, if no certificate.
|
||||
* @return String form of subject name or null, if no certificate.
|
||||
*/
|
||||
public String getSubjectName() {
|
||||
return getSubjectName(null);
|
||||
@ -151,7 +151,7 @@ public class BuildStep {
|
||||
*
|
||||
* @param defaultName name to use as default if unable to return a subject
|
||||
* name from the certificate, or if no certificate.
|
||||
* @returns String form of subject name or defaultName, if no certificate or
|
||||
* @return String form of subject name or defaultName, if no certificate or
|
||||
* if an exception was received while attempting to extract the subject name
|
||||
* from the certificate.
|
||||
*/
|
||||
@ -163,7 +163,7 @@ public class BuildStep {
|
||||
/**
|
||||
* return the exception associated with this build step.
|
||||
*
|
||||
* @returns Throwable
|
||||
* @return Throwable
|
||||
*/
|
||||
public Throwable getThrowable() {
|
||||
return throwable;
|
||||
@ -173,7 +173,7 @@ public class BuildStep {
|
||||
* return the result code associated with this build step. The result codes
|
||||
* are POSSIBLE, FOLLOW, BACK, FAIL, SUCCEED.
|
||||
*
|
||||
* @returns int result code
|
||||
* @return int result code
|
||||
*/
|
||||
public int getResult() {
|
||||
return result;
|
||||
@ -184,7 +184,7 @@ public class BuildStep {
|
||||
* with this build step.
|
||||
*
|
||||
* @param res result code
|
||||
* @returns String string representing meaning of the result code
|
||||
* @return String string representing meaning of the result code
|
||||
*/
|
||||
public String resultToString(int res) {
|
||||
String resultString = "";
|
||||
@ -216,7 +216,7 @@ public class BuildStep {
|
||||
* return a string representation of this build step, showing minimal
|
||||
* detail.
|
||||
*
|
||||
* @returns String
|
||||
* @return String
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
@ -243,7 +243,7 @@ public class BuildStep {
|
||||
* the vertex state appropriate to the result of this build step, and the
|
||||
* certificate contents.
|
||||
*
|
||||
* @returns String
|
||||
* @return String
|
||||
*/
|
||||
public String verboseToString() {
|
||||
String out = resultToString(getResult());
|
||||
@ -269,7 +269,7 @@ public class BuildStep {
|
||||
* return a string representation of this build step, including all possible
|
||||
* detail of the vertex state, but not including the certificate contents.
|
||||
*
|
||||
* @returns String
|
||||
* @return String
|
||||
*/
|
||||
public String fullToString() {
|
||||
return resultToString(getResult()) + vertex.toString();
|
||||
|
@ -849,7 +849,7 @@ class PolicyChecker extends PKIXCertPathChecker {
|
||||
* @param initPolicies the Set of policies required by the user
|
||||
* @param currCertPolicies the CertificatePoliciesExtension of the
|
||||
* certificate being processed
|
||||
* @returns the root node of the valid policy tree after modification
|
||||
* @return the root node of the valid policy tree after modification
|
||||
* @exception CertPathValidatorException Exception thrown if error occurs.
|
||||
*/
|
||||
private static PolicyNodeImpl removeInvalidNodes(PolicyNodeImpl rootNode,
|
||||
@ -909,7 +909,7 @@ class PolicyChecker extends PKIXCertPathChecker {
|
||||
* valid policy tree is null. Marks each node of the returned tree
|
||||
* immutable and thread-safe.
|
||||
*
|
||||
* @returns the root node of the valid policy tree, or null if
|
||||
* @return the root node of the valid policy tree, or null if
|
||||
* the valid policy tree is null
|
||||
*/
|
||||
PolicyNode getPolicyTree() {
|
||||
|
@ -67,7 +67,7 @@ public class Vertex {
|
||||
/**
|
||||
* return the certificate for this vertex
|
||||
*
|
||||
* @returns X509Certificate
|
||||
* @return X509Certificate
|
||||
*/
|
||||
public X509Certificate getCertificate() {
|
||||
return cert;
|
||||
@ -78,7 +78,7 @@ public class Vertex {
|
||||
* adjacency list that contains certificates that could follow this
|
||||
* certificate.
|
||||
*
|
||||
* @returns int index for this vertex, or -1 if no following certificates.
|
||||
* @return int index for this vertex, or -1 if no following certificates.
|
||||
*/
|
||||
public int getIndex() {
|
||||
return index;
|
||||
@ -99,7 +99,7 @@ public class Vertex {
|
||||
* return the throwable associated with this vertex;
|
||||
* returns null if none.
|
||||
*
|
||||
* @returns Throwable
|
||||
* @return Throwable
|
||||
*/
|
||||
public Throwable getThrowable() {
|
||||
return throwable;
|
||||
@ -118,7 +118,7 @@ public class Vertex {
|
||||
/**
|
||||
* Return full string representation of vertex
|
||||
*
|
||||
* @returns String representation of vertex
|
||||
* @return String representation of vertex
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
@ -129,7 +129,7 @@ public class Vertex {
|
||||
* Return string representation of this vertex's
|
||||
* certificate information.
|
||||
*
|
||||
* @returns String representation of certificate info
|
||||
* @return String representation of certificate info
|
||||
*/
|
||||
public String certToString() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
@ -197,7 +197,7 @@ public class Vertex {
|
||||
* return Vertex throwable as String compatible with
|
||||
* the way toString returns other information
|
||||
*
|
||||
* @returns String form of exception (or "none")
|
||||
* @return String form of exception (or "none")
|
||||
*/
|
||||
public String throwableToString() {
|
||||
StringBuilder sb = new StringBuilder("Exception: ");
|
||||
@ -214,7 +214,7 @@ public class Vertex {
|
||||
* the way other Vertex.xToString() methods display
|
||||
* information.
|
||||
*
|
||||
* @returns String form of index as "Last cert? [Yes/No]
|
||||
* @return String form of index as "Last cert? [Yes/No]
|
||||
*/
|
||||
public String moreToString() {
|
||||
StringBuilder sb = new StringBuilder("Last cert? ");
|
||||
@ -227,7 +227,7 @@ public class Vertex {
|
||||
* return Vertex index as String compatible with
|
||||
* the way other Vertex.xToString() methods displays other information.
|
||||
*
|
||||
* @returns String form of index as "Index: [numeric index]"
|
||||
* @return String form of index as "Index: [numeric index]"
|
||||
*/
|
||||
public String indexToString() {
|
||||
return "Index: " + index + "\n";
|
||||
|
@ -133,7 +133,7 @@ public final class RSAKeyFactory extends KeyFactorySpi {
|
||||
*
|
||||
* @param modulusLen the bit length of the RSA modulus.
|
||||
* @param exponent the RSA exponent
|
||||
* @param minModulusLen if > 0, check to see if modulusLen is at
|
||||
* @param minModulusLen if {@literal > 0}, check to see if modulusLen is at
|
||||
* least this long, otherwise unused.
|
||||
* @param maxModulusLen caller will allow this max number of bits.
|
||||
* Allow the smaller of the system-defined maximum and this param.
|
||||
|
@ -39,11 +39,13 @@ import java.security.CryptoPrimitive;
|
||||
*
|
||||
* Checks for a particular version number should generally take this form:
|
||||
*
|
||||
* <pre>{@code
|
||||
* if (protocolVersion.v >= ProtocolVersion.TLS10) {
|
||||
* // TLS 1.0 code goes here
|
||||
* } else {
|
||||
* // SSL 3.0 code here
|
||||
* }
|
||||
* }</pre>
|
||||
*
|
||||
* @author Andreas Sterbenz
|
||||
* @since 1.4.1
|
||||
|
@ -68,7 +68,7 @@ public class HttpTimestamper implements Timestamper {
|
||||
/**
|
||||
* Creates a timestamper that connects to the specified TSA.
|
||||
*
|
||||
* @param tsa The location of the TSA. It must be an HTTP or HTTPS URI.
|
||||
* @param tsaURI The location of the TSA. It must be an HTTP or HTTPS URI.
|
||||
* @throws IllegalArgumentException if tsaURI is not an HTTP or HTTPS URI
|
||||
*/
|
||||
public HttpTimestamper(URI tsaURI) {
|
||||
|
@ -112,7 +112,7 @@ public class TSRequest {
|
||||
/**
|
||||
* Sets an object identifier for the Time-Stamp Protocol policy.
|
||||
*
|
||||
* @param version The policy object identifier.
|
||||
* @param policyId The policy object identifier.
|
||||
*/
|
||||
public void setPolicyId(String policyId) {
|
||||
this.policyId = policyId;
|
||||
|
@ -83,8 +83,8 @@ public class TimestampToken {
|
||||
/**
|
||||
* Constructs an object to store a timestamp token.
|
||||
*
|
||||
* @param status A buffer containing the ASN.1 BER encoding of the
|
||||
* TSTInfo element defined in RFC 3161.
|
||||
* @param timestampTokenInfo A buffer containing the ASN.1 BER encoding of the
|
||||
* TSTInfo element defined in RFC 3161.
|
||||
*/
|
||||
public TimestampToken(byte[] timestampTokenInfo) throws IOException {
|
||||
if (timestampTokenInfo == null) {
|
||||
|
@ -42,7 +42,7 @@ public class PathList {
|
||||
* Utility method for appending path from pathFrom to pathTo.
|
||||
*
|
||||
* @param pathTo the target path
|
||||
* @param pathSource the path to be appended to pathTo
|
||||
* @param pathFrom the path to be appended to pathTo
|
||||
* @return the resulting path
|
||||
*/
|
||||
public static String appendPath(String pathTo, String pathFrom) {
|
||||
|
@ -1887,7 +1887,7 @@ public final class Main {
|
||||
|
||||
/**
|
||||
* Load the srckeystore from a stream, used in -importkeystore
|
||||
* @returns the src KeyStore
|
||||
* @return the src KeyStore
|
||||
*/
|
||||
KeyStore loadSourceKeyStore() throws Exception {
|
||||
boolean isPkcs11 = false;
|
||||
@ -2005,7 +2005,7 @@ public final class Main {
|
||||
|
||||
/**
|
||||
* Import a single entry named alias from srckeystore
|
||||
* @returns 1 if the import action succeed
|
||||
* @return 1 if the import action succeed
|
||||
* 0 if user choose to ignore an alias-dumplicated entry
|
||||
* 2 if setEntry throws Exception
|
||||
*/
|
||||
@ -2836,7 +2836,7 @@ public final class Main {
|
||||
/**
|
||||
* Prompts user for alias name.
|
||||
* @param prompt the {0} of "Enter {0} alias name: " in prompt line
|
||||
* @returns the string entered by the user, without the \n at the end
|
||||
* @return the string entered by the user, without the \n at the end
|
||||
*/
|
||||
private String getAlias(String prompt) throws Exception {
|
||||
if (prompt != null) {
|
||||
@ -2854,7 +2854,7 @@ public final class Main {
|
||||
/**
|
||||
* Prompts user for an input string from the command line (System.in)
|
||||
* @prompt the prompt string printed
|
||||
* @returns the string entered by the user, without the \n at the end
|
||||
* @return the string entered by the user, without the \n at the end
|
||||
*/
|
||||
private String inputStringFromStdin(String prompt) throws Exception {
|
||||
System.err.print(prompt);
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_de extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_es extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_fr extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_it extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_ja extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_ko extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_pt_BR extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_sv extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_zh_CN extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -420,8 +420,6 @@ public class Resources_zh_HK extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.tools.keytool;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for the keytool.
|
||||
*
|
||||
*/
|
||||
@ -433,8 +433,6 @@ public class Resources_zh_TW extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -66,10 +66,10 @@ public class BitArray {
|
||||
|
||||
/**
|
||||
* Creates a BitArray of the specified size, initialized from the
|
||||
* specified byte array. The most significant bit of a[0] gets
|
||||
* specified byte array. The most significant bit of {@code a[0]} gets
|
||||
* index zero in the BitArray. The array a must be large enough
|
||||
* to specify a value for every bit in the BitArray. In other words,
|
||||
* 8*a.length <= length.
|
||||
* {@code 8*a.length <= length}.
|
||||
*/
|
||||
public BitArray(int length, byte[] a) throws IllegalArgumentException {
|
||||
|
||||
|
@ -44,8 +44,9 @@ public class ByteArrayLexOrder implements Comparator<byte[]> {
|
||||
*
|
||||
* @param bytes1 first byte array to compare.
|
||||
* @param bytes2 second byte array to compare.
|
||||
* @return negative number if bytes1 < bytes2, 0 if bytes1 == bytes2,
|
||||
* positive number if bytes1 > bytes2.
|
||||
* @return negative number if {@code bytes1 < bytes2},
|
||||
* 0 if {@code bytes1 == bytes2},
|
||||
* positive number if {@code bytes1 > bytes2}.
|
||||
*
|
||||
* @exception <code>ClassCastException</code>
|
||||
* if either argument is not a byte array.
|
||||
|
@ -44,8 +44,9 @@ public class ByteArrayTagOrder implements Comparator<byte[]> {
|
||||
*
|
||||
* @param bytes1 first byte array to compare.
|
||||
* @param bytes2 second byte array to compare.
|
||||
* @return negative number if bytes1 < bytes2, 0 if bytes1 == bytes2,
|
||||
* positive number if bytes1 > bytes2.
|
||||
* @return negative number if {@code bytes1 < bytes2},
|
||||
* 0 if {@code bytes1 == bytes2},
|
||||
* positive number if {@code bytes1 > bytes2}.
|
||||
*
|
||||
* @exception <code>ClassCastException</code>
|
||||
* if either argument is not a byte array.
|
||||
|
@ -103,7 +103,7 @@ extends ByteArrayOutputStream implements DerEncoder {
|
||||
* @param tag the DER value of the context-specific tag that replaces
|
||||
* original tag of the value in the output, such as in
|
||||
* <pre>
|
||||
* <em> <field> [N] IMPLICIT <type></em>
|
||||
* <em> {@code <field> [N] IMPLICIT <type>}</em>
|
||||
* </pre>
|
||||
* For example, <em>FooLength [1] IMPLICIT INTEGER</em>, with value=4;
|
||||
* would be encoded as "81 01 04" whereas in explicit
|
||||
@ -245,7 +245,7 @@ extends ByteArrayOutputStream implements DerEncoder {
|
||||
* Marshals a DER bit string on the output stream.
|
||||
* The bit strings need not be byte-aligned.
|
||||
*
|
||||
* @param bits the bit string, MSB first
|
||||
* @param ba the bit string, MSB first
|
||||
*/
|
||||
public void putUnalignedBitString(BitArray ba) throws IOException {
|
||||
byte[] bits = ba.toByteArray();
|
||||
@ -260,7 +260,7 @@ extends ByteArrayOutputStream implements DerEncoder {
|
||||
* Marshals a truncated DER bit string on the output stream.
|
||||
* The bit strings need not be byte-aligned.
|
||||
*
|
||||
* @param bits the bit string, MSB first
|
||||
* @param ba the bit string, MSB first
|
||||
*/
|
||||
public void putTruncatedUnalignedBitString(BitArray ba) throws IOException {
|
||||
putUnalignedBitString(ba.truncate());
|
||||
@ -516,7 +516,7 @@ extends ByteArrayOutputStream implements DerEncoder {
|
||||
/**
|
||||
* Put the encoding of the length in the stream.
|
||||
*
|
||||
* @params len the length of the attribute.
|
||||
* @param len the length of the attribute.
|
||||
* @exception IOException on writing errors.
|
||||
*/
|
||||
public void putLength(int len) throws IOException {
|
||||
@ -550,11 +550,11 @@ extends ByteArrayOutputStream implements DerEncoder {
|
||||
/**
|
||||
* Put the tag of the attribute in the stream.
|
||||
*
|
||||
* @params class the tag class type, one of UNIVERSAL, CONTEXT,
|
||||
* APPLICATION or PRIVATE
|
||||
* @params form if true, the value is constructed, otherwise it is
|
||||
* @param tagClass the tag class type, one of UNIVERSAL, CONTEXT,
|
||||
* APPLICATION or PRIVATE
|
||||
* @param form if true, the value is constructed, otherwise it is
|
||||
* primitive.
|
||||
* @params val the tag value
|
||||
* @param val the tag value
|
||||
*/
|
||||
public void putTag(byte tagClass, boolean form, byte val) {
|
||||
byte tag = (byte)(tagClass | val);
|
||||
|
@ -301,7 +301,7 @@ public class DerValue {
|
||||
*
|
||||
* @param buf the buffer
|
||||
* @param offset start point of the single DER-encoded dataum
|
||||
* @param length how many bytes are in the encoded datum
|
||||
* @param len how many bytes are in the encoded datum
|
||||
*/
|
||||
public DerValue(byte[] buf, int offset, int len) throws IOException {
|
||||
data = init(true, new ByteArrayInputStream(buf, offset, len));
|
||||
@ -594,7 +594,7 @@ public class DerValue {
|
||||
* Returns an ASN.1 BIT STRING value, with the tag assumed implicit
|
||||
* based on the parameter. The bit string must be byte-aligned.
|
||||
*
|
||||
* @params tagImplicit if true, the tag is assumed implicit.
|
||||
* @param tagImplicit if true, the tag is assumed implicit.
|
||||
* @return the bit string held in this value
|
||||
*/
|
||||
public byte[] getBitString(boolean tagImplicit) throws IOException {
|
||||
@ -610,7 +610,7 @@ public class DerValue {
|
||||
* Returns an ASN.1 BIT STRING value, with the tag assumed implicit
|
||||
* based on the parameter. The bit string need not be byte-aligned.
|
||||
*
|
||||
* @params tagImplicit if true, the tag is assumed implicit.
|
||||
* @param tagImplicit if true, the tag is assumed implicit.
|
||||
* @return the bit string held in this value
|
||||
*/
|
||||
public BitArray getUnalignedBitString(boolean tagImplicit)
|
||||
@ -750,7 +750,7 @@ public class DerValue {
|
||||
* encoding, so that bitwise equality of the encoded values is an
|
||||
* efficient way to establish equivalence of the unencoded values.
|
||||
*
|
||||
* @param other the object being compared with this one
|
||||
* @param o the object being compared with this one
|
||||
*/
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
@ -892,11 +892,11 @@ public class DerValue {
|
||||
/**
|
||||
* Create the tag of the attribute.
|
||||
*
|
||||
* @params class the tag class type, one of UNIVERSAL, CONTEXT,
|
||||
* @param tagClass the tag class type, one of UNIVERSAL, CONTEXT,
|
||||
* APPLICATION or PRIVATE
|
||||
* @params form if true, the value is constructed, otherwise it
|
||||
* @param form if true, the value is constructed, otherwise it
|
||||
* is primitive.
|
||||
* @params val the tag value
|
||||
* @param val the tag value
|
||||
*/
|
||||
public static byte createTag(byte tagClass, boolean form, byte val) {
|
||||
byte tag = (byte)(tagClass | val);
|
||||
@ -910,7 +910,7 @@ public class DerValue {
|
||||
* Set the tag of the attribute. Commonly used to reset the
|
||||
* tag value used for IMPLICIT encodings.
|
||||
*
|
||||
* @params tag the tag value
|
||||
* @param tag the tag value
|
||||
*/
|
||||
public void resetTag(byte tag) {
|
||||
this.tag = tag;
|
||||
|
@ -100,11 +100,10 @@ public final class KeyUtil {
|
||||
* <P>
|
||||
* Note that this method is only apply to DHPublicKey at present.
|
||||
*
|
||||
* @param publicKey
|
||||
* the key object, cannot be null
|
||||
* @param key the key object, cannot be null
|
||||
*
|
||||
* @throws NullPointerException if {@code publicKey} is null
|
||||
* @throws InvalidKeyException if {@code publicKey} is invalid
|
||||
* @throws NullPointerException if {@code key} is null
|
||||
* @throws InvalidKeyException if {@code key} is invalid
|
||||
*/
|
||||
public static final void validate(Key key)
|
||||
throws InvalidKeyException {
|
||||
@ -165,7 +164,8 @@ public final class KeyUtil {
|
||||
* version numbers in a manner indistinguishable from correctly
|
||||
* formatted RSA blocks.
|
||||
*
|
||||
* RFC 5246 describes the approach as :
|
||||
* RFC 5246 describes the approach as:
|
||||
* <pre>{@literal
|
||||
*
|
||||
* 1. Generate a string R of 48 random bytes
|
||||
*
|
||||
@ -183,6 +183,7 @@ public final class KeyUtil {
|
||||
* premaster secret = M
|
||||
*
|
||||
* Note that #2 should have completed before the call to this method.
|
||||
* }</pre>
|
||||
*
|
||||
* @param clientVersion the version of the TLS protocol by which the
|
||||
* client wishes to communicate during this session
|
||||
@ -190,7 +191,7 @@ public final class KeyUtil {
|
||||
* contains the lower of that suggested by the client in the client
|
||||
* hello and the highest supported by the server.
|
||||
* @param encoded the encoded key in its "RAW" encoding format
|
||||
* @param isFailover whether or not the previous decryption of the
|
||||
* @param isFailOver whether or not the previous decryption of the
|
||||
* encrypted PreMasterSecret message run into problem
|
||||
* @return the polished PreMasterSecret key in its "RAW" encoding format
|
||||
*/
|
||||
|
@ -59,7 +59,7 @@ public class ManifestDigester {
|
||||
*
|
||||
* @pos set by
|
||||
*
|
||||
* @returns false if end of bytes has been reached, otherwise returns
|
||||
* @return false if end of bytes has been reached, otherwise returns
|
||||
* true
|
||||
*/
|
||||
@SuppressWarnings("fallthrough")
|
||||
|
@ -47,8 +47,6 @@ public class PendingException extends RuntimeException {
|
||||
* A detail message is a String that describes this particular
|
||||
* exception.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @param msg the detail message.
|
||||
*/
|
||||
public PendingException(String msg) {
|
||||
|
@ -26,7 +26,7 @@
|
||||
package sun.security.util;
|
||||
|
||||
/**
|
||||
* <p> This class represents the <code>ResourceBundle</code>
|
||||
* This class represents the <code>ResourceBundle</code>
|
||||
* for javax.security.auth and sun.security.
|
||||
*
|
||||
*/
|
||||
@ -160,8 +160,6 @@ public class Resources extends java.util.ListResourceBundle {
|
||||
/**
|
||||
* Returns the contents of this <code>ResourceBundle</code>.
|
||||
*
|
||||
* <p>
|
||||
*
|
||||
* @return the contents of this <code>ResourceBundle</code>.
|
||||
*/
|
||||
@Override
|
||||
|
@ -159,7 +159,7 @@ public class SignatureFileVerifier {
|
||||
* unknown signature related files (those starting with SIG- with
|
||||
* an optional [A-Z0-9]{1,3} extension right inside META-INF).
|
||||
*
|
||||
* @param s file name
|
||||
* @param name file name
|
||||
* @return true if the input file name is signature related
|
||||
*/
|
||||
public static boolean isSigningRelated(String name) {
|
||||
|
@ -36,7 +36,7 @@ import sun.security.provider.certpath.AlgorithmChecker;
|
||||
|
||||
/**
|
||||
* Validator implementation built on the PKIX CertPath API. This
|
||||
* implementation will be emphasized going forward.<p>
|
||||
* implementation will be emphasized going forward.
|
||||
* <p>
|
||||
* Note that the validate() implementation tries to use a PKIX validator
|
||||
* if that appears possible and a PKIX builder otherwise. This increases
|
||||
|
@ -228,7 +228,7 @@ public abstract class Validator {
|
||||
* used (see JSSE X509TrustManager specification). In the future, it
|
||||
* could be used to pass in a PKCS#7 object for code signing to check time
|
||||
* stamps.
|
||||
* <p>
|
||||
*
|
||||
* @return a non-empty chain that was used to validate the path. The
|
||||
* end entity cert is at index 0, the trust anchor at index n-1.
|
||||
*/
|
||||
|
@ -39,7 +39,7 @@ import sun.security.util.*;
|
||||
* NIST/IETF standard DER encoding. These are used to implement the Digital
|
||||
* Signature Standard (DSS), FIPS 186.
|
||||
*
|
||||
* <P><em><b>NOTE:</b> DSS/DSA Algorithm IDs may be created without these
|
||||
* <P><em><b>NOTE:</b></em> DSS/DSA Algorithm IDs may be created without these
|
||||
* parameters. Use of DSS/DSA in modes where parameters are
|
||||
* either implicit (e.g. a default applicable to a site or a larger scope),
|
||||
* or are derived from some Certificate Authority's DSS certificate, is
|
||||
@ -49,8 +49,8 @@ import sun.security.util.*;
|
||||
* that we have a certificate called <code>currentCert</code> which doesn't
|
||||
* contain DSS/DSA parameters and we need to derive DSS/DSA parameters
|
||||
* from a CA's certificate called <code>caCert</code>.
|
||||
* <p>
|
||||
* <code><pre>
|
||||
*
|
||||
* <pre>{@code
|
||||
* // key containing parameters to use
|
||||
* DSAPublicKey cAKey = (DSAPublicKey)(caCert.getPublicKey());
|
||||
* // key without parameters
|
||||
@ -63,7 +63,7 @@ import sun.security.util.*;
|
||||
* cAKeyParams.getQ(),
|
||||
* cAKeyParams.getG());
|
||||
* DSAPublicKey usableKey = kf.generatePublic(ks);
|
||||
* </pre></code>
|
||||
* }</pre>
|
||||
*
|
||||
* @see java.security.interfaces.DSAParams
|
||||
* @see java.security.interfaces.DSAPublicKey
|
||||
|
@ -58,7 +58,7 @@ import sun.security.util.DerValue;
|
||||
* accessMethod OBJECT IDENTIFIER,
|
||||
* accessLocation GeneralName }
|
||||
* </pre>
|
||||
* <p>
|
||||
*
|
||||
* @see Extension
|
||||
* @see CertAttrSet
|
||||
*/
|
||||
|
@ -117,17 +117,17 @@ implements CertAttrSet<String> {
|
||||
* The default constructor for this extension. Null parameters make
|
||||
* the element optional (not present).
|
||||
*
|
||||
* @param id the KeyIdentifier associated with this extension.
|
||||
* @param kid the KeyIdentifier associated with this extension.
|
||||
* @param names the GeneralNames associated with this extension
|
||||
* @param serialNum the CertificateSerialNumber associated with
|
||||
* this extension.
|
||||
* @param sn the CertificateSerialNumber associated with
|
||||
* this extension.
|
||||
* @exception IOException on error.
|
||||
*/
|
||||
public AuthorityKeyIdentifierExtension(KeyIdentifier kid, GeneralNames name,
|
||||
public AuthorityKeyIdentifierExtension(KeyIdentifier kid, GeneralNames names,
|
||||
SerialNumber sn)
|
||||
throws IOException {
|
||||
this.id = kid;
|
||||
this.names = name;
|
||||
this.names = names;
|
||||
this.serialNum = sn;
|
||||
|
||||
this.extensionId = PKIXExtensions.AuthorityKey_Id;
|
||||
|
@ -71,7 +71,7 @@ import sun.security.util.ObjectIdentifier;
|
||||
*
|
||||
* CRLDistPointsSyntax ::= SEQUENCE SIZE (1..MAX) OF DistributionPoint
|
||||
* </pre>
|
||||
* <p>
|
||||
*
|
||||
* @author Anne Anderson
|
||||
* @author Andreas Sterbenz
|
||||
* @since 1.4.2
|
||||
|
@ -57,7 +57,7 @@ public class CertificateSerialNumber implements CertAttrSet<String> {
|
||||
/**
|
||||
* Default constructor for the certificate attribute.
|
||||
*
|
||||
* @param serial the serial number for the certificate.
|
||||
* @param num the serial number for the certificate.
|
||||
*/
|
||||
public CertificateSerialNumber(BigInteger num) {
|
||||
this.serial = new SerialNumber(num);
|
||||
@ -66,7 +66,7 @@ public class CertificateSerialNumber implements CertAttrSet<String> {
|
||||
/**
|
||||
* Default constructor for the certificate attribute.
|
||||
*
|
||||
* @param serial the serial number for the certificate.
|
||||
* @param num the serial number for the certificate.
|
||||
*/
|
||||
public CertificateSerialNumber(int num) {
|
||||
this.serial = new SerialNumber(num);
|
||||
|
@ -44,7 +44,7 @@ import sun.security.util.*;
|
||||
* the DNS representation for Internet mail addresses (wpolk.nist.gov
|
||||
* instead of wpolk@nist.gov) is not permitted; such identities are to
|
||||
* be encoded as rfc822Name.
|
||||
* <p>
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
* @author Hemma Prafullchandra
|
||||
*/
|
||||
@ -186,9 +186,9 @@ public class DNSName implements GeneralNameInterface {
|
||||
* domain name comparisons for all present domain functions are done in a
|
||||
* case-insensitive manner, assuming an ASCII character set, and a high
|
||||
* order zero bit.
|
||||
* <p>
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -228,7 +228,7 @@ public class DNSName implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -143,9 +143,9 @@ public class DistributionPoint {
|
||||
* Constructor for the class using GeneralNames for DistributionPointName
|
||||
*
|
||||
* @param fullName the GeneralNames of the distribution point; may be null
|
||||
* @param reasons the CRL reasons included in the CRL at this distribution
|
||||
* @param reasonFlags the CRL reasons included in the CRL at this distribution
|
||||
* point; may be null
|
||||
* @param issuer the name(s) of the CRL issuer for the CRL at this
|
||||
* @param crlIssuer the name(s) of the CRL issuer for the CRL at this
|
||||
* distribution point; may be null
|
||||
*/
|
||||
public DistributionPoint(GeneralNames fullName, boolean[] reasonFlags,
|
||||
@ -165,9 +165,9 @@ public class DistributionPoint {
|
||||
*
|
||||
* @param relativeName the RelativeDistinguishedName of the distribution
|
||||
* point; may not be null
|
||||
* @param reasons the CRL reasons included in the CRL at this distribution
|
||||
* @param reasonFlags the CRL reasons included in the CRL at this distribution
|
||||
* point; may be null
|
||||
* @param issuer the name(s) of the CRL issuer for the CRL at this
|
||||
* @param crlIssuer the name(s) of the CRL issuer for the CRL at this
|
||||
* distribution point; may not be null or empty.
|
||||
*/
|
||||
public DistributionPoint(RDN relativeName, boolean[] reasonFlags,
|
||||
|
@ -146,7 +146,7 @@ public class EDIPartyName implements GeneralNameInterface {
|
||||
/**
|
||||
* Return the assignerName
|
||||
*
|
||||
* @returns String assignerName
|
||||
* @return String assignerName
|
||||
*/
|
||||
public String getAssignerName() {
|
||||
return assigner;
|
||||
@ -155,7 +155,7 @@ public class EDIPartyName implements GeneralNameInterface {
|
||||
/**
|
||||
* Return the partyName
|
||||
*
|
||||
* @returns String partyName
|
||||
* @return String partyName
|
||||
*/
|
||||
public String getPartyName() {
|
||||
return party;
|
||||
@ -166,7 +166,7 @@ public class EDIPartyName implements GeneralNameInterface {
|
||||
* comparison without regard to type of the partyName and
|
||||
* the assignerName.
|
||||
*
|
||||
* @returns true if the two names match
|
||||
* @return true if the two names match
|
||||
*/
|
||||
public boolean equals(Object other) {
|
||||
if (!(other instanceof EDIPartyName))
|
||||
@ -226,7 +226,7 @@ public class EDIPartyName implements GeneralNameInterface {
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is same type, but comparison operations are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -247,7 +247,7 @@ public class EDIPartyName implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -75,7 +75,7 @@ import sun.security.util.ObjectIdentifier;
|
||||
* processed independently and the certificate MUST only be used for a
|
||||
* purpose consistent with both fields. If there is no purpose
|
||||
* consistent with both fields, then the certificate MUST NOT be used
|
||||
* for any purpose.<p>
|
||||
* for any purpose.
|
||||
*
|
||||
* @since 1.4
|
||||
*/
|
||||
|
@ -50,11 +50,11 @@ import sun.security.util.*;
|
||||
* }
|
||||
* </pre>
|
||||
* All subclasses need to implement a constructor of the form
|
||||
* <pre>
|
||||
* <pre>{@code
|
||||
* <subclass> (Boolean, Object)
|
||||
* </pre>
|
||||
* }</pre>
|
||||
* where the Object is typically an array of DER encoded bytes.
|
||||
* <p>
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
* @author Hemma Prafullchandra
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -116,6 +116,15 @@ public class GeneralName {
|
||||
}
|
||||
break;
|
||||
|
||||
case GeneralNameInterface.NAME_X400:
|
||||
if (encName.isContextSpecific() && encName.isConstructed()) {
|
||||
encName.resetTag(DerValue.tag_IA5String);
|
||||
name = new X400Address(encName);
|
||||
} else {
|
||||
throw new IOException("Invalid encoding of X400Address name");
|
||||
}
|
||||
break;
|
||||
|
||||
case GeneralNameInterface.NAME_URI:
|
||||
if (encName.isContextSpecific() && !encName.isConstructed()) {
|
||||
encName.resetTag(DerValue.tag_IA5String);
|
||||
@ -193,7 +202,7 @@ public class GeneralName {
|
||||
* Compare this GeneralName with another
|
||||
*
|
||||
* @param other GeneralName to compare to this
|
||||
* @returns true if match
|
||||
* @return true if match
|
||||
*/
|
||||
public boolean equals(Object other) {
|
||||
if (this == other) {
|
||||
|
@ -85,7 +85,7 @@ public interface GeneralNameInterface {
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is same type, but comparison operations are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -96,7 +96,7 @@ public interface GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
int subtreeDepth() throws UnsupportedOperationException;
|
||||
|
@ -126,7 +126,7 @@ public class GeneralNames {
|
||||
/**
|
||||
* compare this GeneralNames to other object for equality
|
||||
*
|
||||
* @returns true iff this equals other
|
||||
* @return true if this equals obj
|
||||
*/
|
||||
public boolean equals(Object obj) {
|
||||
if (this == obj) {
|
||||
|
@ -56,9 +56,9 @@ public class GeneralSubtree {
|
||||
/**
|
||||
* The default constructor for the class.
|
||||
*
|
||||
* @params name the GeneralName
|
||||
* @params min the minimum BaseDistance
|
||||
* @params max the maximum BaseDistance
|
||||
* @param name the GeneralName
|
||||
* @param min the minimum BaseDistance
|
||||
* @param max the maximum BaseDistance
|
||||
*/
|
||||
public GeneralSubtree(GeneralName name, int min, int max) {
|
||||
this.name = name;
|
||||
@ -142,7 +142,7 @@ public class GeneralSubtree {
|
||||
* Compare this GeneralSubtree with another
|
||||
*
|
||||
* @param other GeneralSubtree to compare to this
|
||||
* @returns true if match
|
||||
* @return true if match
|
||||
*/
|
||||
public boolean equals(Object other) {
|
||||
if (!(other instanceof GeneralSubtree))
|
||||
@ -187,7 +187,7 @@ public class GeneralSubtree {
|
||||
/**
|
||||
* Encode the GeneralSubtree.
|
||||
*
|
||||
* @params out the DerOutputStream to encode this object to.
|
||||
* @param out the DerOutputStream to encode this object to.
|
||||
*/
|
||||
public void encode(DerOutputStream out) throws IOException {
|
||||
DerOutputStream seq = new DerOutputStream();
|
||||
|
@ -37,7 +37,6 @@ import sun.security.util.*;
|
||||
* <pre>
|
||||
* GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
|
||||
* </pre>
|
||||
* </p>
|
||||
*
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
@ -132,7 +131,7 @@ public class GeneralSubtrees implements Cloneable {
|
||||
/**
|
||||
* Encode the GeneralSubtrees.
|
||||
*
|
||||
* @params out the DerOutputStrean to encode this object to.
|
||||
* @param out the DerOutputStrean to encode this object to.
|
||||
*/
|
||||
public void encode(DerOutputStream out) throws IOException {
|
||||
DerOutputStream seq = new DerOutputStream();
|
||||
@ -147,8 +146,8 @@ public class GeneralSubtrees implements Cloneable {
|
||||
* Compare two general subtrees by comparing the subtrees
|
||||
* of each.
|
||||
*
|
||||
* @param other GeneralSubtrees to compare to this
|
||||
* @returns true if match
|
||||
* @param obj GeneralSubtrees to compare to this
|
||||
* @return true if match
|
||||
*/
|
||||
public boolean equals(Object obj) {
|
||||
if (this == obj) {
|
||||
@ -236,8 +235,8 @@ public class GeneralSubtrees implements Cloneable {
|
||||
* create a subtree containing an instance of the input
|
||||
* name type that widens all other names of that type.
|
||||
*
|
||||
* @params name GeneralNameInterface name
|
||||
* @returns GeneralSubtree containing widest name of that type
|
||||
* @param name GeneralNameInterface name
|
||||
* @return GeneralSubtree containing widest name of that type
|
||||
* @throws RuntimeException on error (should not occur)
|
||||
*/
|
||||
private GeneralSubtree createWidestSubtree(GeneralNameInterface name) {
|
||||
@ -309,10 +308,10 @@ public class GeneralSubtrees implements Cloneable {
|
||||
* the result contains the name in other. This means that
|
||||
* the name is now constrained in some way, whereas before it was
|
||||
* completely permitted.
|
||||
* <ul>
|
||||
* </ul>
|
||||
*
|
||||
* @param other GeneralSubtrees to be intersected with this
|
||||
* @returns GeneralSubtrees to be merged with excluded; these are
|
||||
* @return GeneralSubtrees to be merged with excluded; these are
|
||||
* empty-valued name types corresponding to entries that were
|
||||
* of the same type but did not share the same subtree between
|
||||
* this and other. Returns null if no such.
|
||||
|
@ -75,7 +75,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
/**
|
||||
* Create the IPAddressName object from the passed encoded Der value.
|
||||
*
|
||||
* @params derValue the encoded DER IPAddressName.
|
||||
* @param derValue the encoded DER IPAddressName.
|
||||
* @exception IOException on error.
|
||||
*/
|
||||
public IPAddressName(DerValue derValue) throws IOException {
|
||||
@ -85,7 +85,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
/**
|
||||
* Create the IPAddressName object with the specified octets.
|
||||
*
|
||||
* @params address the IP address
|
||||
* @param address the IP address
|
||||
* @throws IOException if address is not a valid IPv4 or IPv6 address
|
||||
*/
|
||||
public IPAddressName(byte[] address) throws IOException {
|
||||
@ -106,7 +106,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
|
||||
/**
|
||||
* Create an IPAddressName from a String.
|
||||
* [IETF RFC1338 Supernetting & IETF RFC1519 Classless Inter-Domain
|
||||
* [IETF RFC1338 Supernetting {@literal &} IETF RFC1519 Classless Inter-Domain
|
||||
* Routing (CIDR)] For IPv4 addresses, the forms are
|
||||
* "b1.b2.b3.b4" or "b1.b2.b3.b4/m1.m2.m3.m4", where b1 - b4 are decimal
|
||||
* byte values 0-255 and m1 - m4 are decimal mask values
|
||||
@ -118,7 +118,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
* of the address. If /n is used, n is a decimal number indicating how many
|
||||
* of the leftmost contiguous bits of the address comprise the prefix for
|
||||
* this subnet. Internally, a mask value is created using the prefix length.
|
||||
* <p>
|
||||
*
|
||||
* @param name String form of IPAddressName
|
||||
* @throws IOException if name can not be converted to a valid IPv4 or IPv6
|
||||
* address
|
||||
@ -224,7 +224,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
/**
|
||||
* Encode the IPAddress name into the DerOutputStream.
|
||||
*
|
||||
* @params out the DER stream to encode the IPAddressName to.
|
||||
* @param out the DER stream to encode the IPAddressName to.
|
||||
* @exception IOException on encoding errors.
|
||||
*/
|
||||
public void encode(DerOutputStream out) throws IOException {
|
||||
@ -384,9 +384,9 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
* constraint for "class C" subnet 10.9.8.0 shall be represented as the
|
||||
* octets 0A 09 08 00 FF FF FF 00, representing the CIDR notation
|
||||
* 10.9.8.0/255.255.255.0.
|
||||
* <p>
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but
|
||||
* narrowing and widening are not supported for this name type.
|
||||
*/
|
||||
@ -479,7 +479,7 @@ public class IPAddressName implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -50,13 +50,13 @@ import sun.security.util.ObjectIdentifier;
|
||||
* This extension MUST be critical.
|
||||
* <p>
|
||||
* The ASN.1 syntax for this extension is:
|
||||
* <code><pre>
|
||||
* <pre>{@code
|
||||
* id-ce-inhibitAnyPolicy OBJECT IDENTIFIER ::= { id-ce 54 }
|
||||
*
|
||||
* InhibitAnyPolicy ::= SkipCerts
|
||||
*
|
||||
* SkipCerts ::= INTEGER (0..MAX)
|
||||
* </pre></code>
|
||||
* }</pre>
|
||||
* @author Anne Anderson
|
||||
* @see CertAttrSet
|
||||
* @see Extension
|
||||
@ -211,7 +211,7 @@ implements CertAttrSet<String> {
|
||||
* Get the attribute value.
|
||||
*
|
||||
* @param name name of attribute to get. Must be SKIP_CERTS.
|
||||
* @returns value of the attribute. In this case it will be of type
|
||||
* @return value of the attribute. In this case it will be of type
|
||||
* Integer.
|
||||
* @throws IOException on error
|
||||
*/
|
||||
@ -244,7 +244,7 @@ implements CertAttrSet<String> {
|
||||
* Return an enumeration of names of attributes existing within this
|
||||
* attribute.
|
||||
*
|
||||
* @returns enumeration of elements
|
||||
* @return enumeration of elements
|
||||
*/
|
||||
public Enumeration<String> getElements() {
|
||||
AttributeNameEnumeration elements = new AttributeNameEnumeration();
|
||||
@ -255,7 +255,7 @@ implements CertAttrSet<String> {
|
||||
/**
|
||||
* Return the name of this attribute.
|
||||
*
|
||||
* @returns name of attribute.
|
||||
* @return name of attribute.
|
||||
*/
|
||||
public String getName() {
|
||||
return (NAME);
|
||||
|
@ -69,7 +69,7 @@ public class KeyIdentifier {
|
||||
* <li>The keyIdentifier is composed of the 160-bit SHA-1 hash of the
|
||||
* value of the BIT STRING subjectPublicKey (excluding the tag,
|
||||
* length, and number of unused bits).
|
||||
* <p>
|
||||
*
|
||||
* <li>The keyIdentifier is composed of a four bit type field with
|
||||
* the value 0100 followed by the least significant 60 bits of the
|
||||
* SHA-1 hash of the value of the BIT STRING subjectPublicKey.
|
||||
|
@ -328,7 +328,7 @@ implements CertAttrSet<String>, Cloneable {
|
||||
* (k) If excludedSubtrees is present in the certificate, set the
|
||||
* excluded subtrees state variable to the union of its previous
|
||||
* value and the value indicated in the extension field.
|
||||
* <p>
|
||||
*
|
||||
* @param newConstraints additional NameConstraints to be applied
|
||||
* @throws IOException on error
|
||||
*/
|
||||
@ -406,7 +406,7 @@ implements CertAttrSet<String>, Cloneable {
|
||||
* the excluded subtrees state variables.
|
||||
*
|
||||
* @param cert X509Certificate to be verified
|
||||
* @returns true if certificate verifies successfully
|
||||
* @return true if certificate verifies successfully
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public boolean verify(X509Certificate cert) throws IOException {
|
||||
@ -484,7 +484,7 @@ implements CertAttrSet<String>, Cloneable {
|
||||
* permitted and excluded subtrees variables.
|
||||
*
|
||||
* @param name GeneralNameInterface name to be verified
|
||||
* @returns true if certificate verifies successfully
|
||||
* @return true if certificate verifies successfully
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public boolean verify(GeneralNameInterface name) throws IOException {
|
||||
@ -566,7 +566,7 @@ implements CertAttrSet<String>, Cloneable {
|
||||
* NameConstraints.
|
||||
*
|
||||
* @param subject the certificate's subject name
|
||||
* @returns true if certificate verifies successfully
|
||||
* @return true if certificate verifies successfully
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public boolean verifyRFC822SpecialCase(X500Name subject) throws IOException {
|
||||
|
@ -33,8 +33,8 @@ import java.security.cert.CertificateException;
|
||||
import sun.security.util.*;
|
||||
|
||||
/**
|
||||
* This class defines the mapping from OID & name to classes and vice
|
||||
* versa. Used by CertificateExtensions & PKCS10 to get the java
|
||||
* This class defines the mapping from OID {@literal &} name to classes and vice
|
||||
* versa. Used by CertificateExtensions {@literal &} PKCS10 to get the java
|
||||
* classes associated with a particular OID/name.
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
|
@ -55,7 +55,7 @@ public class OIDName implements GeneralNameInterface {
|
||||
/**
|
||||
* Create the OIDName object with the specified name.
|
||||
*
|
||||
* @param name the OIDName.
|
||||
* @param oid the OIDName.
|
||||
*/
|
||||
public OIDName(ObjectIdentifier oid) {
|
||||
this.oid = oid;
|
||||
@ -143,7 +143,7 @@ public class OIDName implements GeneralNameInterface {
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -166,7 +166,7 @@ public class OIDName implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -237,7 +237,7 @@ public class OtherName implements GeneralNameInterface {
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is same type, but
|
||||
* comparison operations are not supported for this name type.
|
||||
*/
|
||||
@ -258,7 +258,7 @@ public class OtherName implements GeneralNameInterface {
|
||||
* Return subtree depth of this name for purposes of determining
|
||||
* NameConstraints minimum and maximum bounds.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() {
|
||||
|
@ -88,9 +88,9 @@ implements CertAttrSet<String> {
|
||||
*
|
||||
* @param maps the List of CertificatePolicyMap.
|
||||
*/
|
||||
public PolicyMappingsExtension(List<CertificatePolicyMap> map)
|
||||
public PolicyMappingsExtension(List<CertificatePolicyMap> maps)
|
||||
throws IOException {
|
||||
this.maps = map;
|
||||
this.maps = maps;
|
||||
this.extensionId = PKIXExtensions.PolicyMappings_Id;
|
||||
this.critical = true;
|
||||
encodeThis();
|
||||
@ -108,8 +108,8 @@ implements CertAttrSet<String> {
|
||||
/**
|
||||
* Create the extension from the passed DER encoded value.
|
||||
*
|
||||
* @params critical true if the extension is to be treated as critical.
|
||||
* @params value an array of DER encoded bytes of the actual value.
|
||||
* @param critical true if the extension is to be treated as critical.
|
||||
* @param value an array of DER encoded bytes of the actual value.
|
||||
* @exception ClassCastException if value is not an array of bytes
|
||||
* @exception IOException on error.
|
||||
*/
|
||||
|
@ -95,7 +95,7 @@ public class RDN {
|
||||
* preceded by '\'.
|
||||
*
|
||||
* @param name String form of RDN
|
||||
* @param keyword an additional mapping of keywords to OIDs
|
||||
* @param keywordMap an additional mapping of keywords to OIDs
|
||||
* @throws IOException on parsing error
|
||||
*/
|
||||
public RDN(String name, Map<String, String> keywordMap) throws IOException {
|
||||
@ -307,7 +307,7 @@ public class RDN {
|
||||
* Calculates a hash code value for the object. Objects
|
||||
* which are equal will also have the same hashcode.
|
||||
*
|
||||
* @returns int hashCode value
|
||||
* @return int hashCode value
|
||||
*/
|
||||
public int hashCode() {
|
||||
return toRFC2253String(true).hashCode();
|
||||
@ -316,8 +316,8 @@ public class RDN {
|
||||
/*
|
||||
* return specified attribute value from RDN
|
||||
*
|
||||
* @params oid ObjectIdentifier of attribute to be found
|
||||
* @returns DerValue of attribute value; null if attribute does not exist
|
||||
* @param oid ObjectIdentifier of attribute to be found
|
||||
* @return DerValue of attribute value; null if attribute does not exist
|
||||
*/
|
||||
DerValue findAttribute(ObjectIdentifier oid) {
|
||||
for (int i = 0; i < assertion.length; i++) {
|
||||
|
@ -174,9 +174,9 @@ public class RFC822Name implements GeneralNameInterface
|
||||
* surrounded in parentheses) after it, and is not surrounded by "<" and
|
||||
* ">". Note that while upper and lower case letters are allowed in an
|
||||
* RFC 822 addr-spec, no significance is attached to the case.
|
||||
* <p>
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but narrowing and widening are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -232,7 +232,7 @@ public class RFC822Name implements GeneralNameInterface
|
||||
* Return subtree depth of this name for purposes of determining
|
||||
* NameConstraints minimum and maximum bounds.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -62,7 +62,7 @@ import sun.security.util.DerValue;
|
||||
* accessMethod OBJECT IDENTIFIER,
|
||||
* accessLocation GeneralName }
|
||||
* </pre>
|
||||
* <p>
|
||||
*
|
||||
* @see Extension
|
||||
* @see CertAttrSet
|
||||
*/
|
||||
|
@ -52,10 +52,10 @@ import sun.security.util.*;
|
||||
* <p>
|
||||
* [RFC1738] In general, URLs are written as follows:
|
||||
* <pre>
|
||||
* <scheme>:<scheme-specific-part>
|
||||
* {@code <scheme>:<scheme-specific-part>}
|
||||
* </pre>
|
||||
* A URL contains the name of the scheme being used (<scheme>) followed
|
||||
* by a colon and then a string (the <scheme-specific-part>) whose
|
||||
* A URL contains the name of the scheme being used ({@code <scheme>}) followed
|
||||
* by a colon and then a string (the {@code <scheme-specific-part>}) whose
|
||||
* interpretation depends on the scheme.
|
||||
* <p>
|
||||
* While the syntax for the rest of the URL may vary depending on the
|
||||
@ -63,13 +63,13 @@ import sun.security.util.*;
|
||||
* of an IP-based protocol to a specified host on the Internet use a
|
||||
* common syntax for the scheme-specific data:
|
||||
* <pre>
|
||||
* //<user>:<password>@<host>:<port>/<url-path>
|
||||
* {@code //<user>:<password>@<host>:<port>/<url-path>}
|
||||
* </pre>
|
||||
* [RFC2732] specifies that an IPv6 address contained inside a URL
|
||||
* must be enclosed in square brackets (to allow distinguishing the
|
||||
* colons that separate IPv6 components from the colons that separate
|
||||
* scheme-specific data.
|
||||
* <p>
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
* @author Hemma Prafullchandra
|
||||
* @author Sean Mullan
|
||||
@ -246,7 +246,7 @@ public class URIName implements GeneralNameInterface {
|
||||
/**
|
||||
* Return the scheme name portion of a URIName
|
||||
*
|
||||
* @returns scheme portion of full name
|
||||
* @return scheme portion of full name
|
||||
*/
|
||||
public String getScheme() {
|
||||
return uri.getScheme();
|
||||
@ -255,7 +255,7 @@ public class URIName implements GeneralNameInterface {
|
||||
/**
|
||||
* Return the host name or IP address portion of the URIName
|
||||
*
|
||||
* @returns host name or IP address portion of full name
|
||||
* @return host name or IP address portion of full name
|
||||
*/
|
||||
public String getHost() {
|
||||
return host;
|
||||
@ -266,7 +266,7 @@ public class URIName implements GeneralNameInterface {
|
||||
* DNSName, then this host object does not include any
|
||||
* initial "." on the name.
|
||||
*
|
||||
* @returns host name as DNSName or IPAddressName
|
||||
* @return host name as DNSName or IPAddressName
|
||||
*/
|
||||
public Object getHostObject() {
|
||||
if (hostIP != null) {
|
||||
@ -308,9 +308,9 @@ public class URIName implements GeneralNameInterface {
|
||||
* abc.def.xyz.com. However, the constraint ".xyz.com" is not satisfied
|
||||
* by "xyz.com". When the constraint does not begin with a period, it
|
||||
* specifies a host.
|
||||
* <p>
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but
|
||||
* narrowing and widening are not supported for this name type.
|
||||
*/
|
||||
@ -377,7 +377,7 @@ public class URIName implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -73,7 +73,6 @@ public class UniqueIdentity {
|
||||
* Create the object, decoding the values from the passed DER stream.
|
||||
*
|
||||
* @param derVal the DerValue decoded from the stream.
|
||||
* @param tag the tag the value is encoded under.
|
||||
* @exception IOException on decoding errors.
|
||||
*/
|
||||
public UniqueIdentity(DerValue derVal) throws IOException {
|
||||
|
@ -340,7 +340,7 @@ public class X400Address implements GeneralNameInterface {
|
||||
/**
|
||||
* Create the X400Address object from the specified byte array
|
||||
*
|
||||
* @param nameValue value of the name as a byte array
|
||||
* @param value value of the name as a byte array
|
||||
*/
|
||||
public X400Address(byte[] value) {
|
||||
nameValue = value;
|
||||
@ -392,7 +392,7 @@ public class X400Address implements GeneralNameInterface {
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is same type, but comparison operations are
|
||||
* not supported for this name type.
|
||||
*/
|
||||
@ -413,7 +413,7 @@ public class X400Address implements GeneralNameInterface {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -84,14 +84,14 @@ import javax.security.auth.x500.X500Principal;
|
||||
* <li>attribute values encoded in different types (e.g.,
|
||||
* PrintableString and BMPString) may be assumed to represent
|
||||
* different strings;
|
||||
* <p>
|
||||
*
|
||||
* <li>attribute values in types other than PrintableString are case
|
||||
* sensitive (this permits matching of attribute values as binary
|
||||
* objects);
|
||||
* <p>
|
||||
*
|
||||
* <li>attribute values in PrintableString are not case sensitive
|
||||
* (e.g., "Marianne Swanson" is the same as "MARIANNE SWANSON"); and
|
||||
* <p>
|
||||
*
|
||||
* <li>attribute values in PrintableString are compared after
|
||||
* removing leading and trailing white space and converting internal
|
||||
* substrings of one or more consecutive white space characters to a
|
||||
@ -1242,12 +1242,13 @@ public class X500Name implements GeneralNameInterface, Principal {
|
||||
* <li>NAME_NARROWS = 1: input name narrows this name
|
||||
* <li>NAME_WIDENS = 2: input name widens this name
|
||||
* <li>NAME_SAME_TYPE = 3: input name does not match or narrow this name,
|
||||
& but is same type
|
||||
* </ul>. These results are used in checking NameConstraints during
|
||||
* but is same type.
|
||||
* </ul>
|
||||
* These results are used in checking NameConstraints during
|
||||
* certification path verification.
|
||||
*
|
||||
* @param inputName to be checked for being constrained
|
||||
* @returns constraint type above
|
||||
* @return constraint type above
|
||||
* @throws UnsupportedOperationException if name is not exact match, but
|
||||
* narrowing and widening are not supported for this name type.
|
||||
*/
|
||||
@ -1313,7 +1314,7 @@ public class X500Name implements GeneralNameInterface, Principal {
|
||||
* NameConstraints minimum and maximum bounds and for calculating
|
||||
* path lengths in name subtrees.
|
||||
*
|
||||
* @returns distance of name from root
|
||||
* @return distance of name from root
|
||||
* @throws UnsupportedOperationException if not supported for this name type
|
||||
*/
|
||||
public int subtreeDepth() throws UnsupportedOperationException {
|
||||
|
@ -125,7 +125,7 @@ public class X509CRLEntryImpl extends X509CRLEntry
|
||||
/**
|
||||
* Unmarshals a revoked certificate from its encoded form.
|
||||
*
|
||||
* @param derVal the DER value containing the revoked certificate.
|
||||
* @param derValue the DER value containing the revoked certificate.
|
||||
* @exception CRLException on parsing errors.
|
||||
*/
|
||||
public X509CRLEntryImpl(DerValue derValue) throws CRLException {
|
||||
@ -271,7 +271,7 @@ public class X509CRLEntryImpl extends X509CRLEntry
|
||||
/**
|
||||
* get Reason Code from CRL entry.
|
||||
*
|
||||
* @returns Integer or null, if no such extension
|
||||
* @return Integer or null, if no such extension
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public Integer getReasonCode() throws IOException {
|
||||
@ -432,7 +432,7 @@ public class X509CRLEntryImpl extends X509CRLEntry
|
||||
* get an extension
|
||||
*
|
||||
* @param oid ObjectIdentifier of extension desired
|
||||
* @returns Extension of type <extension> or null, if not found
|
||||
* @return Extension of type {@code <extension>} or null, if not found
|
||||
*/
|
||||
public Extension getExtension(ObjectIdentifier oid) {
|
||||
if (extensions == null)
|
||||
|
@ -185,8 +185,8 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
* Initial CRL constructor, no revoked certs, and no extensions.
|
||||
*
|
||||
* @param issuer the name of the CA issuing this CRL.
|
||||
* @param thisUpdate the Date of this issue.
|
||||
* @param nextUpdate the Date of the next CRL.
|
||||
* @param thisDate the Date of this issue.
|
||||
* @param nextDate the Date of the next CRL.
|
||||
*/
|
||||
public X509CRLImpl(X500Name issuer, Date thisDate, Date nextDate) {
|
||||
this.issuer = issuer;
|
||||
@ -198,8 +198,8 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
* CRL constructor, revoked certs, no extensions.
|
||||
*
|
||||
* @param issuer the name of the CA issuing this CRL.
|
||||
* @param thisUpdate the Date of this issue.
|
||||
* @param nextUpdate the Date of the next CRL.
|
||||
* @param thisDate the Date of this issue.
|
||||
* @param nextDate the Date of the next CRL.
|
||||
* @param badCerts the array of CRL entries.
|
||||
*
|
||||
* @exception CRLException on parsing/construction errors.
|
||||
@ -237,8 +237,8 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
* CRL constructor, revoked certs and extensions.
|
||||
*
|
||||
* @param issuer the name of the CA issuing this CRL.
|
||||
* @param thisUpdate the Date of this issue.
|
||||
* @param nextUpdate the Date of the next CRL.
|
||||
* @param thisDate the Date of this issue.
|
||||
* @param nextDate the Date of the next CRL.
|
||||
* @param badCerts the array of CRL entries.
|
||||
* @param crlExts the CRL extensions.
|
||||
*
|
||||
@ -832,8 +832,8 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the AuthorityKeyIdentifier, if any.
|
||||
*
|
||||
* @returns AuthorityKeyIdentifier or null
|
||||
* (if no AuthorityKeyIdentifierExtension)
|
||||
* @return AuthorityKeyIdentifier or null
|
||||
* (if no AuthorityKeyIdentifierExtension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public KeyIdentifier getAuthKeyId() throws IOException {
|
||||
@ -850,7 +850,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the AuthorityKeyIdentifierExtension, if any.
|
||||
*
|
||||
* @returns AuthorityKeyIdentifierExtension or null (if no such extension)
|
||||
* @return AuthorityKeyIdentifierExtension or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public AuthorityKeyIdentifierExtension getAuthKeyIdExtension()
|
||||
@ -862,7 +862,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the CRLNumberExtension, if any.
|
||||
*
|
||||
* @returns CRLNumberExtension or null (if no such extension)
|
||||
* @return CRLNumberExtension or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public CRLNumberExtension getCRLNumberExtension() throws IOException {
|
||||
@ -873,7 +873,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the CRL number from the CRLNumberExtension, if any.
|
||||
*
|
||||
* @returns number or null (if no such extension)
|
||||
* @return number or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public BigInteger getCRLNumber() throws IOException {
|
||||
@ -889,7 +889,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the DeltaCRLIndicatorExtension, if any.
|
||||
*
|
||||
* @returns DeltaCRLIndicatorExtension or null (if no such extension)
|
||||
* @return DeltaCRLIndicatorExtension or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public DeltaCRLIndicatorExtension getDeltaCRLIndicatorExtension()
|
||||
@ -902,7 +902,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the base CRL number from the DeltaCRLIndicatorExtension, if any.
|
||||
*
|
||||
* @returns number or null (if no such extension)
|
||||
* @return number or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public BigInteger getBaseCRLNumber() throws IOException {
|
||||
@ -918,7 +918,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the IssuerAlternativeNameExtension, if any.
|
||||
*
|
||||
* @returns IssuerAlternativeNameExtension or null (if no such extension)
|
||||
* @return IssuerAlternativeNameExtension or null (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public IssuerAlternativeNameExtension getIssuerAltNameExtension()
|
||||
@ -930,8 +930,8 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
/**
|
||||
* return the IssuingDistributionPointExtension, if any.
|
||||
*
|
||||
* @returns IssuingDistributionPointExtension or null
|
||||
* (if no such extension)
|
||||
* @return IssuingDistributionPointExtension or null
|
||||
* (if no such extension)
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public IssuingDistributionPointExtension
|
||||
@ -1043,7 +1043,7 @@ public class X509CRLImpl extends X509CRL implements DerEncoder {
|
||||
* get an extension
|
||||
*
|
||||
* @param oid ObjectIdentifier of extension desired
|
||||
* @returns Object of type <extension> or null, if not found
|
||||
* @return Object of type {@code <extension>} or null, if not found
|
||||
* @throws IOException on error
|
||||
*/
|
||||
public Object getExtension(ObjectIdentifier oid) {
|
||||
|
@ -247,7 +247,7 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
|
||||
* read input stream as HEX-encoded DER-encoded bytes
|
||||
*
|
||||
* @param in InputStream to read
|
||||
* @returns DerValue corresponding to decoded HEX-encoded bytes
|
||||
* @return DerValue corresponding to decoded HEX-encoded bytes
|
||||
* @throws IOException if stream can not be interpreted as RFC1421
|
||||
* encoded bytes
|
||||
*/
|
||||
@ -289,8 +289,8 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
|
||||
* Construct an initialized X509 Certificate. The certificate is stored
|
||||
* in raw form and has to be signed to be useful.
|
||||
*
|
||||
* @params info the X509CertificateInfo which the Certificate is to be
|
||||
* created from.
|
||||
* @param certInfo the X509CertificateInfo which the Certificate is to be
|
||||
* created from.
|
||||
*/
|
||||
public X509CertImpl(X509CertInfo certInfo) {
|
||||
this.info = certInfo;
|
||||
|
@ -38,8 +38,9 @@ import sun.misc.HexDumpEncoder;
|
||||
/**
|
||||
* The X509CertInfo class represents X.509 certificate information.
|
||||
*
|
||||
* <P>X.509 certificates have several base data elements, including:<UL>
|
||||
* <P>X.509 certificates have several base data elements, including:
|
||||
*
|
||||
* <UL>
|
||||
* <LI>The <em>Subject Name</em>, an X.500 Distinguished Name for
|
||||
* the entity (subject) for which the certificate was issued.
|
||||
*
|
||||
@ -54,6 +55,7 @@ import sun.misc.HexDumpEncoder;
|
||||
*
|
||||
* <LI>A <em>Serial Number</em> assigned by the CA, for use in
|
||||
* certificate revocation and other applications.
|
||||
* </UL>
|
||||
*
|
||||
* @author Amit Kapoor
|
||||
* @author Hemma Prafullchandra
|
||||
@ -356,8 +358,8 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the certificate attribute.
|
||||
*
|
||||
* @params name the name of the Certificate attribute.
|
||||
* @params val the value of the Certificate attribute.
|
||||
* @param name the name of the Certificate attribute.
|
||||
* @param val the value of the Certificate attribute.
|
||||
* @exception CertificateException on invalid attributes.
|
||||
* @exception IOException on other errors.
|
||||
*/
|
||||
@ -446,7 +448,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Delete the certificate attribute.
|
||||
*
|
||||
* @params name the name of the Certificate attribute.
|
||||
* @param name the name of the Certificate attribute.
|
||||
* @exception CertificateException on invalid attributes.
|
||||
* @exception IOException on other errors.
|
||||
*/
|
||||
@ -525,7 +527,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Get the certificate attribute.
|
||||
*
|
||||
* @params name the name of the Certificate attribute.
|
||||
* @param name the name of the Certificate attribute.
|
||||
*
|
||||
* @exception CertificateException on invalid attributes.
|
||||
* @exception IOException on other errors.
|
||||
@ -812,7 +814,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the version number of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the Extensions
|
||||
* @param val the Object class value for the Extensions
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setVersion(Object val) throws CertificateException {
|
||||
@ -825,7 +827,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the serial number of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the CertificateSerialNumber
|
||||
* @param val the Object class value for the CertificateSerialNumber
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setSerialNumber(Object val) throws CertificateException {
|
||||
@ -838,7 +840,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the algorithm id of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the AlgorithmId
|
||||
* @param val the Object class value for the AlgorithmId
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setAlgorithmId(Object val) throws CertificateException {
|
||||
@ -852,7 +854,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the issuer name of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the issuer
|
||||
* @param val the Object class value for the issuer
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setIssuer(Object val) throws CertificateException {
|
||||
@ -866,7 +868,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the validity interval of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the CertificateValidity
|
||||
* @param val the Object class value for the CertificateValidity
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setValidity(Object val) throws CertificateException {
|
||||
@ -880,7 +882,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the subject name of the certificate.
|
||||
*
|
||||
* @params val the Object class value for the Subject
|
||||
* @param val the Object class value for the Subject
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setSubject(Object val) throws CertificateException {
|
||||
@ -894,7 +896,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the public key in the certificate.
|
||||
*
|
||||
* @params val the Object class value for the PublicKey
|
||||
* @param val the Object class value for the PublicKey
|
||||
* @exception CertificateException on invalid data.
|
||||
*/
|
||||
private void setKey(Object val) throws CertificateException {
|
||||
@ -908,7 +910,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the Issuer Unique Identity in the certificate.
|
||||
*
|
||||
* @params val the Object class value for the IssuerUniqueId
|
||||
* @param val the Object class value for the IssuerUniqueId
|
||||
* @exception CertificateException
|
||||
*/
|
||||
private void setIssuerUniqueId(Object val) throws CertificateException {
|
||||
@ -925,7 +927,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the Subject Unique Identity in the certificate.
|
||||
*
|
||||
* @params val the Object class value for the SubjectUniqueId
|
||||
* @param val the Object class value for the SubjectUniqueId
|
||||
* @exception CertificateException
|
||||
*/
|
||||
private void setSubjectUniqueId(Object val) throws CertificateException {
|
||||
@ -942,7 +944,7 @@ public class X509CertInfo implements CertAttrSet<String> {
|
||||
/**
|
||||
* Set the extensions in the certificate.
|
||||
*
|
||||
* @params val the Object class value for the Extensions
|
||||
* @param val the Object class value for the Extensions
|
||||
* @exception CertificateException
|
||||
*/
|
||||
private void setExtensions(Object val) throws CertificateException {
|
||||
|
@ -152,9 +152,6 @@ public final class TimeZoneNames extends TimeZoneNamesBundle {
|
||||
String GST[] = new String[] {"Gulf Standard Time", "GST",
|
||||
"Gulf Daylight Time", "GDT",
|
||||
"Gulf Time", "GT"};
|
||||
String HAST[] = new String[] {"Hawaii-Aleutian Standard Time", "HAST",
|
||||
"Hawaii-Aleutian Daylight Time", "HADT",
|
||||
"Hawaii-Aleutian Time", "HAT"};
|
||||
String HKT[] = new String[] {"Hong Kong Time", "HKT",
|
||||
"Hong Kong Summer Time", "HKST",
|
||||
"Hong Kong Time", "HKT"};
|
||||
@ -371,7 +368,7 @@ public final class TimeZoneNames extends TimeZoneNamesBundle {
|
||||
{"Africa/Tripoli", EET},
|
||||
{"Africa/Tunis", CET},
|
||||
{"Africa/Windhoek", WAT},
|
||||
{"America/Adak", HAST},
|
||||
{"America/Adak", HST},
|
||||
{"America/Anguilla", AST},
|
||||
{"America/Antigua", AST},
|
||||
{"America/Araguaina", BRT},
|
||||
@ -393,7 +390,7 @@ public final class TimeZoneNames extends TimeZoneNamesBundle {
|
||||
"Paraguay Summer Time", "PYST",
|
||||
"Paraguay Time", "PYT"}},
|
||||
{"America/Atikokan", EST},
|
||||
{"America/Atka", HAST},
|
||||
{"America/Atka", HST},
|
||||
{"America/Bahia", BRT},
|
||||
{"America/Bahia_Banderas", CST},
|
||||
{"America/Barbados", AST},
|
||||
@ -1024,7 +1021,7 @@ public final class TimeZoneNames extends TimeZoneNamesBundle {
|
||||
{"UCT", UTC},
|
||||
{"Universal", UTC},
|
||||
{"US/Alaska", AKST},
|
||||
{"US/Aleutian", HAST},
|
||||
{"US/Aleutian", HST},
|
||||
{"US/Arizona", MST},
|
||||
{"US/Central", CST},
|
||||
{"US/Eastern", EST},
|
||||
|
@ -59,6 +59,8 @@ public class GSSUtil {
|
||||
GSSUtil.createOid("1.2.840.113554.1.2.2");
|
||||
public static final Oid GSS_KRB5_MECH_OID2 =
|
||||
GSSUtil.createOid("1.3.5.1.5.2");
|
||||
public static final Oid GSS_KRB5_MECH_OID_MS =
|
||||
GSSUtil.createOid("1.2.840.48018.1.2.2");
|
||||
|
||||
public static final Oid GSS_SPNEGO_MECH_OID =
|
||||
GSSUtil.createOid("1.3.6.1.5.5.2");
|
||||
@ -101,7 +103,8 @@ public class GSSUtil {
|
||||
|
||||
public static boolean isKerberosMech(Oid oid) {
|
||||
return (GSS_KRB5_MECH_OID.equals(oid) ||
|
||||
GSS_KRB5_MECH_OID2.equals(oid));
|
||||
GSS_KRB5_MECH_OID2.equals(oid) ||
|
||||
GSS_KRB5_MECH_OID_MS.equals(oid));
|
||||
|
||||
}
|
||||
|
||||
|
@ -538,14 +538,21 @@ public class SpNegoContext implements GSSContextSpi {
|
||||
// get the token for mechanism
|
||||
byte[] accept_token;
|
||||
|
||||
if (mechList[0].equals(mech_wanted)) {
|
||||
if (mechList[0].equals(mech_wanted) ||
|
||||
(GSSUtil.isKerberosMech(mechList[0]) &&
|
||||
GSSUtil.isKerberosMech(mech_wanted))) {
|
||||
// get the mechanism token
|
||||
if (DEBUG && !mech_wanted.equals(mechList[0])) {
|
||||
System.out.println("SpNegoContext.acceptSecContext: " +
|
||||
"negotiated mech adjusted to " + mechList[0]);
|
||||
}
|
||||
byte[] mechToken = initToken.getMechToken();
|
||||
if (mechToken == null) {
|
||||
throw new GSSException(GSSException.FAILURE, -1,
|
||||
"mechToken is missing");
|
||||
}
|
||||
accept_token = GSS_acceptSecContext(mechToken);
|
||||
mech_wanted = mechList[0];
|
||||
} else {
|
||||
accept_token = null;
|
||||
}
|
||||
|
@ -389,7 +389,7 @@ JNIEXPORT jobject JNICALL Java_sun_security_krb5_Credentials_acquireDefaultNativ
|
||||
jobject authTime, renewTillTime, hostAddresses = NULL;
|
||||
KERB_EXTERNAL_TICKET *msticket;
|
||||
int found = 0;
|
||||
FILETIME Now, EndTime, LocalEndTime;
|
||||
FILETIME Now, EndTime;
|
||||
|
||||
int i, netypes;
|
||||
jint *etypes = NULL;
|
||||
@ -476,8 +476,7 @@ JNIEXPORT jobject JNICALL Java_sun_security_krb5_Credentials_acquireDefaultNativ
|
||||
GetSystemTimeAsFileTime(&Now);
|
||||
EndTime.dwLowDateTime = msticket->EndTime.LowPart;
|
||||
EndTime.dwHighDateTime = msticket->EndTime.HighPart;
|
||||
FileTimeToLocalFileTime(&EndTime, &LocalEndTime);
|
||||
if (CompareFileTime(&Now, &LocalEndTime) < 0) {
|
||||
if (CompareFileTime(&Now, &EndTime) < 0) {
|
||||
for (i=0; i<netypes; i++) {
|
||||
if (etypes[i] == msticket->SessionKey.KeyType) {
|
||||
found = 1;
|
||||
|
@ -153,9 +153,6 @@ public final class TimeZoneNames_de extends TimeZoneNamesBundle {
|
||||
String GST[] = new String[] {"Golf Normalzeit", "GST",
|
||||
"Golf Sommerzeit", "GDT",
|
||||
"Zeitzone f\u00FCr Persischen Golf", "GT"};
|
||||
String HAST[] = new String[] {"Hawaii-Aleutische Normalzeit", "HAST",
|
||||
"Hawaii-Aleutische Sommerzeit", "HADT",
|
||||
"Zeitzone f\u00FCr Hawaii und Al\u00EButen", "HAT"};
|
||||
String HKT[] = new String[] {"Hongkong Zeit", "HKT",
|
||||
"Hongkong Sommerzeit", "HKST",
|
||||
"Hongkong Zeit", "HKT"};
|
||||
@ -372,7 +369,7 @@ public final class TimeZoneNames_de extends TimeZoneNamesBundle {
|
||||
{"Africa/Tripoli", EET},
|
||||
{"Africa/Tunis", CET},
|
||||
{"Africa/Windhoek", WAT},
|
||||
{"America/Adak", HAST},
|
||||
{"America/Adak", HST},
|
||||
{"America/Anguilla", AST},
|
||||
{"America/Antigua", AST},
|
||||
{"America/Araguaina", BRT},
|
||||
@ -394,7 +391,7 @@ public final class TimeZoneNames_de extends TimeZoneNamesBundle {
|
||||
"Paraguay Sommerzeit", "PYST",
|
||||
"Paraguay Zeit", "PYT"}},
|
||||
{"America/Atikokan", EST},
|
||||
{"America/Atka", HAST},
|
||||
{"America/Atka", HST},
|
||||
{"America/Bahia", BRT},
|
||||
{"America/Bahia_Banderas", CST},
|
||||
{"America/Barbados", AST},
|
||||
@ -1024,7 +1021,7 @@ public final class TimeZoneNames_de extends TimeZoneNamesBundle {
|
||||
{"UCT", UTC},
|
||||
{"Universal", UTC},
|
||||
{"US/Alaska", AKST},
|
||||
{"US/Aleutian", HAST},
|
||||
{"US/Aleutian", HST},
|
||||
{"US/Arizona", MST},
|
||||
{"US/Central", CST},
|
||||
{"US/Eastern", EST},
|
||||
|
@ -153,9 +153,6 @@ public final class TimeZoneNames_es extends TimeZoneNamesBundle {
|
||||
String GST[] = new String[] {"Hora est\u00e1ndar del Golfo", "GST",
|
||||
"Hora de verano del Golfo", "GDT",
|
||||
"Hora del Golfo", "GT"};
|
||||
String HAST[] = new String[] {"Hora est\u00e1ndar de Hawaii-Aleutianas", "HAST",
|
||||
"Hora de verano de Hawaii-Aleutianas", "HADT",
|
||||
"Hora de Hawaii-Aleutian", "HAT"};
|
||||
String HKT[] = new String[] {"Hora de Hong Kong", "HKT",
|
||||
"Hora de verano de Hong Kong", "HKST",
|
||||
"Hora de Hong Kong", "HKT"};
|
||||
@ -372,7 +369,7 @@ public final class TimeZoneNames_es extends TimeZoneNamesBundle {
|
||||
{"Africa/Tripoli", EET},
|
||||
{"Africa/Tunis", CET},
|
||||
{"Africa/Windhoek", WAT},
|
||||
{"America/Adak", HAST},
|
||||
{"America/Adak", HST},
|
||||
{"America/Anguilla", AST},
|
||||
{"America/Antigua", AST},
|
||||
{"America/Araguaina", BRT},
|
||||
@ -394,7 +391,7 @@ public final class TimeZoneNames_es extends TimeZoneNamesBundle {
|
||||
"Hora de verano de Paraguay", "PYST",
|
||||
"Hora de Paraguay", "PYT"}},
|
||||
{"America/Atikokan", EST},
|
||||
{"America/Atka", HAST},
|
||||
{"America/Atka", HST},
|
||||
{"America/Bahia", BRT},
|
||||
{"America/Bahia_Banderas", CST},
|
||||
{"America/Barbados", AST},
|
||||
@ -1024,7 +1021,7 @@ public final class TimeZoneNames_es extends TimeZoneNamesBundle {
|
||||
{"UCT", UTC},
|
||||
{"Universal", UTC},
|
||||
{"US/Alaska", AKST},
|
||||
{"US/Aleutian", HAST},
|
||||
{"US/Aleutian", HST},
|
||||
{"US/Arizona", MST},
|
||||
{"US/Central", CST},
|
||||
{"US/Eastern", EST},
|
||||
|
@ -153,9 +153,6 @@ public final class TimeZoneNames_fr extends TimeZoneNamesBundle {
|
||||
String GST[] = new String[] {"Heure normale du Golfe", "GST",
|
||||
"Heure avanc\u00e9e du Golfe", "GDT",
|
||||
"Golfe", "GT"} ;
|
||||
String HAST[] = new String[] {"Heure normale d'Hawa\u00ef-Al\u00e9outiennes", "HAST",
|
||||
"Heure avanc\u00e9e d'Hawa\u00ef-Al\u00e9outiennes", "HADT",
|
||||
"Hawa\u00EF-Iles Al\u00E9outiennes", "HAT"} ;
|
||||
String HKT[] = new String[] {"Heure de Hong Kong", "HKT",
|
||||
"Heure d'\u00e9t\u00e9 de Hong Kong", "HKST",
|
||||
"Heure de Hong-Kong", "HKT"};
|
||||
@ -372,7 +369,7 @@ public final class TimeZoneNames_fr extends TimeZoneNamesBundle {
|
||||
{"Africa/Tripoli", EET},
|
||||
{"Africa/Tunis", CET},
|
||||
{"Africa/Windhoek", WAT},
|
||||
{"America/Adak", HAST},
|
||||
{"America/Adak", HST},
|
||||
{"America/Anguilla", AST},
|
||||
{"America/Antigua", AST},
|
||||
{"America/Araguaina", BRT},
|
||||
@ -394,7 +391,7 @@ public final class TimeZoneNames_fr extends TimeZoneNamesBundle {
|
||||
"Heure d'\u00e9t\u00e9 du Paraguay", "PYST",
|
||||
"Heure du Paraguay", "PYT"}},
|
||||
{"America/Atikokan", EST},
|
||||
{"America/Atka", HAST},
|
||||
{"America/Atka", HST},
|
||||
{"America/Bahia", BRT},
|
||||
{"America/Bahia_Banderas", CST},
|
||||
{"America/Barbados", AST},
|
||||
@ -1024,7 +1021,7 @@ public final class TimeZoneNames_fr extends TimeZoneNamesBundle {
|
||||
{"UCT", UTC},
|
||||
{"Universal", UTC},
|
||||
{"US/Alaska", AKST},
|
||||
{"US/Aleutian", HAST},
|
||||
{"US/Aleutian", HST},
|
||||
{"US/Arizona", MST},
|
||||
{"US/Central", CST},
|
||||
{"US/Eastern", EST},
|
||||
|
@ -153,9 +153,6 @@ public final class TimeZoneNames_it extends TimeZoneNamesBundle {
|
||||
String GST[] = new String[] {"Ora solare del golfo", "GST",
|
||||
"Ora legale del golfo", "GDT",
|
||||
"Ora del golfo", "GT"};
|
||||
String HAST[] = new String[] {"Ora solare delle Isole Hawaii-Aleutine", "HAST",
|
||||
"Ora solare delle Isole Hawaii-Aleutine", "HADT",
|
||||
"Ora Hawaii-Aleutine", "HAT"};
|
||||
String HKT[] = new String[] {"Ora di Hong Kong", "HKT",
|
||||
"Ora estiva di Hong Kong", "HKST",
|
||||
"Ora di Hong Kong", "HKT"};
|
||||
@ -372,7 +369,7 @@ public final class TimeZoneNames_it extends TimeZoneNamesBundle {
|
||||
{"Africa/Tripoli", EET},
|
||||
{"Africa/Tunis", CET},
|
||||
{"Africa/Windhoek", WAT},
|
||||
{"America/Adak", HAST},
|
||||
{"America/Adak", HST},
|
||||
{"America/Anguilla", AST},
|
||||
{"America/Antigua", AST},
|
||||
{"America/Araguaina", BRT},
|
||||
@ -394,7 +391,7 @@ public final class TimeZoneNames_it extends TimeZoneNamesBundle {
|
||||
"Ora estiva del Paraguay", "PYST",
|
||||
"Ora del Paraguay", "PYT"}},
|
||||
{"America/Atikokan", EST},
|
||||
{"America/Atka", HAST},
|
||||
{"America/Atka", HST},
|
||||
{"America/Bahia", BRT},
|
||||
{"America/Bahia_Banderas", CST},
|
||||
{"America/Barbados", AST},
|
||||
@ -1024,7 +1021,7 @@ public final class TimeZoneNames_it extends TimeZoneNamesBundle {
|
||||
{"UCT", UTC},
|
||||
{"Universal", UTC},
|
||||
{"US/Alaska", AKST},
|
||||
{"US/Aleutian", HAST},
|
||||
{"US/Aleutian", HST},
|
||||
{"US/Arizona", MST},
|
||||
{"US/Central", CST},
|
||||
{"US/Eastern", EST},
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user