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:24:19 UTC

[karaf] branch karaf-4.2.x 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 karaf-4.2.x
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/karaf-4.2.x by this push:
     new c126278  [KARAF-7190] Ensure SSH socket is closed
c126278 is described below

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

    [KARAF-7190] Ensure SSH socket is closed
    
    (cherry picked from commit 8cc2b247d0ae8b2c95439cf5a45118b8f0eb3b47)
---
 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);
             }
         }