From 730b9c8d0751b0611dea5338726e507a71ed7184 Mon Sep 17 00:00:00 2001
From: Mat Booth <mat.booth@redhat.com>
Date: Fri, 7 Dec 2018 10:33:23 +0000
Subject: [PATCH 3/3] Port to apache-sshd 2.1.0
IoConnector.connect() grew an extra parameter to support specifying
the local bind port/address. Passing null continues to use an
automatically selected ephemeral port/address.
The shutdownOnExit parameter was removed everywhere the use of
'java.util.concurrent.ExecutorService' was substituted for the use
of 'org.apache.sshd.common.util.threads.ExecutorService'
---
.../META-INF/MANIFEST.MF | 42 +++++-----
.../jgit/junit/ssh/SshTestGitServer.java | 15 ++--
.../META-INF/MANIFEST.MF | 80 +++++++++----------
.../transport/sshd/JGitSshClient.java | 2 +-
pom.xml | 2 +-
5 files changed, 71 insertions(+), 70 deletions(-)
diff --git a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
index aa11f7a..a52526d 100644
--- a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
@@ -8,27 +8,27 @@ Bundle-Localization: plugin
Bundle-Vendor: %provider_name
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Import-Package: org.apache.sshd.common;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.config.keys;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.file.virtualfs;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.helpers;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.io;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.kex;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.keyprovider;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.session;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.buffer;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.logging;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.security;version="[2.0.0,2.1.0)",
- org.apache.sshd.server;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.auth;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.auth.gss;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.auth.keyboard;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.auth.password;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.command;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.session;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.shell;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.subsystem;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.subsystem.sftp;version="[2.0.0,2.1.0)",
+Import-Package: org.apache.sshd.common;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.config.keys;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.file.virtualfs;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.helpers;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.io;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.kex;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.keyprovider;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.session;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.buffer;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.logging;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.security;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.auth;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.auth.gss;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.auth.keyboard;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.auth.password;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.command;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.session;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.shell;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.subsystem;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.subsystem.sftp;version="[2.1.0,2.2.0)",
org.eclipse.jgit.annotations;version="[5.2.0,5.3.0)",
org.eclipse.jgit.lib;version="[5.2.0,5.3.0)",
org.eclipse.jgit.transport;version="[5.2.0,5.3.0)",
diff --git a/org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestGitServer.java b/org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestGitServer.java
index f5af2e5..d680f48 100644
--- a/org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestGitServer.java
+++ b/org.eclipse.jgit.junit.ssh/src/org/eclipse/jgit/junit/ssh/SshTestGitServer.java
@@ -55,7 +55,6 @@
import java.util.Collections;
import java.util.List;
import java.util.Locale;
-import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import org.apache.sshd.common.NamedFactory;
@@ -67,6 +66,8 @@
import org.apache.sshd.common.session.Session;
import org.apache.sshd.common.util.buffer.Buffer;
import org.apache.sshd.common.util.security.SecurityUtils;
+import org.apache.sshd.common.util.threads.CloseableExecutorService;
+import org.apache.sshd.common.util.threads.ThreadUtils;
import org.apache.sshd.server.ServerAuthenticationManager;
import org.apache.sshd.server.SshServer;
import org.apache.sshd.server.auth.UserAuth;
@@ -110,8 +111,8 @@
@NonNull
protected PublicKey testKey;
- private final ExecutorService executorService = Executors
- .newFixedThreadPool(2);
+ private final CloseableExecutorService executorService = ThreadUtils
+ .newFixedThreadPool("", 2);
/**
* Creates a ssh git <em>test</em> server. It serves one single repository,
@@ -341,8 +342,8 @@ public void setTestUserPublicKey(Path key)
private class GitUploadPackCommand extends AbstractCommandSupport {
protected GitUploadPackCommand(String command,
- ExecutorService executorService) {
- super(command, executorService, false);
+ CloseableExecutorService executorService) {
+ super(command, executorService);
}
@Override
@@ -370,8 +371,8 @@ public void run() {
private class GitReceivePackCommand extends AbstractCommandSupport {
protected GitReceivePackCommand(String command,
- ExecutorService executorService) {
- super(command, executorService, false);
+ CloseableExecutorService executorService) {
+ super(command, executorService);
}
@Override
diff --git a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
index e93fc1f..45a8d81 100644
--- a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
@@ -32,46 +32,46 @@ Export-Package: org.eclipse.jgit.internal.transport.sshd;version="5.2.0";x-inter
org.apache.sshd.client.session,
org.apache.sshd.client.keyverifier"
Import-Package: net.i2p.crypto.eddsa;version="[0.3.0,0.4.0)",
- org.apache.sshd.agent;version="[2.0.0,2.1.0)",
- org.apache.sshd.client;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.auth;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.auth.keyboard;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.auth.password;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.auth.pubkey;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.channel;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.config.hosts;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.config.keys;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.future;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.keyverifier;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.session;version="[2.0.0,2.1.0)",
- org.apache.sshd.client.subsystem.sftp;version="[2.0.0,2.1.0)",
- org.apache.sshd.common;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.auth;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.channel;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.compression;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.config.keys;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.config.keys.loader;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.digest;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.forward;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.future;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.helpers;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.io;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.kex;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.keyprovider;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.mac;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.random;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.session;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.session.helpers;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.signature;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.subsystem.sftp;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.buffer;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.closeable;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.io;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.logging;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.net;version="[2.0.0,2.1.0)",
- org.apache.sshd.common.util.security;version="[2.0.0,2.1.0)",
- org.apache.sshd.server.auth;version="[2.0.0,2.1.0)",
+ org.apache.sshd.agent;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.auth;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.auth.keyboard;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.auth.password;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.auth.pubkey;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.channel;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.config.hosts;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.config.keys;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.future;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.keyverifier;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.session;version="[2.1.0,2.2.0)",
+ org.apache.sshd.client.subsystem.sftp;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.auth;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.channel;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.compression;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.config.keys;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.config.keys.loader;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.digest;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.forward;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.future;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.helpers;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.io;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.kex;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.keyprovider;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.mac;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.random;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.session;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.session.helpers;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.signature;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.subsystem.sftp;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.buffer;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.closeable;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.io;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.logging;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.net;version="[2.1.0,2.2.0)",
+ org.apache.sshd.common.util.security;version="[2.1.0,2.2.0)",
+ org.apache.sshd.server.auth;version="[2.1.0,2.2.0)",
org.eclipse.jgit.annotations;version="[5.2.0,5.3.0)",
org.eclipse.jgit.errors;version="[5.2.0,5.3.0)",
org.eclipse.jgit.fnmatch;version="[5.2.0,5.3.0)",
diff --git a/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitSshClient.java b/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitSshClient.java
index 212b67f..5d78728 100644
--- a/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitSshClient.java
+++ b/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitSshClient.java
@@ -149,7 +149,7 @@ public ConnectFuture connect(HostConfigEntry hostConfig)
address = configureProxy(proxy, address);
proxy.clearPassword();
}
- connector.connect(address).addListener(listener);
+ connector.connect(address,null).addListener(listener);
return connectFuture;
}
diff --git a/pom.xml b/pom.xml
index 2528cb4..ff67f9b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -198,7 +198,7 @@
<bundle-manifest>${project.build.directory}/META-INF/MANIFEST.MF</bundle-manifest>
<jgit-last-release-version>4.11.0.201803080745-r</jgit-last-release-version>
- <apache-sshd-version>2.0.0</apache-sshd-version>
+ <apache-sshd-version>2.1.0</apache-sshd-version>
<jsch-version>0.1.54</jsch-version>
<jzlib-version>1.1.1</jzlib-version>
<javaewah-version>1.1.6</javaewah-version>
--
2.19.1