Compare commits

...

No commits in common. "c8-stream-3.6" and "stream-maven-3.5-rhel-8.9.0" have entirely different histories.

7 changed files with 146 additions and 205 deletions

24
.gitignore vendored
View File

@ -1 +1,23 @@
SOURCES/httpcomponents-client-4.5.10-src.tar.gz
/httpcomponents-client-4.0.3-src.tar.gz
httpcomponents-client-4.1-src.tar.gz
/httpcomponents-client-4.1.1-src.tar.gz
/httpcomponents-client-4.1.2-src.tar.gz
/httpcomponents-client-4.1.3-src.tar.gz
/httpcomponents-client-4.2.3-src.tar.gz
/httpcomponents-client-4.2.4-src.tar.gz
/httpcomponents-client-4.2.5-src.tar.gz
/httpcomponents-client-4.3-src.tar.gz
/httpcomponents-client-4.3.1-src.tar.gz
/httpcomponents-client-4.3.2-src.tar.gz
/httpcomponents-client-4.3.3-src.tar.gz
/httpcomponents-client-4.3.4-src.tar.gz
/httpcomponents-client-4.3.5-src.tar.gz
/httpcomponents-client-4.4-beta1-src.tar.gz
/effective_tld_names.dat
/httpcomponents-client-4.4-src.tar.gz
/httpcomponents-client-4.4.1-src.tar.gz
/httpcomponents-client-4.5-src.tar.gz
/httpcomponents-client-4.5.1-src.tar.gz
/httpcomponents-client-4.5.2-src.tar.gz
/httpcomponents-client-4.5.3-src.tar.gz
/httpcomponents-client-4.5.5-src.tar.gz

View File

@ -1 +1 @@
c3e525345e474f457b85d074a96865eaf5d397ad SOURCES/httpcomponents-client-4.5.10-src.tar.gz
f0e5b113ca4326046a482adee447daee4f688b96 httpcomponents-client-4.5.5-src.tar.gz

View File

@ -1,14 +1,14 @@
From e1c756ba18432e60600c57370076761bf4774ee7 Mon Sep 17 00:00:00 2001
From 46c89afa0fc522c1f6906a72f505ee16f36d2360 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Tue, 20 Jan 2015 16:04:31 +0100
Subject: [PATCH 1/3] Use system copy of effective_tld_names.dat
Subject: [PATCH 1/2] Use system copy of effective_tld_names.dat
---
.../apache/http/conn/util/PublicSuffixMatcherLoader.java | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java b/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java
index 3d762c188..c7b5a7eb1 100644
index 8783c5b96..c858220bf 100644
--- a/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java
+++ b/httpclient/src/main/java/org/apache/http/conn/util/PublicSuffixMatcherLoader.java
@@ -82,11 +82,10 @@ public final class PublicSuffixMatcherLoader {

View File

@ -1,7 +1,7 @@
From 0ac5caeaed1fa0354e02e0609f2c726b1b72eb8c Mon Sep 17 00:00:00 2001
From 11ce5ceabac935674a95da3ee56cd94a70c626a3 Mon Sep 17 00:00:00 2001
From: Oleg Kalnichevski <olegk@apache.org>
Date: Tue, 29 Sep 2020 09:37:38 +0200
Subject: [PATCH 3/3] Incorrect handling of malformed authority component by
Subject: [PATCH 2/2] Incorrect handling of malformed authority component by
URIUtils#extractHost
---
@ -10,10 +10,10 @@ Subject: [PATCH 3/3] Incorrect handling of malformed authority component by
2 files changed, 32 insertions(+), 43 deletions(-)
diff --git a/httpclient/src/main/java/org/apache/http/client/utils/URIUtils.java b/httpclient/src/main/java/org/apache/http/client/utils/URIUtils.java
index 8eb7667e3..aa3431f6f 100644
index 02f8c1ae9..7cbad777c 100644
--- a/httpclient/src/main/java/org/apache/http/client/utils/URIUtils.java
+++ b/httpclient/src/main/java/org/apache/http/client/utils/URIUtils.java
@@ -419,56 +419,43 @@ public class URIUtils {
@@ -334,56 +334,43 @@ public class URIUtils {
if (uri == null) {
return null;
}
@ -99,10 +99,10 @@ index 8eb7667e3..aa3431f6f 100644
/**
diff --git a/httpclient/src/test/java/org/apache/http/client/utils/TestURIUtils.java b/httpclient/src/test/java/org/apache/http/client/utils/TestURIUtils.java
index 189966635..98a44bc1c 100644
index e33477fce..8da6a26b2 100644
--- a/httpclient/src/test/java/org/apache/http/client/utils/TestURIUtils.java
+++ b/httpclient/src/test/java/org/apache/http/client/utils/TestURIUtils.java
@@ -273,14 +273,16 @@ public class TestURIUtils {
@@ -256,14 +256,16 @@ public class TestURIUtils {
Assert.assertEquals(new HttpHost("localhost",8080),
URIUtils.extractHost(new URI("http://localhost:8080/;sessionid=stuff/abcd")));

View File

@ -1,104 +0,0 @@
From e089dcee616e2fd37897e1a95492f581d1f6c939 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.booth@redhat.com>
Date: Fri, 7 Dec 2018 18:01:27 +0000
Subject: [PATCH 2/3] Port to mockito 2
Gets it building, but disables tests that are caused by change in
behaviour of mockito that I didn't know how to fix
---
.../http/impl/client/integration/TestAbortHandling.java | 1 +
.../http/impl/client/integration/TestSPNegoScheme.java | 2 ++
.../org/apache/http/impl/execchain/TestMainClientExec.java | 3 ++-
.../apache/http/impl/execchain/TestMinimalClientExec.java | 1 +
.../org/apache/http/impl/execchain/TestRedirectExec.java | 5 ++---
5 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java
index 67f058ded..4a8cd1ab0 100644
--- a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java
+++ b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestAbortHandling.java
@@ -288,6 +288,7 @@ public class TestAbortHandling extends LocalServerTestBase {
* properly released back to the connection manager.
*/
@Test
+ @org.junit.Ignore
public void testSocketConnectFailureReleasesConnection() throws Exception {
final HttpClientConnection conn = Mockito.mock(HttpClientConnection.class);
final ConnectionRequest connrequest = Mockito.mock(ConnectionRequest.class);
diff --git a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java
index f6380313e..31799cbc1 100644
--- a/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java
+++ b/httpclient/src/test/java/org/apache/http/impl/client/integration/TestSPNegoScheme.java
@@ -150,6 +150,7 @@ public class TestSPNegoScheme extends LocalServerTestBase {
* the server still keep asking for a valid ticket.
*/
@Test
+ @org.junit.Ignore
public void testDontTryToAuthenticateEndlessly() throws Exception {
this.serverBootstrap.registerHandler("*", new PleaseNegotiateService());
final HttpHost target = start();
@@ -180,6 +181,7 @@ public class TestSPNegoScheme extends LocalServerTestBase {
* if no token is generated. Client should be able to deal with this response.
*/
@Test
+ @org.junit.Ignore
public void testNoTokenGeneratedError() throws Exception {
this.serverBootstrap.registerHandler("*", new PleaseNegotiateService());
final HttpHost target = start();
diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java
index 7de9921e2..07b6bfccc 100644
--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java
+++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMainClientExec.java
@@ -402,6 +402,7 @@ public class TestMainClientExec {
}
@Test(expected=RequestAbortedException.class)
+ @org.junit.Ignore
public void testExecConnectionRequestFailed() throws Exception {
final HttpRoute route = new HttpRoute(target);
final HttpClientContext context = new HttpClientContext();
@@ -808,4 +809,4 @@ public class TestMainClientExec {
mainClientExec.establishRoute(authState, managedConn, route, request, context);
}
-}
\ No newline at end of file
+}
diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java
index 9a96ba686..41eb0236f 100644
--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java
+++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestMinimalClientExec.java
@@ -256,6 +256,7 @@ public class TestMinimalClientExec {
}
@Test(expected=RequestAbortedException.class)
+ @org.junit.Ignore
public void testExecConnectionRequestFailed() throws Exception {
final HttpRoute route = new HttpRoute(target);
final HttpClientContext context = new HttpClientContext();
diff --git a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java
index a5d0591da..78b1af440 100644
--- a/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java
+++ b/httpclient/src/test/java/org/apache/http/impl/execchain/TestRedirectExec.java
@@ -349,7 +349,7 @@ public class TestRedirectExec {
}
}
- static class HttpRequestWrapperMatcher extends ArgumentMatcher<HttpRequestWrapper> {
+ static class HttpRequestWrapperMatcher implements ArgumentMatcher<HttpRequestWrapper> {
private final HttpRequest original;
@@ -358,8 +358,7 @@ public class TestRedirectExec {
this.original = original;
}
@Override
- public boolean matches(final Object obj) {
- final HttpRequestWrapper wrapper = (HttpRequestWrapper) obj;
+ public boolean matches(final HttpRequestWrapper wrapper) {
return original == wrapper.getOriginal();
}
--
2.31.1

View File

@ -1,38 +1,40 @@
%bcond_without memcached
%bcond_without ehcache
Name: httpcomponents-client
Summary: HTTP agent implementation based on httpcomponents HttpCore
Version: 4.5.10
Release: 4%{?dist}
Version: 4.5.5
Release: 5%{?dist}
License: ASL 2.0
URL: http://hc.apache.org/
Source0: http://www.apache.org/dist/httpcomponents/httpclient/source/%{name}-%{version}-src.tar.gz
BuildArch: noarch
Patch0: 0001-Use-system-copy-of-effective_tld_names.dat.patch
Patch1: 0002-Port-to-mockito-2.patch
Patch2: 0003-Incorrect-handling-of-malformed-authority-component-.patch
Patch1: 0002-Incorrect-handling-of-malformed-authority-component-.patch
BuildRequires: maven-local-openjdk8
BuildRequires: %{?module_prefix}mvn(commons-codec:commons-codec)
BuildArch: noarch
BuildRequires: maven-local
BuildRequires: mvn(commons-codec:commons-codec)
BuildRequires: mvn(commons-logging:commons-logging)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.httpcomponents:httpcomponents-parent:pom:)
BuildRequires: %{?module_prefix}mvn(org.apache.httpcomponents:httpcore)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: mvn(org.mockito:mockito-core)
%if 0%{?module_prefix:1}
%package -n %{module_prefix}%{name}
Summary: %{summary}
%if %{with ehcache}
BuildRequires: mvn(net.sf.ehcache:ehcache-core)
%endif
%if %{with memcached}
BuildRequires: mvn(net.spy:spymemcached)
%endif
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.httpcomponents:httpcore)
BuildRequires: mvn(org.apache.httpcomponents:project:pom:)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: mvn(org.easymock:easymock)
BuildRequires: mvn(org.mockito:mockito-core)
BuildRequires: publicsuffix-list
Requires: publicsuffix-list
%if 0%{?module_prefix:1}
%description -n %{module_prefix}%{name}
%{summary}.
%endif
Obsoletes: %{name}-tests < 4.4
%description
HttpClient is a HTTP/1.1 compliant HTTP agent implementation based on
@ -42,62 +44,91 @@ management. HttpComponents Client is a successor of and replacement
for Commons HttpClient 3.x. Users of Commons HttpClient are strongly
encouraged to upgrade.
%{?javadoc_package}
%package cache
Summary: Cache module for %{name}
%description cache
This package provides client side caching for %{name}.
%package javadoc
Summary: API documentation for %{name}
%description javadoc
%{summary}.
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%mvn_package :::tests: __noinstall
# Change scope of commons-logging to provided
%pom_change_dep :commons-logging :::provided httpclient
%mvn_package :httpclient-cache cache
# Remove optional build deps not available in Fedora
%pom_disable_module httpclient-osgi
%pom_disable_module httpclient-win
%pom_disable_module fluent-hc
%pom_disable_module httpmime
%pom_disable_module httpclient-cache
%pom_remove_plugin :docbkx-maven-plugin
%pom_remove_plugin :clirr-maven-plugin
%pom_remove_plugin :maven-checkstyle-plugin
%pom_remove_plugin :apache-rat-plugin
%pom_remove_plugin :maven-source-plugin
%pom_remove_plugin :maven-javadoc-plugin
%pom_remove_plugin :animal-sniffer-maven-plugin
# Fails due to strict crypto policy - uses DSA in test data
rm httpclient/src/test/java/org/apache/http/conn/ssl/TestSSLSocketFactory.java
# Don't compile/run httpclient-cache tests - they are incompatible with EasyMock 3.3
%pom_remove_plugin org.apache.maven.plugins:maven-jar-plugin httpclient-cache
%pom_remove_dep org.easymock:easymockclassextension
for dep in org.easymock:easymockclassextension org.slf4j:slf4j-jcl; do
%pom_remove_dep $dep httpclient-cache
done
rm -rf httpclient-cache/src/test
%pom_remove_plugin :download-maven-plugin httpclient
%pom_xpath_inject "pom:archive" "
<manifestFile>\${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>"
# Add proper Apache felix bundle plugin instructions
# so that we get a reasonable OSGi manifest.
for module in httpclient httpmime httpclient-cache fluent-hc; do
%pom_xpath_remove "pom:project/pom:packaging" $module
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" $module
done
# Make fluent-hc into bundle
%pom_xpath_inject pom:build "
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
</plugin>
</plugins>" fluent-hc
# Make httpmime into bundle
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
</plugin>"
<extensions>true</extensions>
</plugin>" httpmime
%pom_xpath_inject pom:build "
<pluginManagement>
<plugins>
# Make httpclient into bundle
%pom_xpath_inject pom:reporting/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Export-Package>*</Export-Package>
<Private-Package></Private-Package>
<Import-Package>!org.apache.avalon.framework.logger,!org.apache.log,!org.apache.log4j,*</Import-Package>
</instructions>
</configuration>
</plugin>" httpclient
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Export-Package>org.apache.http.*,!org.apache.http.param</Export-Package>
@ -107,14 +138,37 @@ rm httpclient/src/test/java/org/apache/http/conn/ssl/TestSSLSocketFactory.java
</instructions>
<excludeDependencies>true</excludeDependencies>
</configuration>
</plugin>
</plugins>
</pluginManagement>
" httpclient
</plugin>" httpclient
# Make httpclient-cache into bundle
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Export-Package>*</Export-Package>
<Import-Package>net.sf.ehcache;resolution:=optional,net.spy.memcached;resolution:=optional,*</Import-Package>
<Private-Package></Private-Package>
<_nouses>true</_nouses>
</instructions>
<excludeDependencies>true</excludeDependencies>
</configuration>
</plugin>" httpclient-cache
# requires network
rm httpclient/src/test/java/org/apache/http/client/config/TestRequestConfig.java
%if %{without memcached}
rm -r httpclient-cache/src/*/java/org/apache/http/impl/client/cache/memcached
%pom_remove_dep :spymemcached httpclient-cache
%endif
%if %{without ehcache}
rm -r httpclient-cache/src/*/java/org/apache/http/impl/client/cache/ehcache
%pom_remove_dep :ehcache-core httpclient-cache
%endif
%build
%mvn_file ":{*}" httpcomponents/@1
@ -123,52 +177,20 @@ rm httpclient/src/test/java/org/apache/http/client/config/TestRequestConfig.java
%install
%mvn_install
%files -n %{?module_prefix}%{name} -f .mfiles
%license LICENSE.txt NOTICE.txt
%doc README.txt RELEASE_NOTES.txt
%files -f .mfiles
%doc LICENSE.txt NOTICE.txt README.txt RELEASE_NOTES.txt
%files cache -f .mfiles-cache
%files javadoc -f .mfiles-javadoc
%doc LICENSE.txt NOTICE.txt
%changelog
* Sat Sep 25 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.10-4
* Sat Sep 25 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.5-5
- Fix incorrect handling of malformed authority component in request URIs
- Resolves: CVE-2020-13956
* Sat Jan 25 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.10-3
- Build with OpenJDK 8
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.10-2
- Mass rebuild for javapackages-tools 201902
* Mon Sep 16 2019 Marian Koncek <mkoncek@redhat.com> - 4.5.10-1
- Update to upstream version 4.5.10
* Mon Jul 29 2019 Marian Koncek <mkoncek@redhat.com> - 4.5.9-1
- Update to upstream version 4.5.9
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.8-2
- Mass rebuild for javapackages-tools 201901
* Mon May 13 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.8-1
- Update to upstream version 4.5.8
* Mon Feb 04 2019 Marian Koncek <mkoncek@redhat.com> - 4.5.7-1
- Update to upstream version 4.5.7
- Fixes: RHBZ #1669148
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.5.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Dec 07 2018 Mat Booth <mat.booth@redhat.com> - 4.5.6-2
- Add a patch to allow building with mockito 2
- Don't package tests jars, the tests jars have the same OSGi metadata as the
main jars, which can cause tycho to resolve the wrong one when building
eclipse plugins
* Mon Oct 8 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.5.6-1
- Update to upstream version 4.5.6
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.5.5-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Mar 19 2018 Michael Simacek <msimacek@redhat.com> - 4.5.5-4
- Fix FTBFS (weak crypto in test data)

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (httpcomponents-client-4.5.5-src.tar.gz) = 8cfe5879f043c8a1dc7291567363a101c2ea653e99cbc640a18f1a498fc68b60e5321f953bd6765af61b551d45e1e635544328a363e01f13a1d8bd1dfe063e00