55 lines
2.1 KiB
Diff
55 lines
2.1 KiB
Diff
From 4c28da4d8a8d84823854b2cf19a22f692fad43e9 Mon Sep 17 00:00:00 2001
|
|
Date: Mon, 21 Sep 2020 20:55:58 +0800
|
|
|
|
---
|
|
.../org/apache/ftpserver/impl/FtpIoSession.java | 15 +++++++++++++++
|
|
.../ftpserver/listener/nio/FtpHandlerAdapter.java | 3 +++
|
|
2 files changed, 18 insertions(+)
|
|
|
|
diff --git a/src/core/src/main/java/org/apache/ftpserver/impl/FtpIoSession.java b/src/core/src/main/java/org/apache/ftpserver/impl/FtpIoSession.java
|
|
index 9f79c3a..4b8ae06 100644
|
|
--- a/src/core/src/main/java/org/apache/ftpserver/impl/FtpIoSession.java
|
|
+++ b/src/core/src/main/java/org/apache/ftpserver/impl/FtpIoSession.java
|
|
@@ -37,6 +37,7 @@ import org.apache.ftpserver.ftplet.FtpSession;
|
|
import org.apache.ftpserver.ftplet.Structure;
|
|
import org.apache.ftpserver.ftplet.User;
|
|
import org.apache.ftpserver.listener.Listener;
|
|
+import org.apache.mina.core.filterchain.IoFilter;
|
|
import org.apache.mina.core.filterchain.IoFilterChain;
|
|
import org.apache.mina.core.future.CloseFuture;
|
|
import org.apache.mina.core.future.ReadFuture;
|
|
@@ -876,4 +877,18 @@ public class FtpIoSession implements IoSession {
|
|
public void updateThroughput(long currentTime, boolean force) {
|
|
wrappedSession.updateThroughput(currentTime, force);
|
|
}
|
|
+
|
|
+ public boolean isSecured() {
|
|
+ // If the session does not have a SslFilter, we can return false
|
|
+ IoFilterChain chain = getFilterChain();
|
|
+
|
|
+ IoFilter sslFilter = chain.get(SslFilter.class);
|
|
+
|
|
+ if (sslFilter != null) {
|
|
+ // Get the SslHandler from the SslFilter
|
|
+ return ((SslFilter)sslFilter).isSslStarted(this);
|
|
+ } else {
|
|
+ return false;
|
|
+ }
|
|
+ }
|
|
}
|
|
diff --git a/src/core/src/main/java/org/apache/ftpserver/listener/nio/FtpHandlerAdapter.java b/src/core/src/main/java/org/apache/ftpserver/listener/nio/FtpHandlerAdapter.java
|
|
index 5899784..776a78e 100644
|
|
--- a/src/core/src/main/java/org/apache/ftpserver/listener/nio/FtpHandlerAdapter.java
|
|
+++ b/src/core/src/main/java/org/apache/ftpserver/listener/nio/FtpHandlerAdapter.java
|
|
@@ -99,4 +99,7 @@ public class FtpHandlerAdapter implements IoHandler {
|
|
|
|
}
|
|
|
|
+ public void inputClosed(IoSession session) throws Exception {
|
|
+ session.close(true);
|
|
+ }
|
|
}
|
|
--
|
|
2.23.0
|
|
|