diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..0f92cc0 --- /dev/null +++ b/build.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/maven-build.properties b/maven-build.properties new file mode 100644 index 0000000..bb8217c --- /dev/null +++ b/maven-build.properties @@ -0,0 +1,34 @@ +#Generated by Maven Ant Plugin - DO NOT EDIT THIS FILE! +#Wed Oct 14 10:51:05 CEST 2020 +maven.settings.offline=true +voms-api-java.version=3.3.2 +maven.build.finalName=voms-clients-3.3.2 +commons-cli.version=1.2 +plugin.license.version=1.9.0 +maven.build.resourceDir.0=src/main/resources +maven.build.testOutputDir=${maven.build.dir}/test-classes +maven.build.testResourceDir.0=src/test/resources +maven.reporting.outputDirectory=${maven.build.dir}/site +plugin.compiler.version=3.1 +commons-io.version=2.0.1 +plugin.javadoc.version=2.9.1 +project.build.sourceEncoding=UTF-8 +maven.build.srcDir.0=src/main/java +plugin.assembly.version=2.4.1 +junit.version=4.10 +project.build.directory=${maven.build.dir} +maven.test.reports=${maven.build.dir}/test-reports +maven.build.dir=target +plugin.jar.version=2.5 +project.build.outputDirectory=${maven.build.outputDir} +plugin.nexus-staging.version=1.6.3 +plugin.source.version=2.2.1 +plugin.release.version=2.2.2 +project.reporting.outputEncoding=UTF-8 +voms-clients.libs= +maven.build.testDir.0=src/test/java +maven.settings.interactiveMode=true +plugin.gpg.version=1.5 +maven.repo.local=${user.home}/.m2/repository +plugin.deploy.version=2.8.2 +maven.build.outputDir=${maven.build.dir}/classes diff --git a/maven-build.xml b/maven-build.xml new file mode 100644 index 0000000..8b2f0d2 --- /dev/null +++ b/maven-build.xml @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + =================================== WARNING =================================== + JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed. + =============================================================================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sources b/sources index 60ca32b..7629928 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2f490ab2686722659049cf18a89b7355 v3.0.7.tar.gz +SHA512 (voms-clients-java-3.3.2.tar.gz) = 2228e1ee45aac029eaacc8ed859d42ec6668b1d885ab1a7dd2372dfa3fc28814be0edcbea8996f46152fcfed68390dbed8f1526e3d77935de18766748711d4c2 diff --git a/voms-clients-java-canl-2.5.patch b/voms-clients-java-canl-2.5.patch deleted file mode 100644 index 0a9b788..0000000 --- a/voms-clients-java-canl-2.5.patch +++ /dev/null @@ -1,141 +0,0 @@ -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2018-01-05 16:06:00.586887063 +0100 -@@ -31,7 +31,7 @@ - import java.util.concurrent.TimeUnit; - - import org.bouncycastle.asn1.x509.AttributeCertificate; --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - import org.italiangrid.voms.VOMSError; - import org.italiangrid.voms.VOMSValidators; - import org.italiangrid.voms.ac.VOMSACValidator; -@@ -590,7 +590,7 @@ - - private X509Credential lookupCredential(ProxyInitParams params) { - -- PasswordFinder pf = null; -+ PasswordSupplier pf = null; - - if (params.isReadPasswordFromStdin()) - pf = PasswordFinders.getNoPromptInputStreamPasswordFinder(System.in, -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/LoadProxyCredential.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/LoadProxyCredential.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/LoadProxyCredential.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/LoadProxyCredential.java 2018-01-05 16:06:00.587887052 +0100 -@@ -15,7 +15,7 @@ - */ - package org.italiangrid.voms.clients.impl; - --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - import org.italiangrid.voms.clients.util.VOMSProxyPathBuilder; - import org.italiangrid.voms.credential.LoadCredentialsEventListener; - import org.italiangrid.voms.credential.impl.AbstractLoadCredentialsStrategy; -@@ -39,7 +39,7 @@ - } - - @Override -- public X509Credential loadCredentials(PasswordFinder passwordFinder) { -+ public X509Credential loadCredentials(PasswordSupplier passwordFinder) { - - if (proxyFile == null) { - String envProxyPath = System.getenv(X509_USER_PROXY); -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/LoadUserCredential.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/LoadUserCredential.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/LoadUserCredential.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/LoadUserCredential.java 2018-01-05 16:06:00.587887052 +0100 -@@ -15,7 +15,7 @@ - */ - package org.italiangrid.voms.clients.impl; - --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - import org.italiangrid.voms.credential.LoadCredentialsEventListener; - import org.italiangrid.voms.credential.impl.AbstractLoadCredentialsStrategy; - -@@ -44,7 +44,7 @@ - } - - @Override -- public X509Credential loadCredentials(PasswordFinder passwordFinder) { -+ public X509Credential loadCredentials(PasswordSupplier passwordFinder) { - - if (pkcs12File != null) - return loadPKCS12Credential(pkcs12File, passwordFinder); -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/ConsolePasswordFinder.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/ConsolePasswordFinder.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/ConsolePasswordFinder.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/ConsolePasswordFinder.java 2018-01-05 16:06:00.583887096 +0100 -@@ -17,7 +17,7 @@ - - import java.io.Console; - --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - import org.italiangrid.voms.VOMSError; - - /** -@@ -25,7 +25,7 @@ - * @author andreaceccanti - * - */ --public class ConsolePasswordFinder implements PasswordFinder { -+public class ConsolePasswordFinder implements PasswordSupplier { - - private String promptMessage; - -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/InputStreamPasswordFinder.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/InputStreamPasswordFinder.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/InputStreamPasswordFinder.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/InputStreamPasswordFinder.java 2018-01-05 16:06:00.584887085 +0100 -@@ -22,10 +22,10 @@ - import java.io.OutputStream; - import java.io.PrintStream; - --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - import org.italiangrid.voms.VOMSError; - --public class InputStreamPasswordFinder implements PasswordFinder { -+public class InputStreamPasswordFinder implements PasswordSupplier { - - InputStream is; - PrintStream os; -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/PasswordFinders.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/PasswordFinders.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/util/PasswordFinders.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/util/PasswordFinders.java 2018-01-05 16:06:00.584887085 +0100 -@@ -18,13 +18,13 @@ - import java.io.InputStream; - import java.io.OutputStream; - --import org.bouncycastle.openssl.PasswordFinder; -+import eu.emi.security.authn.x509.helpers.PasswordSupplier; - - public class PasswordFinders { - - public static final String PROMPT_MESSAGE = "Enter GRID pass phrase for this identity:"; - -- public static PasswordFinder getDefault() { -+ public static PasswordSupplier getDefault() { - - if (System.console() != null) - return new ConsolePasswordFinder(PROMPT_MESSAGE); -@@ -32,18 +32,18 @@ - return new InputStreamPasswordFinder(PROMPT_MESSAGE, System.in, System.out); - } - -- public static PasswordFinder getConsolePasswordFinder() { -+ public static PasswordSupplier getConsolePasswordFinder() { - - return new ConsolePasswordFinder(PROMPT_MESSAGE); - } - -- public static PasswordFinder getInputStreamPasswordFinder(InputStream is, -+ public static PasswordSupplier getInputStreamPasswordFinder(InputStream is, - OutputStream os) { - - return new InputStreamPasswordFinder(PROMPT_MESSAGE, is, os); - } - -- public static PasswordFinder getNoPromptInputStreamPasswordFinder( -+ public static PasswordSupplier getNoPromptInputStreamPasswordFinder( - InputStream is, OutputStream os) { - - return new InputStreamPasswordFinder(null, is, os); diff --git a/voms-clients-java-except.patch b/voms-clients-java-except.patch deleted file mode 100644 index 3de0d93..0000000 --- a/voms-clients-java-except.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -ur voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java ---- voms-clients-3.0.7.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2016-09-09 12:06:42.000000000 +0200 -+++ voms-clients-3.0.7/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2018-01-05 16:34:10.919346599 +0100 -@@ -457,12 +457,12 @@ - if (params.isLimited()) - limitProxy(proxyOptions); - -- if (acs != null && !acs.isEmpty()) -- proxyOptions.setAttributeCertificates( -- acs.toArray(new AttributeCertificate[acs.size()])); -- - try { - -+ if (acs != null && !acs.isEmpty()) -+ proxyOptions.setAttributeCertificates( -+ acs.toArray(new AttributeCertificate[acs.size()])); -+ - ProxyCertificate proxy = ProxyGenerator.generate(proxyOptions, - credential.getKey()); - diff --git a/voms-clients-java.spec b/voms-clients-java.spec index 67f5435..285ed83 100644 --- a/voms-clients-java.spec +++ b/voms-clients-java.spec @@ -1,23 +1,35 @@ Name: voms-clients-java -Version: 3.0.7 -Release: 5%{?dist} +Version: 3.3.2 +Release: 1%{?dist} Summary: Virtual Organization Membership Service Java clients License: ASL 2.0 URL: https://wiki.italiangrid.it/VOMS -Source0: https://github.com/italiangrid/voms-clients/archive/v%{version}.tar.gz -# Uncaught exception (backport from upstream) -Patch0: %{name}-except.patch -# Adapt to canl-java 2.5 -Patch1: %{name}-canl-2.5.patch +Source0: https://github.com/italiangrid/voms-clients/archive/v%{version}/%{name}-%{version}.tar.gz +# These are build instructions for ant generated from the maven +# build instructions using the maven ant plugin. +# These are used for building on EPEL 6 since there is no maven +# available there. +Source1: build.xml +Source2: maven-build.xml +Source3: maven-build.properties BuildArch: noarch +# There is no jakarta-commons-io for ppc64 in EPEL6 +ExcludeArch: ppc64 -BuildRequires: maven-local -BuildRequires: mvn(commons-cli:commons-cli) -BuildRequires: mvn(commons-io:commons-io) -BuildRequires: mvn(org.italiangrid:voms-api-java) -BuildRequires: voms-api-java >= 3.2.0-5 -Requires: voms-api-java >= 3.2.0-5 +BuildRequires: java-1.8.0-openjdk-devel +BuildRequires: jpackage-utils +BuildRequires: ant +BuildRequires: ant-junit +BuildRequires: jakarta-commons-cli +BuildRequires: jakarta-commons-io +BuildRequires: junit4 +BuildRequires: voms-api-java >= 3.3.2 +Requires: java >= 1:1.8 +Requires: jpackage-utils +Requires: jakarta-commons-cli +Requires: jakarta-commons-io +Requires: voms-api-java >= 3.3.2 Requires(post): %{_sbindir}/update-alternatives Requires(postun): %{_sbindir}/update-alternatives @@ -26,6 +38,8 @@ Requires(postun): %{_sbindir}/update-alternatives Conflicts: voms-clients < 2.0.12 Provides: voms-clients = %{version}-%{release} +Provides: voms-clients3 = %{version}-%{release} +Obsoletes: voms-clients3 < 3.1 %description The Virtual Organization Membership Service (VOMS) is an attribute authority @@ -40,44 +54,43 @@ voms-proxy-init, voms-proxy-destroy and voms-proxy-info. %prep %setup -q -n voms-clients-%{version} -%patch0 -p1 -%patch1 -p1 - -# Do not create source jars -%pom_remove_plugin org.apache.maven.plugins:maven-source-plugin - -# Don't do assembly -%pom_remove_plugin :maven-assembly-plugin - -# Remove license plugin -%pom_remove_plugin com.mycila.maven-license-plugin:maven-license-plugin +cp -p %{SOURCE1} . +cp -p %{SOURCE2} . +cp -p %{SOURCE3} . %build -%mvn_build -j +export CLASSPATH=$(build-classpath voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io junit4) +%ant -Dbuild.sysclasspath=last package %install -%mvn_install +mkdir -p %{buildroot}%{_javadir} +install -m 644 target/voms-clients-%{version}.jar \ + %{buildroot}%{_javadir}/voms-clients.jar + +mkdir -p %{buildroot}%{_mavenpomdir} +install -p -m 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-voms-clients.pom +%add_to_maven_depmap org.italiangrid voms-clients %{version} JPP voms-clients mkdir -p %{buildroot}%{_bindir} cat > %{buildroot}%{_bindir}/voms-proxy-init3 << EOF #!/bin/sh VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInit "\$@" +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInit "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-init3 cat > %{buildroot}%{_bindir}/voms-proxy-info3 << EOF #!/bin/sh VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInfo "\$@" +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInfo "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-info3 cat > %{buildroot}%{_bindir}/voms-proxy-destroy3 << EOF #!/bin/sh VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx16m"} -java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@" +java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients voms-api-java canl bcpkix-1.58 bcprov-1.58 commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@" EOF chmod 755 %{buildroot}%{_bindir}/voms-proxy-destroy3 @@ -105,6 +118,7 @@ install -p -m 644 man/vomsdir.5 %{buildroot}%{_mandir}/man5/vomsdir.5 install -p -m 644 man/vomses.5 %{buildroot}%{_mandir}/man5/vomses.5 %post +%update_maven_depmap %{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-init \ voms-proxy-init %{_bindir}/voms-proxy-init3 90 \ --slave %{_mandir}/man1/voms-proxy-init.1.gz voms-proxy-init-man \ @@ -119,6 +133,7 @@ install -p -m 644 man/vomses.5 %{buildroot}%{_mandir}/man5/vomses.5 %{_mandir}/man1/voms-proxy-destroy3.1.gz %postun +%update_maven_depmap if [ $1 -eq 0 ] ; then %{_sbindir}/update-alternatives --remove voms-proxy-init \ %{_bindir}/voms-proxy-init3 @@ -128,8 +143,26 @@ if [ $1 -eq 0 ] ; then %{_bindir}/voms-proxy-destroy3 fi -%files -f .mfiles -%dir %{_javadir}/%{name} +%triggerpostun -- voms-clients3 +# Uninstalling the UMD voms-clients3 package will remove the alternatives +# for voms-clients-java - put them back in this triggerpostun script +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-init \ + voms-proxy-init %{_bindir}/voms-proxy-init3 90 \ + --slave %{_mandir}/man1/voms-proxy-init.1.gz voms-proxy-init-man \ + %{_mandir}/man1/voms-proxy-init3.1.gz +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-info \ + voms-proxy-info %{_bindir}/voms-proxy-info3 90 \ + --slave %{_mandir}/man1/voms-proxy-info.1.gz voms-proxy-info-man \ + %{_mandir}/man1/voms-proxy-info3.1.gz +%{_sbindir}/update-alternatives --install %{_bindir}/voms-proxy-destroy \ + voms-proxy-destroy %{_bindir}/voms-proxy-destroy3 90 \ + --slave %{_mandir}/man1/voms-proxy-destroy.1.gz voms-proxy-destroy-man \ + %{_mandir}/man1/voms-proxy-destroy3.1.gz + +%files +%{_javadir}/voms-clients.jar +%{_mavenpomdir}/JPP-voms-clients.pom +%config(noreplace) %{_mavendepmapfragdir}/%{name} %{_bindir}/voms-proxy-destroy3 %{_bindir}/voms-proxy-info3 %{_bindir}/voms-proxy-init3 @@ -148,8 +181,29 @@ fi %license LICENSE %changelog +* Wed Oct 14 2020 Mattias Ellert - 3.3.2-1 +- Update to version 3.3.2 +- Drop patches voms-clients-java-use-a-more-sensible-timeout.patch and + voms-clients-java-change-default-proxy-cert-key-length-to-2048-bits.patch + +* Wed Oct 31 2018 Mattias Ellert - 3.3.0-3 +- Change default proxy cert key length to 2048 bits +- Use a more sensible timeout + +* Tue Apr 10 2018 Mattias Ellert - 3.3.0-2 +- Add trigger scriptlet to restore removed alternatives + +* Thu Feb 08 2018 Mattias Ellert - 3.3.0-1 +- Build against bouncycastle1.58 +- Update to version 3.3.0 +- Drop patches voms-clients-java-except.patch and -canl-2.5.patch + +* Thu Jan 11 2018 Mattias Ellert - 3.0.7-6 +- Add Provides/Obsoletes voms-clients3 + * Fri Jan 05 2018 Mattias Ellert - 3.0.7-5 - Adapt to canl-java 2.5 +- Create EPEL 6 package using the maven ant plugin * Tue Aug 08 2017 Mattias Ellert - 3.0.7-4 - Don't do assembly