diff --git a/sources b/sources
index 3bbcccc..ecce34e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (voms-clients-java-3.3.7.tar.gz) = 7ed80d50ec844a93fa6f566523fb64dc0b37b7163501bd30029a6ed7bf1d01103fc753daf438405b645c1e8b501846297cc705893fced23e270f31f7b89e7eda
+3e1e78b29e46583738c3526328f369e4 v3.0.6.tar.gz
diff --git a/voms-clients-java-except.patch b/voms-clients-java-except.patch
new file mode 100644
index 0000000..358a7c4
--- /dev/null
+++ b/voms-clients-java-except.patch
@@ -0,0 +1,18 @@
+diff -ur voms-clients-3.0.6.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java voms-clients-3.0.6/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java
+--- voms-clients-3.0.6.orig/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2015-01-09 14:10:14.000000000 +0100
++++ voms-clients-3.0.6/src/main/java/org/italiangrid/voms/clients/impl/DefaultVOMSProxyInitBehaviour.java 2015-03-18 10:07:21.739741876 +0100
+@@ -445,8 +445,12 @@
+ limitProxy(proxyOptions);
+
+ if (acs != null && !acs.isEmpty())
+- proxyOptions.setAttributeCertificates(acs
+- .toArray(new AttributeCertificate[acs.size()]));
++ try {
++ proxyOptions.setAttributeCertificates(acs
++ .toArray(new AttributeCertificate[acs.size()]));
++ } catch (IOException e) {
++ throw new VOMSError(e.getMessage(),e);
++ }
+
+ try {
+
diff --git a/voms-clients-java.spec b/voms-clients-java.spec
index 144f451..67f2996 100644
--- a/voms-clients-java.spec
+++ b/voms-clients-java.spec
@@ -1,42 +1,37 @@
Name: voms-clients-java
-Version: 3.3.7
-Release: 3%{?dist}
+Version: 3.0.6
+Release: 1%{?dist}
Summary: Virtual Organization Membership Service Java clients
-License: Apache-2.0
-URL: https://github.com/italiangrid/voms-clients
-Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
+License: ASL 2.0
+URL: https://wiki.italiangrid.it/VOMS
+Source0: https://github.com/italiangrid/voms-clients/archive/v%{version}.tar.gz
+# Uncaught exception with canl-java version 2 or later
+Patch0: %{name}-except.patch
BuildArch: noarch
-ExclusiveArch: %{java_arches} noarch
-
-%if %{?fedora}%{!?fedora:0} >= 43
-BuildRequires: maven-local-openjdk25
-%else
BuildRequires: maven-local
+%if %{?fedora}%{!?fedora:0}
+BuildRequires: mvn(com.mycila.maven-license-plugin:maven-license-plugin)
%endif
-BuildRequires: mvn(org.italiangrid:voms-api-java) >= 3.3.7
BuildRequires: mvn(commons-cli:commons-cli)
BuildRequires: mvn(commons-io:commons-io)
-BuildRequires: mvn(junit:junit)
-BuildRequires: asciidoctor
-Requires: mvn(org.italiangrid:voms-api-java) >= 3.3.7
-%if %{?rhel}%{!?rhel:0} == 9
-Requires: (java-headless or java-1.8.0-headless or java-11-headless or java-17-headless or java-21-headless or java-25-headless)
-%else
-Requires: (java-headless or java-21-headless or java-25-headless)
-%endif
-Suggests: java-headless
-Requires: javapackages-tools
+BuildRequires: mvn(org.italiangrid:voms-api-java)
Requires(post): %{_sbindir}/update-alternatives
-Requires(preun): %{_sbindir}/update-alternatives
+Requires(postun): %{_sbindir}/update-alternatives
# Older versions of voms-clients did not have alternatives
Conflicts: voms-clients < 2.0.12
Provides: voms-clients = %{version}-%{release}
+%if %{?fedora}%{!?fedora:0} >= 21 || %{?rhel}%{!?rhel:0} >= 7
+%global bcpkilib bcpkix
+%else
+%global bcpkilib bcmail
+%endif
+
%description
The Virtual Organization Membership Service (VOMS) is an attribute authority
which serves as central repository for VO user authorization information,
@@ -50,28 +45,22 @@ voms-proxy-init, voms-proxy-destroy and voms-proxy-info.
%prep
%setup -q -n voms-clients-%{version}
+%if %{?fedora}%{!?fedora:0} >= 21 || %{?rhel}%{!?rhel:0} >= 7
+%patch0 -p1
+%endif
-# Remove maven-javadoc-plugin configuration
-# We are not building the javadoc for this package
-%pom_remove_plugin org.apache.maven.plugins:maven-javadoc-plugin
+%mvn_package org.italiangrid:voms-clients:tar.gz:* __noinstall
-# 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
-
-# The asciidoctor plugin is not available in Fedora
-# Run asciidoctor explicitly in the build section instead
-%pom_remove_plugin org.asciidoctor:asciidoctor-maven-plugin
+%if %{?fedora}%{!?fedora:0}
+%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"
+%else
+%pom_remove_plugin com.mycila.maven-license-plugin:maven-license-plugin
+%endif
%build
%mvn_build -j
-pushd man
-for x in *.adoc ; do asciidoctor -b manpage $x ; done
-popd
-
%install
%mvn_install
@@ -79,25 +68,32 @@ mkdir -p %{buildroot}%{_bindir}
cat > %{buildroot}%{_bindir}/voms-proxy-init3 << EOF
#!/bin/sh
-VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-XX:+UseSerialGC -Xmx32m"}
-java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInit "\$@"
+VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-Xmx16m"}
+java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java %{bcpkilib} bcprov 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 -Xmx32m"}
-java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyInfo "\$@"
+VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-Xmx16m"}
+java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java %{bcpkilib} bcprov 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 -Xmx32m"}
-java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java bcpkix bcutil bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@"
+VOMS_CLIENTS_JAVA_OPTIONS=\${VOMS_CLIENTS_JAVA_OPTIONS:-"-Xmx16m"}
+java \$VOMS_CLIENTS_JAVA_OPTIONS -cp \$(build-classpath voms-clients-java voms-api-java canl-java %{bcpkilib} bcprov commons-cli commons-io) org.italiangrid.voms.clients.VomsProxyDestroy "\$@"
EOF
chmod 755 %{buildroot}%{_bindir}/voms-proxy-destroy3
+touch %{buildroot}%{_bindir}/voms-proxy-init
+chmod 755 %{buildroot}%{_bindir}/voms-proxy-init
+touch %{buildroot}%{_bindir}/voms-proxy-info
+chmod 755 %{buildroot}%{_bindir}/voms-proxy-info
+touch %{buildroot}%{_bindir}/voms-proxy-destroy
+chmod 755 %{buildroot}%{_bindir}/voms-proxy-destroy
+
mkdir -p %{buildroot}%{_mandir}/man1
install -p -m 644 man/voms-proxy-init.1 \
%{buildroot}%{_mandir}/man1/voms-proxy-init3.1
@@ -106,13 +102,9 @@ install -p -m 644 man/voms-proxy-info.1 \
install -p -m 644 man/voms-proxy-destroy.1 \
%{buildroot}%{_mandir}/man1/voms-proxy-destroy3.1
-mkdir -p %{buildroot}%{_sysconfdir}/alternatives
-for b in voms-proxy-init voms-proxy-info voms-proxy-destroy; do
- ln -s %{_bindir}/${b}3 %{buildroot}%{_sysconfdir}/alternatives/${b}
- ln -s %{_sysconfdir}/alternatives/${b} %{buildroot}%{_bindir}/${b}
- ln -s %{_mandir}/man1/${b}3.1.gz %{buildroot}%{_sysconfdir}/alternatives/${b}.1.gz
- ln -s %{_sysconfdir}/alternatives/${b}.1.gz %{buildroot}%{_mandir}/man1/${b}.1.gz
-done
+touch %{buildroot}%{_mandir}/man1/voms-proxy-init.1
+touch %{buildroot}%{_mandir}/man1/voms-proxy-info.1
+touch %{buildroot}%{_mandir}/man1/voms-proxy-destroy.1
mkdir -p %{buildroot}%{_mandir}/man5
install -p -m 644 man/vomsdir.5 %{buildroot}%{_mandir}/man5/vomsdir.5
@@ -132,7 +124,7 @@ install -p -m 644 man/vomses.5 %{buildroot}%{_mandir}/man5/vomses.5
--slave %{_mandir}/man1/voms-proxy-destroy.1.gz voms-proxy-destroy-man \
%{_mandir}/man1/voms-proxy-destroy3.1.gz
-%preun
+%postun
if [ $1 -eq 0 ] ; then
%{_sbindir}/update-alternatives --remove voms-proxy-init \
%{_bindir}/voms-proxy-init3
@@ -143,169 +135,29 @@ if [ $1 -eq 0 ] ; then
fi
%files -f .mfiles
+%dir %{_javadir}/%{name}
+%if %{?fedora}%{!?fedora:0} >= 21 || %{?rhel}%{!?rhel:0} >= 8
+%dir %{_mavenpomdir}/%{name}
+%endif
%{_bindir}/voms-proxy-destroy3
%{_bindir}/voms-proxy-info3
%{_bindir}/voms-proxy-init3
%ghost %{_bindir}/voms-proxy-destroy
%ghost %{_bindir}/voms-proxy-info
%ghost %{_bindir}/voms-proxy-init
-%ghost %{_sysconfdir}/alternatives/voms-proxy-destroy
-%ghost %{_sysconfdir}/alternatives/voms-proxy-info
-%ghost %{_sysconfdir}/alternatives/voms-proxy-init
%{_mandir}/man1/voms-proxy-destroy3.1*
%{_mandir}/man1/voms-proxy-info3.1*
%{_mandir}/man1/voms-proxy-init3.1*
%ghost %{_mandir}/man1/voms-proxy-destroy.1*
%ghost %{_mandir}/man1/voms-proxy-info.1*
%ghost %{_mandir}/man1/voms-proxy-init.1*
-%ghost %{_sysconfdir}/alternatives/voms-proxy-destroy.1*
-%ghost %{_sysconfdir}/alternatives/voms-proxy-info.1*
-%ghost %{_sysconfdir}/alternatives/voms-proxy-init.1*
%{_mandir}/man5/vomsdir.5*
%{_mandir}/man5/vomses.5*
-%doc README.md
-%license LICENSE
+%{!?_licensedir: %doc AUTHORS LICENSE README.md}
+%{?_licensedir: %doc AUTHORS README.md}
+%{?_licensedir: %license LICENSE}
%changelog
-* Fri Jul 17 2026 Fedora Release Engineering - 3.3.7-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
-
-* Sat Jan 17 2026 Fedora Release Engineering - 3.3.7-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
-
-* Sat Dec 20 2025 Mattias Ellert - 3.3.7-1
-- Update to version 3.3.7
-- Increase default max heap memory (following upstream)
-
-* Wed Aug 06 2025 Mattias Ellert - 3.3.6-1
-- Update to version 3.3.6
-
-* Mon Jul 28 2025 jiri vanek - 3.3.5-5
-- Rebuilt for java-25-openjdk as preffered jdk
-
-* Fri Jul 25 2025 Fedora Release Engineering - 3.3.5-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
-
-* Tue Jul 08 2025 Mattias Ellert - 3.3.5-3
-- Allow alternative java versions in EPEL 9
-
-* Tue Apr 22 2025 Mattias Ellert - 3.3.5-2
-- Update URL tag
-
-* Sat Apr 19 2025 Mattias Ellert - 3.3.5-1
-- Update to version 3.3.5
-
-* Sun Jan 19 2025 Fedora Release Engineering - 3.3.3-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
-
-* Sat Aug 03 2024 Mattias Ellert - 3.3.3-1
-- Update to version 3.3.3
-
-* Sat Jul 20 2024 Fedora Release Engineering - 3.3.2-16
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
-
-* Fri May 24 2024 Mattias Ellert - 3.3.2-15
-- Update License tags (SPDX)
-- Add additional ghost files to package (rpmlint)
-
-* Thu May 23 2024 Marian Koncek - 3.3.2-14
-- Add Requires on java-headless
-
-* Tue Feb 27 2024 Jiri Vanek - 3.3.2-13
-- Rebuilt for java-21-openjdk as system jdk
-
-* Sat Jan 27 2024 Fedora Release Engineering - 3.3.2-12
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-* Sat Jul 22 2023 Fedora Release Engineering - 3.3.2-11
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
-
-* Sat Jan 21 2023 Fedora Release Engineering - 3.3.2-10
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
-
-* Sat Jul 23 2022 Fedora Release Engineering - 3.3.2-9
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Fri Jul 08 2022 Jiri Vanek - 3.3.2-8
-- Rebuilt for Drop i686 JDKs
-
-* Sat Feb 05 2022 Jiri Vanek - 3.3.2-7
-- Rebuilt for java-17-openjdk as system jdk
-
-* Sat Jan 22 2022 Fedora Release Engineering - 3.3.2-6
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Fri Jan 14 2022 Mattias Ellert - 3.3.2-5
-- Add bcutil to classpath
-
-* Fri Jul 23 2021 Fedora Release Engineering - 3.3.2-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Mon May 17 2021 Mattias Ellert - 3.3.2-3
-- Add missing build requires mvn(junit:junit)
-
-* Wed Jan 27 2021 Fedora Release Engineering - 3.3.2-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Tue Oct 13 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 Jul 29 2020 Fedora Release Engineering - 3.3.0-9
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Sat Jul 11 2020 Jiri Vanek - 3.3.0-8
-- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
-
-* Fri Jan 31 2020 Fedora Release Engineering - 3.3.0-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Tue Aug 20 2019 Mattias Ellert - 3.3.0-6
-- Remove maven-javadoc-plugin configuration
-
-* Sat Jul 27 2019 Fedora Release Engineering - 3.3.0-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
-
-* Sun Feb 03 2019 Fedora Release Engineering - 3.3.0-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
-
-* Wed Oct 31 2018 Mattias Ellert - 3.3.0-3
-- Change default proxy cert key length to 2048 bits
-- Use a more sensible timeout
-
-* Sat Jul 14 2018 Fedora Release Engineering - 3.3.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
-
-* Thu Feb 08 2018 Mattias Ellert - 3.3.0-1
-- Update to version 3.3.0
-- Drop patches voms-clients-java-except.patch and -canl-2.5.patch
-
-* Fri Jan 05 2018 Mattias Ellert - 3.0.7-5
-- Adapt to canl-java 2.5
-
-* Tue Aug 08 2017 Mattias Ellert - 3.0.7-4
-- Don't do assembly
-
-* Thu Jul 27 2017 Fedora Release Engineering - 3.0.7-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Sat Feb 11 2017 Fedora Release Engineering - 3.0.7-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Sat Sep 10 2016 Mattias Ellert - 3.0.7-1
-- Update to version 3.0.7
-- Drop patch voms-clients-java-javadoc.patch
-
-* Fri Feb 05 2016 Fedora Release Engineering - 3.0.6-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Sat Jul 11 2015 Mattias Ellert - 3.0.6-3
-- Fix javadoc warnings
-
-* Fri Jun 19 2015 Fedora Release Engineering - 3.0.6-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
* Wed Mar 18 2015 Mattias Ellert - 3.0.6-1
- Update to version 3.0.6
- Implement new license packaging guidelines