From aa19f91527662e9b84d723abe407a280391ad791 Mon Sep 17 00:00:00 2001 From: Robert Godfrey Date: Sun, 12 May 2013 09:42:26 +0000 Subject: QPID-4831 : [Java Broker] Fix closedown on SSL when SSL and TCP can use same port git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1481502 13f79535-47bb-0310-9956-ffa450edef68 --- .../network/security/ssl/SSLBufferingSender.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'java/common/src') diff --git a/java/common/src/main/java/org/apache/qpid/transport/network/security/ssl/SSLBufferingSender.java b/java/common/src/main/java/org/apache/qpid/transport/network/security/ssl/SSLBufferingSender.java index 0d36b96cd4..24f95d7798 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/network/security/ssl/SSLBufferingSender.java +++ b/java/common/src/main/java/org/apache/qpid/transport/network/security/ssl/SSLBufferingSender.java @@ -71,7 +71,7 @@ public class SSLBufferingSender implements Sender return; } log.debug("Closing SSL connection"); - + doSend(); engine.closeOutbound(); try { @@ -140,7 +140,10 @@ public class SSLBufferingSender implements Sender public void send() { - doSend(); + if(!closed.get()) + { + doSend(); + } } public synchronized void send(ByteBuffer appData) @@ -154,6 +157,10 @@ public class SSLBufferingSender implements Sender newBuf.flip(); _appData = newBuf; } + if (closed.get()) + { + throw new SenderException("SSL Sender is closed"); + } doSend(); if(!appData.hasRemaining()) { @@ -169,10 +176,6 @@ public class SSLBufferingSender implements Sender private synchronized void doSend() { - if (closed.get()) - { - throw new SenderException("SSL Sender is closed"); - } HandshakeStatus handshakeStatus; Status status; -- cgit v1.2.1