jgit/org.eclipse.jgit.http.test
Thomas Wolf 58f4e6e7f8 TransportHttp: support preemptive Basic authentication
If the caller knows already HTTP Basic authentication will be needed
and if it also already has the username and password, preemptive
authentication is a little bit more efficient since it avoids the
initial 401 response.

Add a setPreemptiveBasicAuthentication(username, password) method
to TransportHttp. Client code could call this for instance in a
TransportConfigCallback. The method throws an IllegalStateException
if it is called after an HTTP request has already been made.

Additionally, a URI can include userinfo. Although it is not
recommended to put passwords in URIs, JGit's URIish and also the
Java URL and URI classes still allow it. The underlying HTTP
connection may omit these fields though. If present, take these
fields as additional source for preemptive Basic authentication if
setPreemptiveBasicAuthentication() has not been called.

No preemptive authentication will be done if the connection is
redirected to a different host.

Add tests.

Bug: 541327
Change-Id: Id00b975e56a15b532de96f7bbce48106d992a22b
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
2021-01-14 16:23:45 +01:00
..
.settings Ignore missing javadoc tags in test bundles 2020-11-29 20:16:38 +01:00
META-INF TransportHttp: make the connection factory configurable 2021-01-14 16:23:44 +01:00
src/org/eclipse/jgit/http/test Update EDL 1.0 license headers to new short SPDX compliant format 2020-01-04 01:10:05 +01:00
tst/org/eclipse/jgit TransportHttp: support preemptive Basic authentication 2021-01-14 16:23:45 +01:00
.classpath Configure classpath for separate test sources in Eclipse 2018-10-17 11:08:24 +09:00
.gitignore Make HTTP test project work in Eclipse 2010-01-23 11:29:25 -08:00
.project Enforce the use of Java5 API:s only (with a few exceptions) 2011-12-16 01:01:36 +01:00
BUILD Bazel: Remove superfluous dependencies flagged by unused_deps 2020-05-22 17:48:19 +02:00
build.properties Client-side protocol V2 support for fetching 2021-01-01 21:22:30 +01:00
org.eclipse.jgit.http--All-Tests.launch Add the other test launchers as favorites 2013-06-16 23:33:29 +02:00
plugin.properties Fix bundle localization of Apache SSH bundle 2019-06-21 17:54:06 +02:00
pom.xml Prepare 5.11.0-SNAPSHOT builds 2020-12-02 15:57:16 +01:00