You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by lg...@apache.org on 2016/12/02 03:48:17 UTC

mina-sshd git commit: [SSHD-720] Run UnknownCommand in separate thread

Repository: mina-sshd
Updated Branches:
  refs/heads/master e767438ae -> 8cf57bc08


[SSHD-720] Run UnknownCommand in separate thread


Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/8cf57bc0
Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/8cf57bc0
Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/8cf57bc0

Branch: refs/heads/master
Commit: 8cf57bc083b4b1a49abbfd603c937b5a20b94680
Parents: e767438
Author: Lyor Goldstein <ly...@gmail.com>
Authored: Tue Nov 29 19:45:52 2016 +0200
Committer: Lyor Goldstein <ly...@gmail.com>
Committed: Fri Dec 2 05:48:02 2016 +0200

----------------------------------------------------------------------
 .../apache/sshd/server/scp/UnknownCommand.java  | 25 ++++++++++++++------
 .../apache/sshd/git/pack/GitPackCommand.java    |  2 +-
 .../org/apache/sshd/git/pgm/GitPgmCommand.java  |  2 +-
 3 files changed, 20 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/8cf57bc0/sshd-core/src/main/java/org/apache/sshd/server/scp/UnknownCommand.java
----------------------------------------------------------------------
diff --git a/sshd-core/src/main/java/org/apache/sshd/server/scp/UnknownCommand.java b/sshd-core/src/main/java/org/apache/sshd/server/scp/UnknownCommand.java
index 416203d..d847291 100644
--- a/sshd-core/src/main/java/org/apache/sshd/server/scp/UnknownCommand.java
+++ b/sshd-core/src/main/java/org/apache/sshd/server/scp/UnknownCommand.java
@@ -36,7 +36,7 @@ import org.apache.sshd.server.ExitCallback;
  *
  * @author <a href="mailto:dev@mina.apache.org">Apache MINA SSHD Project</a>
  */
-public class UnknownCommand implements Command {
+public class UnknownCommand implements Command, Runnable {
 
     private final String command;
     private final String message;
@@ -81,21 +81,32 @@ public class UnknownCommand implements Command {
     }
 
     @Override
-    public void start(Environment env) throws IOException {
-        Objects.requireNonNull(err, "No error stream");
+    public void run() {
         String errorMessage = getMessage();
         try {
-            err.write(errorMessage.getBytes(StandardCharsets.UTF_8));
-            err.write('\n');
-        } finally {
-            err.flush();
+            try {
+                err.write(errorMessage.getBytes(StandardCharsets.UTF_8));
+                err.write('\n');
+            } finally {
+                err.flush();
+            }
+        } catch (IOException e) {
+            // ignored
         }
+
         if (callback != null) {
             callback.onExit(1, errorMessage);
         }
     }
 
     @Override
+    public void start(Environment env) throws IOException {
+        Thread thread = new Thread(this);
+        thread.setDaemon(true);
+        thread.start();
+    }
+
+    @Override
     public void destroy() {
         // ignored
     }

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/8cf57bc0/sshd-git/src/main/java/org/apache/sshd/git/pack/GitPackCommand.java
----------------------------------------------------------------------
diff --git a/sshd-git/src/main/java/org/apache/sshd/git/pack/GitPackCommand.java b/sshd-git/src/main/java/org/apache/sshd/git/pack/GitPackCommand.java
index 3b92cc2..3bd202b 100644
--- a/sshd-git/src/main/java/org/apache/sshd/git/pack/GitPackCommand.java
+++ b/sshd-git/src/main/java/org/apache/sshd/git/pack/GitPackCommand.java
@@ -87,7 +87,7 @@ public class GitPackCommand implements Command, Runnable {
 
     @Override
     public void start(Environment env) throws IOException {
-        Thread  thread = new Thread(this);
+        Thread thread = new Thread(this);
         thread.setDaemon(true);
         thread.start();
     }

http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/8cf57bc0/sshd-git/src/main/java/org/apache/sshd/git/pgm/GitPgmCommand.java
----------------------------------------------------------------------
diff --git a/sshd-git/src/main/java/org/apache/sshd/git/pgm/GitPgmCommand.java b/sshd-git/src/main/java/org/apache/sshd/git/pgm/GitPgmCommand.java
index 225a9d6..ae6ff7c 100644
--- a/sshd-git/src/main/java/org/apache/sshd/git/pgm/GitPgmCommand.java
+++ b/sshd-git/src/main/java/org/apache/sshd/git/pgm/GitPgmCommand.java
@@ -82,7 +82,7 @@ public class GitPgmCommand implements Command, Runnable {
 
     @Override
     public void start(Environment env) throws IOException {
-        Thread  thread = new Thread(this);
+        Thread thread = new Thread(this);
         thread.setDaemon(true);
         thread.start();
     }