You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2021/08/31 13:23:26 UTC

[karaf] branch main updated: [KARAF-7190] Ensure SSH socket is closed

This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/main by this push:
     new 8cc2b24  [KARAF-7190] Ensure SSH socket is closed
     new 760aaa4  Merge pull request #1427 from jbonofre/KARAF-7190
8cc2b24 is described below

commit 8cc2b247d0ae8b2c95439cf5a45118b8f0eb3b47
Author: jbonofre <jb...@apache.org>
AuthorDate: Mon Aug 30 19:22:42 2021 +0200

    [KARAF-7190] Ensure SSH socket is closed
---
 shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellCommand.java   | 3 +++
 .../ssh/src/main/java/org/apache/karaf/shell/ssh/ShellFactoryImpl.java | 1 +
 2 files changed, 4 insertions(+)

diff --git a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellCommand.java b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellCommand.java
index 1cb71f8..b63cd7b 100644
--- a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellCommand.java
+++ b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellCommand.java
@@ -145,6 +145,9 @@ public class ShellCommand implements Command {
         } finally {
             callback.onExit(exitStatus);
             StreamUtils.close(in, out, err);
+            if (session != null) {
+                session.close(true);
+            }
         }
     }
 
diff --git a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellFactoryImpl.java b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellFactoryImpl.java
index 4a69cb4..dcfec7c 100644
--- a/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellFactoryImpl.java
+++ b/shell/ssh/src/main/java/org/apache/karaf/shell/ssh/ShellFactoryImpl.java
@@ -119,6 +119,7 @@ public class ShellFactoryImpl implements ShellFactory {
             if (!closed) {
                 closed = true;
                 callback.onExit(0);
+                session.close(true);
             }
         }