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:19:35 UTC
[activemq] branch master 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 master
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/master by this push:
new 1654e6c AMQ-8169: Synchronize on serviceRead inside NIOSSLTransport
new f2a3fbd Merge pull request #620 from cshannon/AMQ-8169
1654e6c is described below
commit 1654e6c79cfbc1ced5a8fa3f726a9f651560be9d
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.
---
.../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();