diff options
author | Narayan Kamath <narayan@google.com> | 2016-04-28 17:36:03 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-04-28 17:36:03 +0000 |
commit | 4d9ae7835732ac6639160589960c190cb80133fb (patch) | |
tree | 178d4cb1997922e12027d3e1810f39d958f598ff | |
parent | db8e3a5d0c2cf13d66b83baa9f4e408ff6b51fe1 (diff) | |
parent | 7c335a5d575470ba944cb41d0ac655d7087422d1 (diff) | |
download | bouncycastle-4d9ae7835732ac6639160589960c190cb80133fb.tar.gz |
ASN1: Use an explicit locale for ASN1 UTC / Generalized times.
am: 7c335a5
* commit '7c335a5d575470ba944cb41d0ac655d7087422d1':
ASN1: Use an explicit locale for ASN1 UTC / Generalized times.
Change-Id: I45fe5d9ea0ac63c6be4f7e0dc0dab2e515160491
4 files changed, 72 insertions, 16 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/ASN1GeneralizedTime.java b/bcprov/src/main/java/org/bouncycastle/asn1/ASN1GeneralizedTime.java index 089526e1..0e2be644 100644 --- a/bcprov/src/main/java/org/bouncycastle/asn1/ASN1GeneralizedTime.java +++ b/bcprov/src/main/java/org/bouncycastle/asn1/ASN1GeneralizedTime.java @@ -3,6 +3,7 @@ package org.bouncycastle.asn1; import java.io.IOException; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; import java.util.Locale; import java.util.SimpleTimeZone; @@ -109,7 +110,10 @@ public class ASN1GeneralizedTime public ASN1GeneralizedTime( Date time) { - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'"); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'", Locale.US); + // END android-changed dateF.setTimeZone(new SimpleTimeZone(0, "Z")); @@ -127,7 +131,11 @@ public class ASN1GeneralizedTime Date time, Locale locale) { - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'", locale); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'", locale); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'", Locale.US); + dateF.setCalendar(Calendar.getInstance(Locale.US)); + // END android-changed dateF.setTimeZone(new SimpleTimeZone(0, "Z")); @@ -252,11 +260,17 @@ public class ASN1GeneralizedTime { if (hasFractionalSeconds()) { - dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS'Z'"); + // BEGIN android-changed + // Was: dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS'Z'"); + dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS'Z'", Locale.US); + // END android-changed } else { - dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'"); + // BEGIN android-changed + // Was: dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'"); + dateF = new SimpleDateFormat("yyyyMMddHHmmss'Z'", Locale.US); + // END android-changed } dateF.setTimeZone(new SimpleTimeZone(0, "Z")); @@ -266,11 +280,17 @@ public class ASN1GeneralizedTime d = this.getTime(); if (hasFractionalSeconds()) { - dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSz"); + // BEGIN android-changed + // Was: dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSz"); + dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSSz", Locale.US); + // END android-changed } else { - dateF = new SimpleDateFormat("yyyyMMddHHmmssz"); + // BEGIN android-changed + // Was: dateF = new SimpleDateFormat("yyyyMMddHHmmssz"); + dateF = new SimpleDateFormat("yyyyMMddHHmmssz", Locale.US); + // END android-changed } dateF.setTimeZone(new SimpleTimeZone(0, "Z")); @@ -279,11 +299,17 @@ public class ASN1GeneralizedTime { if (hasFractionalSeconds()) { - dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS"); + // BEGIN android-changed + // dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS"); + dateF = new SimpleDateFormat("yyyyMMddHHmmss.SSS", Locale.US); + // END android-changed } else { - dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + // BEGIN android-changed + // Was: dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + // END android-changed } dateF.setTimeZone(new SimpleTimeZone(0, TimeZone.getDefault().getID())); diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/ASN1UTCTime.java b/bcprov/src/main/java/org/bouncycastle/asn1/ASN1UTCTime.java index 2c82df30..41ce8177 100644 --- a/bcprov/src/main/java/org/bouncycastle/asn1/ASN1UTCTime.java +++ b/bcprov/src/main/java/org/bouncycastle/asn1/ASN1UTCTime.java @@ -3,6 +3,7 @@ package org.bouncycastle.asn1; import java.io.IOException; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; import java.util.Locale; import java.util.SimpleTimeZone; @@ -123,7 +124,10 @@ public class ASN1UTCTime public ASN1UTCTime( Date time) { - SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'"); + SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'", Locale.US); + // END android-changed dateF.setTimeZone(new SimpleTimeZone(0,"Z")); @@ -141,7 +145,11 @@ public class ASN1UTCTime Date time, Locale locale) { - SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'", locale); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'", locale); + SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmss'Z'", Locale.US); + dateF.setCalendar(Calendar.getInstance(locale)); + // END android-changed dateF.setTimeZone(new SimpleTimeZone(0,"Z")); @@ -164,7 +172,10 @@ public class ASN1UTCTime public Date getDate() throws ParseException { - SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmssz"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmssz"); + SimpleDateFormat dateF = new SimpleDateFormat("yyMMddHHmmssz", Locale.US); + // END android-changed return dateF.parse(getTime()); } @@ -179,7 +190,10 @@ public class ASN1UTCTime public Date getAdjustedDate() throws ParseException { - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmssz"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmssz"); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmssz", Locale.US); + // END android-changed dateF.setTimeZone(new SimpleTimeZone(0, "Z")); diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java b/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java index 84f12a9c..ed9a6c03 100644 --- a/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java +++ b/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java @@ -2,6 +2,7 @@ package org.bouncycastle.asn1.cms; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; import java.util.Locale; import java.util.SimpleTimeZone; @@ -70,7 +71,10 @@ public class Time Date time) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + // END android-changed dateF.setTimeZone(tz); @@ -101,7 +105,11 @@ public class Time Locale locale) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + dateF.setCalendar(Calendar.getInstance(locale)); + // END android-changed dateF.setTimeZone(tz); diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/x509/Time.java b/bcprov/src/main/java/org/bouncycastle/asn1/x509/Time.java index 77d36b31..989de4c9 100644 --- a/bcprov/src/main/java/org/bouncycastle/asn1/x509/Time.java +++ b/bcprov/src/main/java/org/bouncycastle/asn1/x509/Time.java @@ -2,6 +2,7 @@ package org.bouncycastle.asn1.x509; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; import java.util.Locale; import java.util.SimpleTimeZone; @@ -51,7 +52,10 @@ public class Time Date time) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + // END android-changed dateF.setTimeZone(tz); @@ -82,7 +86,11 @@ public class Time Locale locale) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + dateF.setCalendar(Calendar.getInstance(locale)); + // END android-changed dateF.setTimeZone(tz); |