Switch to Apache MINA sshd 2.10.0

Bump the version numbers in pom.xml and in MANIFESTs, and in the bazel
WORKSPACE file. Update the target platforms. Remove work-arounds in
org.eclipse.jgit.ssh.apache that are no longer necessary.

The release notes for Apache MINA sshd are at [1].

[1] https://github.com/apache/mina-sshd/blob/master/docs/changes/2.10.0.md

Bug: 581770
Change-Id: Id27e73e9712b7865353c9b32b5b768f6e998b05e
Signed-off-by: Thomas Wolf <twolf@apache.org>
This commit is contained in:
Thomas Wolf 2023-04-03 19:33:24 +02:00 committed by Matthias Sohn
parent 43954ea62a
commit 913e6cf3f6
25 changed files with 346 additions and 274 deletions

View File

@ -90,18 +90,18 @@ maven_jar(
sha1 = "51cf043c87253c9f58b539c9f7e44c8894223850",
)
SSHD_VERS = "2.9.2"
SSHD_VERS = "2.10.0"
maven_jar(
name = "sshd-osgi",
artifact = "org.apache.sshd:sshd-osgi:" + SSHD_VERS,
sha1 = "bac0415734519b2fe433fea196017acf7ed32660",
sha1 = "03677ac1da780b7bdb682da50b762d79ea0d940d",
)
maven_jar(
name = "sshd-sftp",
artifact = "org.apache.sshd:sshd-sftp:" + SSHD_VERS,
sha1 = "7f9089c87b3b44f19998252fd3b68637e3322920",
sha1 = "88707339ac0693d48df0ec1bafb84c78d792ed08",
)
maven_jar(

View File

@ -8,31 +8,31 @@ Bundle-Localization: plugin
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-11
Import-Package: org.apache.sshd.common;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys;version="[2.9.2,2.10.0)",
org.apache.sshd.common.file.virtualfs;version="[2.9.2,2.10.0)",
org.apache.sshd.common.helpers;version="[2.9.2,2.10.0)",
org.apache.sshd.common.io;version="[2.9.2,2.10.0)",
org.apache.sshd.common.kex;version="[2.9.2,2.10.0)",
org.apache.sshd.common.keyprovider;version="[2.9.2,2.10.0)",
org.apache.sshd.common.session;version="[2.9.2,2.10.0)",
org.apache.sshd.common.signature;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.buffer;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.logging;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.security;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.threads;version="[2.9.2,2.10.0)",
org.apache.sshd.core;version="[2.9.2,2.10.0)",
org.apache.sshd.server;version="[2.9.2,2.10.0)",
org.apache.sshd.server.auth;version="[2.9.2,2.10.0)",
org.apache.sshd.server.auth.gss;version="[2.9.2,2.10.0)",
org.apache.sshd.server.auth.keyboard;version="[2.9.2,2.10.0)",
org.apache.sshd.server.auth.password;version="[2.9.2,2.10.0)",
org.apache.sshd.server.command;version="[2.9.2,2.10.0)",
org.apache.sshd.server.session;version="[2.9.2,2.10.0)",
org.apache.sshd.server.shell;version="[2.9.2,2.10.0)",
org.apache.sshd.server.subsystem;version="[2.9.2,2.10.0)",
org.apache.sshd.sftp;version="[2.9.2,2.10.0)",
org.apache.sshd.sftp.server;version="[2.9.2,2.10.0)",
Import-Package: org.apache.sshd.common;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys;version="[2.10.0,2.11.0)",
org.apache.sshd.common.file.virtualfs;version="[2.10.0,2.11.0)",
org.apache.sshd.common.helpers;version="[2.10.0,2.11.0)",
org.apache.sshd.common.io;version="[2.10.0,2.11.0)",
org.apache.sshd.common.kex;version="[2.10.0,2.11.0)",
org.apache.sshd.common.keyprovider;version="[2.10.0,2.11.0)",
org.apache.sshd.common.session;version="[2.10.0,2.11.0)",
org.apache.sshd.common.signature;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.buffer;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.logging;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.security;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.threads;version="[2.10.0,2.11.0)",
org.apache.sshd.core;version="[2.10.0,2.11.0)",
org.apache.sshd.server;version="[2.10.0,2.11.0)",
org.apache.sshd.server.auth;version="[2.10.0,2.11.0)",
org.apache.sshd.server.auth.gss;version="[2.10.0,2.11.0)",
org.apache.sshd.server.auth.keyboard;version="[2.10.0,2.11.0)",
org.apache.sshd.server.auth.password;version="[2.10.0,2.11.0)",
org.apache.sshd.server.command;version="[2.10.0,2.11.0)",
org.apache.sshd.server.session;version="[2.10.0,2.11.0)",
org.apache.sshd.server.shell;version="[2.10.0,2.11.0)",
org.apache.sshd.server.subsystem;version="[2.10.0,2.11.0)",
org.apache.sshd.sftp;version="[2.10.0,2.11.0)",
org.apache.sshd.sftp.server;version="[2.10.0,2.11.0)",
org.eclipse.jgit.annotations;version="[6.6.0,6.7.0)",
org.eclipse.jgit.api;version="[6.6.0,6.7.0)",
org.eclipse.jgit.api.errors;version="[6.6.0,6.7.0)",

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.17" sequenceNumber="1682976650">
<target name="jgit-4.17" sequenceNumber="1684174618">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.18" sequenceNumber="1682976650">
<target name="jgit-4.18" sequenceNumber="1684174619">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.19-staging" sequenceNumber="1682976650">
<target name="jgit-4.19-staging" sequenceNumber="1684174619">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.20" sequenceNumber="1682976650">
<target name="jgit-4.20" sequenceNumber="1684174621">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.21" sequenceNumber="1682976650">
<target name="jgit-4.21" sequenceNumber="1684174622">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.22" sequenceNumber="1682976649">
<target name="jgit-4.22" sequenceNumber="1684174622">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.23" sequenceNumber="1682976649">
<target name="jgit-4.23" sequenceNumber="1684174623">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.24" sequenceNumber="1682976649">
<target name="jgit-4.24" sequenceNumber="1684174625">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.25" sequenceNumber="1682976649">
<target name="jgit-4.25" sequenceNumber="1684174627">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.26" sequenceNumber="1682976649">
<target name="jgit-4.26" sequenceNumber="1684174628">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.27" sequenceNumber="1683070193">
<target name="jgit-4.27" sequenceNumber="1684174630">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.28" sequenceNumber="1683070193">
<target name="jgit-4.28" sequenceNumber="1684174632">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="com.google.gson" version="2.10.1.v20230109-0753"/>
@ -28,10 +28,6 @@
<unit id="org.apache.httpcomponents.httpclient.source" version="4.5.14.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.httpcomponents.httpcore.source" version="4.4.16.v20221207-1049"/>
<unit id="org.apache.sshd.osgi" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.osgi.source" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp" version="2.9.2.v20221117-1942"/>
<unit id="org.apache.sshd.sftp.source" version="2.9.2.v20221117-1942"/>
<unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
@ -70,6 +66,22 @@
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="sshd">
<dependencies>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-osgi</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>2.10.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>
<location includeDependencyDepth="none" includeDependencyScopes="compile" includeSource="true" missingManifest="error" type="Maven" label="jetty">
<dependencies>
<dependency>

View File

@ -121,6 +121,24 @@ maven jetty
}
}
maven sshd
scope = compile
dependencyDepth = none
missingManifest = error
includeSources
{
dependency {
groupId = "org.apache.sshd"
artifactId = "sshd-osgi"
version = "2.10.0"
}
dependency {
groupId = "org.apache.sshd"
artifactId = "sshd-sftp"
version = "2.10.0"
}
}
maven slf4j
scope = compile
dependencyDepth = none

View File

@ -26,10 +26,6 @@ location "https://download.eclipse.org/tools/orbit/downloads/drops/R202303020146
org.apache.httpcomponents.httpclient.source [4.5.14.v20221207-1049,4.5.14.v20221207-1049]
org.apache.httpcomponents.httpcore [4.4.16.v20221207-1049,4.4.16.v20221207-1049]
org.apache.httpcomponents.httpcore.source [4.4.16.v20221207-1049,4.4.16.v20221207-1049]
org.apache.sshd.osgi [2.9.2.v20221117-1942,2.9.2.v20221117-1942]
org.apache.sshd.osgi.source [2.9.2.v20221117-1942,2.9.2.v20221117-1942]
org.apache.sshd.sftp [2.9.2.v20221117-1942,2.9.2.v20221117-1942]
org.apache.sshd.sftp.source [2.9.2.v20221117-1942,2.9.2.v20221117-1942]
org.hamcrest [2.2.0.v20210711-0821,2.2.0.v20210711-0821]
org.hamcrest.source [2.2.0.v20210711-0821,2.2.0.v20210711-0821]
org.hamcrest.core [1.3.0.v20180420-1519,1.3.0.v20180420-1519]

View File

@ -7,20 +7,20 @@ Bundle-Version: 6.6.0.qualifier
Bundle-Vendor: %Bundle-Vendor
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-11
Import-Package: org.apache.sshd.client.config.hosts;version="[2.9.2,2.10.0)",
org.apache.sshd.common;version="[2.9.2,2.10.0)",
org.apache.sshd.common.auth;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys;version="[2.9.2,2.10.0)",
org.apache.sshd.common.helpers;version="[2.9.2,2.10.0)",
org.apache.sshd.common.kex;version="[2.9.2,2.10.0)",
org.apache.sshd.common.keyprovider;version="[2.9.2,2.10.0)",
org.apache.sshd.common.session;version="[2.9.2,2.10.0)",
org.apache.sshd.common.signature;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.net;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.security;version="[2.9.2,2.10.0)",
org.apache.sshd.core;version="[2.9.2,2.10.0)",
org.apache.sshd.server;version="[2.9.2,2.10.0)",
org.apache.sshd.server.forward;version="[2.9.2,2.10.0)",
Import-Package: org.apache.sshd.client.config.hosts;version="[2.10.0,2.11.0)",
org.apache.sshd.common;version="[2.10.0,2.11.0)",
org.apache.sshd.common.auth;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys;version="[2.10.0,2.11.0)",
org.apache.sshd.common.helpers;version="[2.10.0,2.11.0)",
org.apache.sshd.common.kex;version="[2.10.0,2.11.0)",
org.apache.sshd.common.keyprovider;version="[2.10.0,2.11.0)",
org.apache.sshd.common.session;version="[2.10.0,2.11.0)",
org.apache.sshd.common.signature;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.net;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.security;version="[2.10.0,2.11.0)",
org.apache.sshd.core;version="[2.10.0,2.11.0)",
org.apache.sshd.server;version="[2.10.0,2.11.0)",
org.apache.sshd.server.forward;version="[2.10.0,2.11.0)",
org.eclipse.jgit.api;version="[6.6.0,6.7.0)",
org.eclipse.jgit.api.errors;version="[6.6.0,6.7.0)",
org.eclipse.jgit.internal.transport.sshd.proxy;version="[6.6.0,6.7.0)",

View File

@ -35,57 +35,57 @@ Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.6.0";x-inter
org.apache.sshd.client.keyverifier",
org.eclipse.jgit.transport.sshd.agent;version="6.6.0"
Import-Package: net.i2p.crypto.eddsa;version="[0.3.0,0.4.0)",
org.apache.sshd.agent;version="[2.9.2,2.10.0)",
org.apache.sshd.client;version="[2.9.2,2.10.0)",
org.apache.sshd.client.auth;version="[2.9.2,2.10.0)",
org.apache.sshd.client.auth.keyboard;version="[2.9.2,2.10.0)",
org.apache.sshd.client.auth.password;version="[2.9.2,2.10.0)",
org.apache.sshd.client.auth.pubkey;version="[2.9.2,2.10.0)",
org.apache.sshd.client.channel;version="[2.9.2,2.10.0)",
org.apache.sshd.client.config.hosts;version="[2.9.2,2.10.0)",
org.apache.sshd.client.config.keys;version="[2.9.2,2.10.0)",
org.apache.sshd.client.future;version="[2.9.2,2.10.0)",
org.apache.sshd.client.keyverifier;version="[2.9.2,2.10.0)",
org.apache.sshd.client.session;version="[2.9.2,2.10.0)",
org.apache.sshd.client.session.forward;version="[2.9.2,2.10.0)",
org.apache.sshd.common;version="[2.9.2,2.10.0)",
org.apache.sshd.common.auth;version="[2.9.2,2.10.0)",
org.apache.sshd.common.channel;version="[2.9.2,2.10.0)",
org.apache.sshd.common.compression;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys.loader;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys.loader.openssh.kdf;version="[2.9.2,2.10.0)",
org.apache.sshd.common.config.keys.u2f;version="[2.9.2,2.10.0)",
org.apache.sshd.common.digest;version="[2.9.2,2.10.0)",
org.apache.sshd.common.forward;version="[2.9.2,2.10.0)",
org.apache.sshd.common.future;version="[2.9.2,2.10.0)",
org.apache.sshd.common.helpers;version="[2.9.2,2.10.0)",
org.apache.sshd.common.io;version="[2.9.2,2.10.0)",
org.apache.sshd.common.kex;version="[2.9.2,2.10.0)",
org.apache.sshd.common.kex.extension;version="[2.9.2,2.10.0)",
org.apache.sshd.common.kex.extension.parser;version="[2.9.2,2.10.0)",
org.apache.sshd.common.keyprovider;version="[2.9.2,2.10.0)",
org.apache.sshd.common.mac;version="[2.9.2,2.10.0)",
org.apache.sshd.common.random;version="[2.9.2,2.10.0)",
org.apache.sshd.common.session;version="[2.9.2,2.10.0)",
org.apache.sshd.common.session.helpers;version="[2.9.2,2.10.0)",
org.apache.sshd.common.signature;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.buffer;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.buffer.keys;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.closeable;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.io;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.io.der;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.io.functors;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.io.resource;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.logging;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.net;version="[2.9.2,2.10.0)",
org.apache.sshd.common.util.security;version="[2.9.2,2.10.0)",
org.apache.sshd.core;version="[2.9.2,2.10.0)",
org.apache.sshd.server.auth;version="[2.9.2,2.10.0)",
org.apache.sshd.sftp;version="[2.9.2,2.10.0)",
org.apache.sshd.sftp.client;version="[2.9.2,2.10.0)",
org.apache.sshd.sftp.common;version="[2.9.2,2.10.0)",
org.apache.sshd.agent;version="[2.10.0,2.11.0)",
org.apache.sshd.client;version="[2.10.0,2.11.0)",
org.apache.sshd.client.auth;version="[2.10.0,2.11.0)",
org.apache.sshd.client.auth.keyboard;version="[2.10.0,2.11.0)",
org.apache.sshd.client.auth.password;version="[2.10.0,2.11.0)",
org.apache.sshd.client.auth.pubkey;version="[2.10.0,2.11.0)",
org.apache.sshd.client.channel;version="[2.10.0,2.11.0)",
org.apache.sshd.client.config.hosts;version="[2.10.0,2.11.0)",
org.apache.sshd.client.config.keys;version="[2.10.0,2.11.0)",
org.apache.sshd.client.future;version="[2.10.0,2.11.0)",
org.apache.sshd.client.keyverifier;version="[2.10.0,2.11.0)",
org.apache.sshd.client.session;version="[2.10.0,2.11.0)",
org.apache.sshd.client.session.forward;version="[2.10.0,2.11.0)",
org.apache.sshd.common;version="[2.10.0,2.11.0)",
org.apache.sshd.common.auth;version="[2.10.0,2.11.0)",
org.apache.sshd.common.channel;version="[2.10.0,2.11.0)",
org.apache.sshd.common.compression;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys.loader;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys.loader.openssh.kdf;version="[2.10.0,2.11.0)",
org.apache.sshd.common.config.keys.u2f;version="[2.10.0,2.11.0)",
org.apache.sshd.common.digest;version="[2.10.0,2.11.0)",
org.apache.sshd.common.forward;version="[2.10.0,2.11.0)",
org.apache.sshd.common.future;version="[2.10.0,2.11.0)",
org.apache.sshd.common.helpers;version="[2.10.0,2.11.0)",
org.apache.sshd.common.io;version="[2.10.0,2.11.0)",
org.apache.sshd.common.kex;version="[2.10.0,2.11.0)",
org.apache.sshd.common.kex.extension;version="[2.10.0,2.11.0)",
org.apache.sshd.common.kex.extension.parser;version="[2.10.0,2.11.0)",
org.apache.sshd.common.keyprovider;version="[2.10.0,2.11.0)",
org.apache.sshd.common.mac;version="[2.10.0,2.11.0)",
org.apache.sshd.common.random;version="[2.10.0,2.11.0)",
org.apache.sshd.common.session;version="[2.10.0,2.11.0)",
org.apache.sshd.common.session.helpers;version="[2.10.0,2.11.0)",
org.apache.sshd.common.signature;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.buffer;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.buffer.keys;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.closeable;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.io;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.io.der;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.io.functors;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.io.resource;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.logging;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.net;version="[2.10.0,2.11.0)",
org.apache.sshd.common.util.security;version="[2.10.0,2.11.0)",
org.apache.sshd.core;version="[2.10.0,2.11.0)",
org.apache.sshd.server.auth;version="[2.10.0,2.11.0)",
org.apache.sshd.sftp;version="[2.10.0,2.11.0)",
org.apache.sshd.sftp.client;version="[2.10.0,2.11.0)",
org.apache.sshd.sftp.common;version="[2.10.0,2.11.0)",
org.eclipse.jgit.annotations;version="[6.6.0,6.7.0)",
org.eclipse.jgit.errors;version="[6.6.0,6.7.0)",
org.eclipse.jgit.fnmatch;version="[6.6.0,6.7.0)",

View File

@ -50,6 +50,16 @@
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-sftp</artifactId>
<version>${apache-sshd-version}</version>
<exclusions>
<exclusion>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-common</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>

View File

@ -1,37 +0,0 @@
/*
* Copyright (C) 2018, Thomas Wolf <thomas.wolf@paranor.ch> and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
* https://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package org.eclipse.jgit.internal.transport.sshd;
import java.io.IOException;
import org.apache.sshd.client.auth.AbstractUserAuthFactory;
import org.apache.sshd.client.auth.password.UserAuthPassword;
import org.apache.sshd.client.auth.password.UserAuthPasswordFactory;
import org.apache.sshd.client.session.ClientSession;
/**
* A customized {@link UserAuthPasswordFactory} that creates instance of
* {@link JGitPasswordAuthentication}.
*/
public class JGitPasswordAuthFactory extends AbstractUserAuthFactory {
/** The singleton {@link JGitPasswordAuthFactory}. */
public static final JGitPasswordAuthFactory INSTANCE = new JGitPasswordAuthFactory();
private JGitPasswordAuthFactory() {
super(UserAuthPasswordFactory.NAME);
}
@Override
public UserAuthPassword createUserAuth(ClientSession session)
throws IOException {
return new JGitPasswordAuthentication();
}
}

View File

@ -1,43 +0,0 @@
/*
* Copyright (C) 2018, 2022 Thomas Wolf <thomas.wolf@paranor.ch> and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
* https://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package org.eclipse.jgit.internal.transport.sshd;
import static org.apache.sshd.core.CoreModuleProperties.PASSWORD_PROMPTS;
import org.apache.sshd.client.auth.password.UserAuthPassword;
import org.apache.sshd.client.session.ClientSession;
/**
* A password authentication handler that respects the
* {@code NumberOfPasswordPrompts} ssh config.
*/
public class JGitPasswordAuthentication extends UserAuthPassword {
private int maxAttempts;
private int attempts;
@Override
public void init(ClientSession session, String service) throws Exception {
super.init(session, service);
maxAttempts = Math.max(1,
PASSWORD_PROMPTS.getRequired(session).intValue());
attempts = 0;
}
@Override
protected String resolveAttemptedPassword(ClientSession session,
String service) throws Exception {
if (++attempts > maxAttempts) {
return null;
}
return super.resolveAttemptedPassword(session, service);
}
}

View File

@ -32,10 +32,8 @@
import java.util.Map;
import java.util.NoSuchElementException;
import java.util.Objects;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import org.apache.sshd.agent.SshAgentFactory;
import org.apache.sshd.client.SshClient;
import org.apache.sshd.client.config.hosts.HostConfigEntry;
import org.apache.sshd.client.future.ConnectFuture;
@ -107,8 +105,6 @@ public class JGitSshClient extends SshClient {
private ProxyDataFactory proxyDatabase;
private Supplier<SshAgentFactory> agentFactorySupplier = () -> null;
@Override
protected SessionFactory createSessionFactory() {
// Override the parent's default
@ -377,22 +373,6 @@ public CredentialsProvider getCredentialsProvider() {
return credentialsProvider;
}
@Override
public SshAgentFactory getAgentFactory() {
return agentFactorySupplier.get();
}
@Override
protected void checkConfig() {
// The super class requires channel factories for agent forwarding if a
// factory for an SSH agent is set. We haven't implemented this yet, and
// we don't do SSH agent forwarding for now. Unfortunately, there is no
// way to bypass this check in the super class except making
// getAgentFactory() return null until after the check.
super.checkConfig();
agentFactorySupplier = super::getAgentFactory;
}
/**
* A {@link SessionFactory} to create our own specialized
* {@link JGitClientSession}s.

View File

@ -252,22 +252,26 @@ protected void cancelAuthentication() {
protected boolean keyLoaded(URIish uri,
State state, char[] password, Exception err)
throws IOException, GeneralSecurityException {
if (err == null) {
return false; // Success, don't retry
} else if (err instanceof GeneralSecurityException) {
throw new InvalidKeyException(
format(SshdText.get().identityFileCannotDecrypt, uri), err);
} else {
// Unencrypted key (state == null && password == null), or exception
// before having asked for the password (state != null && password
// == null; might also be a user cancellation), or number of
// attempts exhausted.
if (state == null || password == null
|| state.getCount() >= attempts) {
return false;
}
if (err == null || password == null) {
// Success, or an error before we even asked for a password (could
// also be a non-encrypted key, or a user cancellation): don't
// retry.
return false;
}
if (state != null && state.getCount() < attempts) {
// We asked for a password, and have not yet exhausted the number of
// attempts. Assume the password was incorrect.
return true;
}
// Attempts exhausted
if (err instanceof GeneralSecurityException) {
// Top-level exception with a better exception message. The
// framework would otherwise re-throw 'err'.
throw new InvalidKeyException(
format(SshdText.get().identityFileCannotDecrypt, uri), err);
}
// I/O error.
return false;
}
@Override

View File

@ -33,6 +33,7 @@
import org.apache.sshd.client.SshClient;
import org.apache.sshd.client.auth.UserAuthFactory;
import org.apache.sshd.client.auth.keyboard.UserAuthKeyboardInteractiveFactory;
import org.apache.sshd.client.auth.password.UserAuthPasswordFactory;
import org.apache.sshd.client.config.hosts.HostConfigEntryResolver;
import org.apache.sshd.common.NamedFactory;
import org.apache.sshd.common.compression.BuiltinCompressions;
@ -46,7 +47,6 @@
import org.eclipse.jgit.internal.transport.ssh.OpenSshConfigFile;
import org.eclipse.jgit.internal.transport.sshd.CachingKeyPairProvider;
import org.eclipse.jgit.internal.transport.sshd.GssApiWithMicAuthFactory;
import org.eclipse.jgit.internal.transport.sshd.JGitPasswordAuthFactory;
import org.eclipse.jgit.internal.transport.sshd.JGitPublicKeyAuthFactory;
import org.eclipse.jgit.internal.transport.sshd.JGitServerKeyVerifier;
import org.eclipse.jgit.internal.transport.sshd.JGitSshClient;
@ -607,7 +607,7 @@ private List<UserAuthFactory> getUserAuthFactories() {
return Collections.unmodifiableList(
Arrays.asList(GssApiWithMicAuthFactory.INSTANCE,
JGitPublicKeyAuthFactory.FACTORY,
JGitPasswordAuthFactory.INSTANCE,
UserAuthPasswordFactory.INSTANCE,
UserAuthKeyboardInteractiveFactory.INSTANCE));
}

View File

@ -152,7 +152,7 @@
<jgit-last-release-version>6.5.0.202303070854-r</jgit-last-release-version>
<ant-version>1.10.12</ant-version>
<apache-sshd-version>2.9.2</apache-sshd-version>
<apache-sshd-version>2.10.0</apache-sshd-version>
<jsch-version>0.1.55</jsch-version>
<jzlib-version>1.1.3</jzlib-version>
<javaewah-version>1.2.3</javaewah-version>