This is an automated email from the ASF dual-hosted git repository.
remm pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new 9276b5e783 Add support for APR
9276b5e783 is described below
commit 9276b5e783c8cd5b3fe2bb716306b65004bdd940
Author: remm <[email protected]>
AuthorDate: Tue Dec 2 08:54:26 2025 +0100
Add support for APR
---
java/org/apache/tomcat/util/net/AprEndpoint.java | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/java/org/apache/tomcat/util/net/AprEndpoint.java
b/java/org/apache/tomcat/util/net/AprEndpoint.java
index 000ae110d6..2cad59753a 100644
--- a/java/org/apache/tomcat/util/net/AprEndpoint.java
+++ b/java/org/apache/tomcat/util/net/AprEndpoint.java
@@ -89,6 +89,8 @@ public class AprEndpoint extends AbstractEndpoint<Long,Long>
implements SNICallB
private static final Log log = LogFactory.getLog(AprEndpoint.class);
private static final Log logCertificate =
LogFactory.getLog(AprEndpoint.class.getName() + ".certificate");
+ private static final ThreadLocal<SocketWrapperBase<Long>> localWrapper =
new ThreadLocal<>();
+
// ----------------------------------------------------------------- Fields
/**
@@ -515,6 +517,10 @@ public class AprEndpoint extends
AbstractEndpoint<Long,Long> implements SNICallB
@Override
public long getSslContext(String sniHostName) {
+ SocketWrapperBase<Long> socketWrapper = localWrapper.get();
+ if (socketWrapper != null) {
+ socketWrapper.setSniHostName(sniHostName);
+ }
SSLHostConfig sslHostConfig = getSSLHostConfig(sniHostName);
Long ctx = sslHostConfig.getOpenSslContext();
if (ctx != null) {
@@ -763,6 +769,7 @@ public class AprEndpoint extends
AbstractEndpoint<Long,Long> implements SNICallB
WriteLock wl = ((AprSocketWrapper)
socketWrapper).getBlockingStatusWriteLock();
wl.lock();
try {
+ localWrapper.set(socketWrapper);
if (SSLSocket.handshake(socket) != 0) {
if (log.isDebugEnabled()) {
log.debug(sm.getString("endpoint.err.handshake") +
": " + SSL.getLastError());
@@ -770,6 +777,7 @@ public class AprEndpoint extends
AbstractEndpoint<Long,Long> implements SNICallB
return false;
}
} finally {
+ localWrapper.set(null);
wl.unlock();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]