%global do_not_test 1 Name: dnsjava Version: 3.5.3 Release: 3 Summary: Java DNS implementation License: BSD and MIT URL: http://www.dnsjava.org/ Source0: https://github.com/dnsjava/dnsjava/archive/v%{version}/%{name}-%{version}.tar.gz Patch0: 0001-Remove-mix-of-how-SetResponse-is-constructed.patch Patch1: 0001-CVE-2024-25638-Message-normalization.patch BuildRequires: aqute-bnd javapackages-local BuildRequires: maven-local BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.eclipse.aether:aether-connector-basic) BuildRequires: mvn(org.eclipse.aether:aether-transport-wagon) BuildRequires: mvn(org.apache.maven.wagon:wagon-http) BuildRequires: mvn(org.apache.maven.wagon:wagon-provider-api) BuildArch: noarch %description dnsjava is an implementation of DNS in Java. It supports all of the common record types and the DNSSEC types. It can be used for queries, zone transfers, and dynamic updates. It includes a cache which can be used by clients, and a minimal implementation of a server. It supports TSIG authenticated messages, partial DNSSEC verification, and EDNS0. dnsjava provides functionality above and beyond that of the InetAddress class. Since it is written in pure Java, dnsjava is fully threadable, and in many cases is faster than using InetAddress. dnsjava provides both high and low level access to DNS. The high level functions perform queries for records of a given name, type, and class, and return an array of records. There is also a clone of InetAddress, which is even simpler. A cache is used to reduce the number of DNS queries sent. The low level functions allow direct manipulation of dns messages and records, as well as allowing additional resolver properties to be set. A 'dig' clone and a dynamic update program are included, as well as a primary-only server. %package javadoc Summary: Javadoc for %{name} %description javadoc Javadoc for %{name}. %prep %setup -q rm -rf doc/ find -name "*.class" -print -delete find -name "*.jar" -print -delete %patch0 -p1 %patch1 -p1 iconv -f iso8859-1 -t utf8 Changelog > Changelog.tmp touch -r Changelog Changelog.tmp mv -f Changelog.tmp Changelog %mvn_file %{name}:%{name} %{name} %pom_remove_plugin org.sonatype.plugins:nexus-staging-maven-plugin %pom_remove_plugin org.codehaus.mojo:animal-sniffer-maven-plugin %pom_remove_plugin :japicmp-maven-plugin %pom_remove_plugin :maven-gpg-plugin %pom_remove_plugin :jacoco-maven-plugin %build export CLASSPATH=%(build-classpath jce aqute-bnd) %mvn_build -b -f --xmvn-javadoc %install install -d -m 0755 %{buildroot}%{_javadocdir}/%{name} %mvn_install -J doc export CLASSPATH='%(build-classpath junit):%{name}-%{version}.jar' cp -rf target/xmvn-apidocs/* %{buildroot}%{_javadocdir}/%{name} %files -f .mfiles %license LICENSE %doc Changelog README.adoc USAGE.md EXAMPLES.md %files javadoc %{_javadocdir}/%{name}/* %license LICENSE %changelog * Wed Jul 24 2024 zhangxianting - 3.5.3-3 - Backport to fix CVE-2024-25638, remove invalid patch * Tue Jul 23 2024 zhangxianting - 3.5.3-2 - Fix CVE-2024-25638 * Tue Feb 20 2024 Ge Wang - 3.5.3-1 - Update to 3.5.3 * Fri Aug 11 2023 Ge Wang - 3.5.2-1 - Update to 3.5.2 * Wed Jun 01 2022 yaoxin - 2.1.9-1 - Update to 2.1.9 * Sat Aug 15 2020 yanan li - 2.1.3-1 - Package init