FYI, JDK 9 RFR of JDK-8031651: Remove unneeded -source and -target flags in jdk repo regression tests
Joe Darcy
joe.darcy at oracle.com
Tue Jan 14 16:59:14 UTC 2014
Hello,
FYI, over on core-libs
http://mail.openjdk.java.net/pipermail/core-libs-dev/2014-January/024375.html
there is a review discussion of removing old -source and -target
settings from regression tests ahead of dropping javac support for
source/target 1.5 and earlier later in JDK 9. The changes include the
following modifications to two cert tests:
---
old/test/java/security/cert/PKIXBuilderParameters/InvalidParameters.java
2014-01-13 16:54:10.000000000 -0800
+++
new/test/java/security/cert/PKIXBuilderParameters/InvalidParameters.java
2014-01-13 16:54:10.000000000 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2004, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 2001, 2014, 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
@@ -21,16 +21,17 @@
* questions.
*/
-/**
+/*
* @test
* @test 4422738
- * @compile -source 1.4 InvalidParameters.java
+ * @compile InvalidParameters.java
* @run main InvalidParameters
* @summary Make sure PKIXBuilderParameters(Set) detects invalid
* parameters and throws correct exceptions
*/
import java.security.InvalidAlgorithmParameterException;
import java.security.cert.PKIXBuilderParameters;
+import java.security.cert.TrustAnchor;
import java.util.Collections;
import java.util.Set;
@@ -53,8 +54,10 @@
// make sure Set of invalid objects throws ClassCastException
try {
+ @SuppressWarnings("unchecked") // Knowingly do something bad
+ Set<TrustAnchor> badSet = (Set<TrustAnchor>) (Set)
Collections.singleton(new String());
PKIXBuilderParameters p =
- new PKIXBuilderParameters(Collections.singleton(new
String()), null);
+ new PKIXBuilderParameters(badSet, null);
throw new Exception("should have thrown ClassCastException");
} catch (ClassCastException cce) { }
}
--- old/test/java/security/cert/PKIXParameters/InvalidParameters.java
2014-01-13 16:54:11.000000000 -0800
+++ new/test/java/security/cert/PKIXParameters/InvalidParameters.java
2014-01-13 16:54:10.000000000 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2004, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 2001, 2014, 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
@@ -24,7 +24,7 @@
/**
* @test
* @test 4422738
- * @compile -source 1.4 InvalidParameters.java
+ * @compile InvalidParameters.java
* @run main InvalidParameters
* @summary Make sure PKIXParameters(Set) and setTrustAnchors()
detects invalid
* parameters and throws correct exceptions
@@ -64,12 +64,14 @@
} catch (NullPointerException npe) { }
// make sure Set of invalid objects throws ClassCastException
+ @SuppressWarnings("unchecked") // Knowingly do something bad
+ Set<TrustAnchor> badSet = (Set<TrustAnchor>) (Set)
Collections.singleton(new String());
try {
- PKIXParameters p = new
PKIXParameters(Collections.singleton(new String()));
+ PKIXParameters p = new PKIXParameters(badSet);
throw new Exception("should have thrown ClassCastException");
} catch (ClassCastException cce) { }
try {
- params.setTrustAnchors(Collections.singleton(new String()));
+ params.setTrustAnchors(badSet);
throw new Exception("should have thrown ClassCastException");
} catch (ClassCastException cce) { }
}
In brief, raw types and unsafe casts are used to construct the corrupted
sets without needing source 1.4.
Thanks,
-Joe
More information about the security-dev
mailing list