diff --git a/voms-api-java-canl-2.5.patch b/voms-api-java-canl-2.5.patch new file mode 100644 index 0000000..d170c0f --- /dev/null +++ b/voms-api-java-canl-2.5.patch @@ -0,0 +1,197 @@ +diff -ur voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/impl/AbstractLoadCredentialsStrategy.java voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/impl/AbstractLoadCredentialsStrategy.java +--- voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/impl/AbstractLoadCredentialsStrategy.java 2016-02-11 16:57:01.000000000 +0100 ++++ voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/impl/AbstractLoadCredentialsStrategy.java 2018-01-05 12:30:30.853119209 +0100 +@@ -19,7 +19,7 @@ + import java.io.FileInputStream; + import java.io.FileNotFoundException; + +-import org.bouncycastle.openssl.PasswordFinder; ++import eu.emi.security.authn.x509.helpers.PasswordSupplier; + import org.italiangrid.voms.credential.LoadCredentialsEventListener; + import org.italiangrid.voms.credential.LoadCredentialsStrategy; + import org.italiangrid.voms.credential.VOMSEnvironmentVariables; +@@ -83,13 +83,13 @@ + * @param certificatePath + * the path to the certificate + * @param pf +- * a {@link PasswordFinder} used to resolve the private key password ++ * a {@link PasswordSupplier} used to resolve the private key password + * when needed + * @return the loaded {@link X509Credential}, or null if the + * credential couldn't be loaded + */ + protected X509Credential loadPEMCredential(String privateKeyPath, +- String certificatePath, PasswordFinder pf) { ++ String certificatePath, PasswordSupplier pf) { + + PEMCredential cred = null; + +@@ -120,12 +120,12 @@ + * @param pkcs12FilePath + * the path to the pkcs12 credential + * @param pf +- * a {@link PasswordFinder} used to resolve the private key password ++ * a {@link PasswordSupplier} used to resolve the private key password + * @return the loaded {@link X509Credential}, or null if the + * credential couldn't be loaded + */ + protected X509Credential loadPKCS12Credential(String pkcs12FilePath, +- PasswordFinder pf) { ++ PasswordSupplier pf) { + + KeystoreCredential cred = null; + +diff -ur voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/impl/DefaultLoadCredentialsStrategy.java voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/impl/DefaultLoadCredentialsStrategy.java +--- voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/impl/DefaultLoadCredentialsStrategy.java 2016-02-11 16:57:01.000000000 +0100 ++++ voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/impl/DefaultLoadCredentialsStrategy.java 2018-01-05 12:30:30.854119198 +0100 +@@ -15,7 +15,7 @@ + */ + package org.italiangrid.voms.credential.impl; + +-import org.bouncycastle.openssl.PasswordFinder; ++import eu.emi.security.authn.x509.helpers.PasswordSupplier; + import org.italiangrid.voms.VOMSError; + import org.italiangrid.voms.credential.LoadCredentialsEventListener; + import org.italiangrid.voms.credential.ProxyNamingPolicy; +@@ -115,7 +115,7 @@ + return val; + } + +- public X509Credential loadCredentials(PasswordFinder pf) { ++ public X509Credential loadCredentials(PasswordSupplier pf) { + + if (pf == null) + throw new IllegalArgumentException( +@@ -163,7 +163,7 @@ + return null; + } + +- protected X509Credential loadPEMCredentialFromEnv(PasswordFinder pf) { ++ protected X509Credential loadPEMCredentialFromEnv(PasswordSupplier pf) { + + String certPath = getFromEnvOrSystemProperty(X509_USER_CERT); + String keyPath = getFromEnvOrSystemProperty(X509_USER_KEY); +@@ -175,7 +175,7 @@ + return null; + } + +- protected X509Credential loadPKCS12CredentialFromEnv(PasswordFinder pf) { ++ protected X509Credential loadPKCS12CredentialFromEnv(PasswordSupplier pf) { + + String pkcs12Path = getFromEnvOrSystemProperty(PKCS12_USER_CERT); + +@@ -185,7 +185,7 @@ + return null; + } + +- protected X509Credential loadPKCS12CredentialsFromGlobusDir(PasswordFinder pf) { ++ protected X509Credential loadPKCS12CredentialsFromGlobusDir(PasswordSupplier pf) { + + String credPath = String.format("%s/%s", home, + GLOBUS_PKCS12_CRED_PATH_SUFFIX); +@@ -193,7 +193,7 @@ + + } + +- protected X509Credential loadPEMCredentialsFromGlobusDir(PasswordFinder pf) { ++ protected X509Credential loadPEMCredentialsFromGlobusDir(PasswordSupplier pf) { + + String certPath = String.format("%s/%s", home, GLOBUS_PEM_CERT_PATH_SUFFIX); + String keyPath = String.format("%s/%s", home, GLOBUS_PEM_KEY_PATH_SUFFIX); +diff -ur voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/LoadCredentialsStrategy.java voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/LoadCredentialsStrategy.java +--- voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/LoadCredentialsStrategy.java 2016-02-11 16:57:01.000000000 +0100 ++++ voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/LoadCredentialsStrategy.java 2018-01-05 12:30:30.852119219 +0100 +@@ -15,7 +15,7 @@ + */ + package org.italiangrid.voms.credential; + +-import org.bouncycastle.openssl.PasswordFinder; ++import eu.emi.security.authn.x509.helpers.PasswordSupplier; + + import eu.emi.security.authn.x509.X509Credential; + +@@ -37,5 +37,5 @@ + * @return an {@link X509Credential}, or null if no credential + * was found + */ +- public X509Credential loadCredentials(PasswordFinder passwordFinder); ++ public X509Credential loadCredentials(PasswordSupplier passwordFinder); + } +diff -ur voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/UserCredentials.java voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/UserCredentials.java +--- voms-api-java-3.2.0.orig/src/main/java/org/italiangrid/voms/credential/UserCredentials.java 2016-02-11 16:57:01.000000000 +0100 ++++ voms-api-java-3.2.0/src/main/java/org/italiangrid/voms/credential/UserCredentials.java 2018-01-05 12:30:30.852119219 +0100 +@@ -15,7 +15,7 @@ + */ + package org.italiangrid.voms.credential; + +-import org.bouncycastle.openssl.PasswordFinder; ++import eu.emi.security.authn.x509.helpers.PasswordSupplier; + import org.italiangrid.voms.credential.impl.DefaultLoadCredentialsStrategy; + + import eu.emi.security.authn.x509.X509Credential; +@@ -43,7 +43,7 @@ + + public static X509Credential loadCredentials(final char[] keyPassword) { + +- PasswordFinder pf = new PasswordFinder() { ++ PasswordSupplier pf = new PasswordSupplier() { + + public char[] getPassword() { + +@@ -54,7 +54,7 @@ + return loadCredentialsStrategy.loadCredentials(pf); + } + +- public static X509Credential loadCredentials(PasswordFinder passwordFinder) { ++ public static X509Credential loadCredentials(PasswordSupplier passwordFinder) { + + return loadCredentialsStrategy.loadCredentials(passwordFinder); + } +diff -ur voms-api-java-3.2.0.orig/src/test/java/org/italiangrid/voms/test/cred/TestLoadCredential.java voms-api-java-3.2.0/src/test/java/org/italiangrid/voms/test/cred/TestLoadCredential.java +--- voms-api-java-3.2.0.orig/src/test/java/org/italiangrid/voms/test/cred/TestLoadCredential.java 2016-02-11 16:57:01.000000000 +0100 ++++ voms-api-java-3.2.0/src/test/java/org/italiangrid/voms/test/cred/TestLoadCredential.java 2018-01-05 12:30:30.852119219 +0100 +@@ -15,7 +15,7 @@ + */ + package org.italiangrid.voms.test.cred; + +-import org.bouncycastle.openssl.PasswordFinder; ++import eu.emi.security.authn.x509.helpers.PasswordSupplier; + import org.italiangrid.voms.credential.impl.AbstractLoadCredentialsStrategy; + import org.italiangrid.voms.credential.impl.DefaultLoadCredentialsStrategy; + import org.italiangrid.voms.util.FilePermissionHelper; +@@ -51,7 +51,7 @@ + + "/.globus/usercred.p12"); + } + +- static class TestPasswordFinder implements PasswordFinder { ++ static class TestPasswordFinder implements PasswordSupplier { + + public char[] getPassword() { + +@@ -59,7 +59,7 @@ + } + } + +- static class NullPasswordFinder implements PasswordFinder { ++ static class NullPasswordSupplier implements PasswordSupplier { + + public char[] getPassword() { + +@@ -72,7 +72,7 @@ + + AbstractLoadCredentialsStrategy strategy = new DefaultLoadCredentialsStrategy( + emptyHome); +- X509Credential cred = strategy.loadCredentials(new NullPasswordFinder()); ++ X509Credential cred = strategy.loadCredentials(new NullPasswordSupplier()); + Assert.assertNull(cred); + } + +@@ -81,7 +81,7 @@ + + AbstractLoadCredentialsStrategy strategy = new DefaultLoadCredentialsStrategy( + emptyGlobusHome); +- X509Credential cred = strategy.loadCredentials(new NullPasswordFinder()); ++ X509Credential cred = strategy.loadCredentials(new NullPasswordSupplier()); + Assert.assertNull(cred); + } + diff --git a/voms-api-java.spec b/voms-api-java.spec index 173a6b5..84b8fdf 100644 --- a/voms-api-java.spec +++ b/voms-api-java.spec @@ -1,6 +1,6 @@ Name: voms-api-java Version: 3.2.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Virtual Organization Membership Service Java API License: ASL 2.0 @@ -8,14 +8,16 @@ URL: https://wiki.italiangrid.it/VOMS Source0: https://github.com/italiangrid/%{name}/archive/v%{version}.tar.gz # Disable tests using non-local network interface Patch0: %{name}-no-local.patch +# Adapt to canl-java version 2.5 +Patch1: %{name}-canl-2.5.patch BuildArch: noarch BuildRequires: maven-local -BuildRequires: mvn(eu.eu-emi.security:canl) +BuildRequires: mvn(eu.eu-emi.security:canl) >= 2.5 BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.mockito:mockito-core) -BuildRequires: mvn(com.mycila.maven-license-plugin:maven-license-plugin) BuildRequires: mvn(net.jcip:jcip-annotations) +Requires: mvn(eu.eu-emi.security:canl) >= 2.5 %description The Virtual Organization Membership Service (VOMS) is an attribute authority @@ -36,20 +38,25 @@ Virtual Organization Membership Service (VOMS) Java API Documentation. %prep %setup -q %patch0 -p1 +%patch1 -p1 +# Do not create source jars %pom_remove_plugin org.apache.maven.plugins:maven-source-plugin + +# Cobertura no longer in Fedora due to licensing issues %pom_remove_plugin org.codehaus.mojo:cobertura-maven-plugin -%pom_xpath_inject "pom:project/pom:build/pom:plugins/pom:plugin[pom:groupId='com.mycila.maven-license-plugin']/pom:configuration/pom:excludes" ".xmvn/**" -%pom_xpath_remove "pom:project/pom:build/pom:plugins/pom:plugin[pom:groupId='com.mycila.maven-license-plugin']/pom:configuration/pom:strictCheck" +# Remove license plugin +%pom_remove_plugin com.mycila.maven-license-plugin:maven-license-plugin %build %mvn_build %install -%mvn_install +%mvn_install -J target/site/javadoc/apidocs %files -f .mfiles +%dir %{_javadir}/%{name} %doc AUTHORS README.md %license LICENSE @@ -57,6 +64,10 @@ Virtual Organization Membership Service (VOMS) Java API Documentation. %license LICENSE %changelog +* Fri Jan 05 2018 Mattias Ellert - 3.2.0-5 +- Adapt to canl-java 2.5 +- Use jcip-annotations for EPEL 7 build + * Thu Jul 27 2017 Fedora Release Engineering - 3.2.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild @@ -70,6 +81,10 @@ Virtual Organization Membership Service (VOMS) Java API Documentation. - Update to version 3.2.0 - matches canl-java 2.2.x - Drop patches: voms-api-java-bc147.patch, -javadoc.patch and -testfix.patch +* Sun Feb 14 2016 Mattias Ellert - 3.1.0-1 +- Update to version 3.1.0 - matches canl-java 2.1.x +- Drop patches: voms-api-java-bc147.patch and -javadoc.patch + * Thu Feb 11 2016 Mattias Ellert - 3.0.5-5 - Backport fix for failing test due to new canl-java version