You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by co...@apache.org on 2015/07/10 13:03:37 UTC
svn commit: r1690243 - in
/santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test:
KeySelectors.java dsig/Baltimore18Test.java dsig/Baltimore23Test.java
dsig/LocalHttpCacheURIDereferencer.java
Author: coheigea
Date: Fri Jul 10 11:03:36 2015
New Revision: 1690243
URL: http://svn.apache.org/r1690243
Log:
Fix some failing tests with BouncyCastle
Modified:
santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/KeySelectors.java
santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore18Test.java
santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore23Test.java
santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/LocalHttpCacheURIDereferencer.java
Modified: santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/KeySelectors.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/KeySelectors.java?rev=1690243&r1=1690242&r2=1690243&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/KeySelectors.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/KeySelectors.java Fri Jul 10 11:03:36 2015
@@ -25,6 +25,7 @@ import java.io.*;
import java.security.*;
import java.security.cert.*;
import java.util.*;
+
import javax.xml.crypto.*;
import javax.xml.crypto.dsig.keyinfo.*;
import javax.crypto.SecretKey;
@@ -170,31 +171,38 @@ public class KeySelectors {
* matching public key.
*/
public static class CollectionKeySelector extends KeySelector {
- private CertificateFactory certFac;
- private File certDir;
- private List<X509Certificate> certs;
+ private final CertificateFactory certFac;
+ private final File certDir;
+ private final List<X509Certificate> certs = new ArrayList<X509Certificate>();
private static final int MATCH_SUBJECT = 0;
private static final int MATCH_ISSUER = 1;
private static final int MATCH_SERIAL = 2;
private static final int MATCH_SUBJECT_KEY_ID = 3;
private static final int MATCH_CERTIFICATE = 4;
- public CollectionKeySelector(File dir) {
+ public CollectionKeySelector(File dir) throws CertificateException {
certDir = dir;
- try {
- certFac = CertificateFactory.getInstance("X509");
- } catch (CertificateException ex) {
- // not going to happen
- }
- certs = new Vector<X509Certificate>();
+ certFac = CertificateFactory.getInstance("X509");
File[] files = new File(certDir, "certs").listFiles();
if (files != null) {
for (File file : files) {
+ FileInputStream fis = null;
try {
- certs.add((X509Certificate)certFac.generateCertificate
- (new FileInputStream(file)));
+ fis = new FileInputStream(file);
+ X509Certificate cert = (X509Certificate)certFac.generateCertificate(fis);
+ if (cert != null) {
+ certs.add(cert);
+ }
} catch (Exception ex) {
// ignore non-cert files
+ } finally {
+ if (fis != null) {
+ try {
+ fis.close();
+ } catch (IOException e) {
+ // ignore
+ }
+ }
}
}
}
@@ -203,7 +211,7 @@ public class KeySelectors {
public List<X509Certificate> match(
int matchType, Object value, List<X509Certificate> pool
) {
- List<X509Certificate> matchResult = new Vector<X509Certificate>();
+ List<X509Certificate> matchResult = new ArrayList<X509Certificate>();
for (X509Certificate c : pool) {
Modified: santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore18Test.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore18Test.java?rev=1690243&r1=1690242&r2=1690243&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore18Test.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore18Test.java Fri Jul 10 11:03:36 2015
@@ -23,9 +23,10 @@ package javax.xml.crypto.test.dsig;
import java.io.File;
import java.security.Security;
+import java.security.cert.CertificateException;
+
import javax.xml.crypto.KeySelector;
import javax.xml.crypto.URIDereferencer;
-
import javax.xml.crypto.test.KeySelectors;
/**
@@ -36,7 +37,6 @@ import javax.xml.crypto.test.KeySelector
*/
public class Baltimore18Test extends org.junit.Assert {
- private SignatureValidator validator;
private File dir;
private KeySelector cks;
private URIDereferencer ud;
@@ -46,14 +46,13 @@ public class Baltimore18Test extends org
(new org.apache.jcp.xml.dsig.internal.dom.XMLDSigRI(), 1);
}
- public Baltimore18Test() {
+ public Baltimore18Test() throws CertificateException {
String base = System.getProperty("basedir") == null ? "./": System.getProperty("basedir");
String fs = System.getProperty("file.separator");
dir = new File(base + fs + "src/test/resources" + fs + "ie" +
fs + "baltimore" + fs + "merlin-examples",
"merlin-xmldsig-eighteen");
- validator = new SignatureValidator(dir);
cks = new KeySelectors.CollectionKeySelector(dir);
ud = new LocalHttpCacheURIDereferencer();
}
@@ -62,6 +61,7 @@ public class Baltimore18Test extends org
public void testSignatureKeyname() throws Exception {
String file = "signature-keyname.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -70,6 +70,7 @@ public class Baltimore18Test extends org
public void testSignatureRetrievalmethodRawx509crt() throws Exception {
String file = "signature-retrievalmethod-rawx509crt.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -78,6 +79,7 @@ public class Baltimore18Test extends org
public void testSignatureX509CrtCrl() throws Exception {
String file = "signature-x509-crt-crl.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -86,6 +88,7 @@ public class Baltimore18Test extends org
public void testSignatureX509Crt() throws Exception {
String file = "signature-x509-crt.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -94,6 +97,7 @@ public class Baltimore18Test extends org
public void testSignatureX509Is() throws Exception {
String file = "signature-x509-is.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -102,6 +106,7 @@ public class Baltimore18Test extends org
public void testSignatureX509Ski() throws Exception {
String file = "signature-x509-ski.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -110,6 +115,7 @@ public class Baltimore18Test extends org
public void testSignatureX509Sn() throws Exception {
String file = "signature-x509-sn.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, cks, ud);
assertTrue("Signature failed core validation", coreValidity);
}
Modified: santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore23Test.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore23Test.java?rev=1690243&r1=1690242&r2=1690243&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore23Test.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/Baltimore23Test.java Fri Jul 10 11:03:36 2015
@@ -39,7 +39,6 @@ import javax.xml.crypto.test.KeySelector
*/
public class Baltimore23Test extends org.junit.Assert {
- private SignatureValidator validator;
private File dir;
private final URIDereferencer ud;
@@ -55,7 +54,6 @@ public class Baltimore23Test extends org
dir = new File(base + fs + "src/test/resources" + fs
+ "ie" + fs + "baltimore" + fs + "merlin-examples",
"merlin-xmldsig-twenty-three");
- validator = new SignatureValidator(dir);
ud = new LocalHttpCacheURIDereferencer();
}
@@ -63,6 +61,7 @@ public class Baltimore23Test extends org
public void test_signature_enveloped_dsa() throws Exception {
String file = "signature-enveloped-dsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector());
assertTrue("Signature failed core validation", coreValidity);
@@ -72,6 +71,7 @@ public class Baltimore23Test extends org
public void test_signature_enveloping_b64_dsa() throws Exception {
String file = "signature-enveloping-b64-dsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector());
assertTrue("Signature failed core validation", coreValidity);
@@ -81,6 +81,7 @@ public class Baltimore23Test extends org
public void test_signature_enveloping_dsa() throws Exception {
String file = "signature-enveloping-dsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector());
assertTrue("Signature failed core validation", coreValidity);
@@ -90,6 +91,7 @@ public class Baltimore23Test extends org
public void test_signature_external_b64_dsa() throws Exception {
String file = "signature-external-b64-dsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector(), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -99,6 +101,7 @@ public class Baltimore23Test extends org
public void test_signature_external_dsa() throws Exception {
String file = "signature-external-dsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector(), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -108,6 +111,7 @@ public class Baltimore23Test extends org
public void test_signature_enveloping_rsa() throws Exception {
String file = "signature-enveloping-rsa.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.KeyValueKeySelector());
assertTrue("Signature failed core validation", coreValidity);
@@ -119,6 +123,7 @@ public class Baltimore23Test extends org
KeySelector ks = new KeySelectors.SecretKeySelector
("secret".getBytes("ASCII") );
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate(file, ks);
assertTrue("Signature failed core validation", coreValidity);
}
@@ -130,6 +135,7 @@ public class Baltimore23Test extends org
KeySelector ks = new KeySelectors.SecretKeySelector
("secret".getBytes("ASCII") );
try {
+ SignatureValidator validator = new SignatureValidator(dir);
validator.validate(file, ks);
fail("Expected HMACOutputLength exception");
} catch (XMLSignatureException xse) {
@@ -142,6 +148,7 @@ public class Baltimore23Test extends org
public void test_signature_keyname() throws Exception {
String file = "signature-keyname.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.CollectionKeySelector(dir), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -151,6 +158,7 @@ public class Baltimore23Test extends org
public void test_signature_retrievalmethod_rawx509crt() throws Exception {
String file = "signature-retrievalmethod-rawx509crt.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.CollectionKeySelector(dir), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -160,6 +168,7 @@ public class Baltimore23Test extends org
public void test_signature_x509_crt_crl() throws Exception {
String file = "signature-x509-crt-crl.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.RawX509KeySelector(), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -169,6 +178,7 @@ public class Baltimore23Test extends org
public void test_signature_x509_crt() throws Exception {
String file = "signature-x509-crt.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.RawX509KeySelector(), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -178,6 +188,7 @@ public class Baltimore23Test extends org
public void test_signature_x509_is() throws Exception {
String file = "signature-x509-is.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.CollectionKeySelector(dir), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -187,6 +198,7 @@ public class Baltimore23Test extends org
public void test_signature_x509_ski() throws Exception {
String file = "signature-x509-ski.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.CollectionKeySelector(dir), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -196,6 +208,7 @@ public class Baltimore23Test extends org
public void test_signature_x509_sn() throws Exception {
String file = "signature-x509-sn.xml";
+ SignatureValidator validator = new SignatureValidator(dir);
boolean coreValidity = validator.validate
(file, new KeySelectors.CollectionKeySelector(dir), ud);
assertTrue("Signature failed core validation", coreValidity);
@@ -213,6 +226,7 @@ public class Baltimore23Test extends org
KeyStore ks = KeyStore.getInstance("JKS");
ks.load(new FileInputStream(keystore), "changeit".toCharArray());
+ SignatureValidator validator = new SignatureValidator(dir);
boolean cv = validator.validate(file, new X509KeySelector(ks, false), ud);
assertTrue("Signature failed core validation", cv);
}
Modified: santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/LocalHttpCacheURIDereferencer.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/LocalHttpCacheURIDereferencer.java?rev=1690243&r1=1690242&r2=1690243&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/LocalHttpCacheURIDereferencer.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/javax/xml/crypto/test/dsig/LocalHttpCacheURIDereferencer.java Fri Jul 10 11:03:36 2015
@@ -42,7 +42,9 @@ public class LocalHttpCacheURIDereferenc
private final Map<String, File> uriMap;
public LocalHttpCacheURIDereferencer() {
- ud = XMLSignatureFactory.getInstance().getURIDereferencer();
+ XMLSignatureFactory xmlSignatureFactory =
+ XMLSignatureFactory.getInstance("DOM", new org.apache.jcp.xml.dsig.internal.dom.XMLDSigRI());
+ ud = xmlSignatureFactory.getURIDereferencer();
String base = BASEDIR == null ? "./": BASEDIR;
File dir = new File(base + FS + "src/test/resources" + FS + "javax" +
FS + "xml" + FS + "crypto" + FS + "dsig");