You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2021/03/09 20:20:48 UTC
[activemq] branch activemq-5.16.x updated: AMQ-8169: Synchronize on
serviceRead inside NIOSSLTransport
This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch activemq-5.16.x
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/activemq-5.16.x by this push:
new 8d34120 AMQ-8169: Synchronize on serviceRead inside NIOSSLTransport
8d34120 is described below
commit 8d34120d9310d93c83e9dfcd644331dc42dddd0c
Author: Christopher L. Shannon (cshannon) <ch...@gmail.com>
AuthorDate: Mon Mar 8 11:27:54 2021 -0500
AMQ-8169: Synchronize on serviceRead inside NIOSSLTransport
This is needed to prevent concurrent access to the SSLEngine during
initialization. This is a regression from when auto+nio+ssl was added.
(cherry picked from commit 1654e6c79cfbc1ced5a8fa3f726a9f651560be9d)
---
.../org/apache/activemq/transport/nio/AutoInitNioSSLTransport.java | 3 ++-
.../main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/activemq-broker/src/main/java/org/apache/activemq/transport/nio/AutoInitNioSSLTransport.java b/activemq-broker/src/main/java/org/apache/activemq/transport/nio/AutoInitNioSSLTransport.java
index 9301b65..c0d9df2 100644
--- a/activemq-broker/src/main/java/org/apache/activemq/transport/nio/AutoInitNioSSLTransport.java
+++ b/activemq-broker/src/main/java/org/apache/activemq/transport/nio/AutoInitNioSSLTransport.java
@@ -158,8 +158,9 @@ public class AutoInitNioSSLTransport extends NIOSSLTransport {
return readSize;
}
+ //Prevent concurrent access to SSLEngine
@Override
- public void serviceRead() {
+ public synchronized void serviceRead() {
try {
if (handshakeInProgress) {
doHandshake();
diff --git a/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java b/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java
index 9f5e65d..3bcb0e4 100644
--- a/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java
+++ b/activemq-client/src/main/java/org/apache/activemq/transport/nio/NIOSSLTransport.java
@@ -243,8 +243,9 @@ public class NIOSSLTransport extends NIOTransport {
}
}
+ //Prevent concurrent access to SSLEngine
@Override
- public void serviceRead() {
+ public synchronized void serviceRead() {
try {
if (handshakeInProgress) {
doHandshake();