[omniORB] crash in openssl code

Duncan Grisby duncan at grisby.org
Fri Feb 23 12:52:11 UTC 2024


On Fri, 2024-02-23 at 13:10 +0100, Michael Teske via omniORB-list
wrote:


> unfortunately this is an omniORB problem with bidirectional and ssl.
> By using a mutex around all calls using pd_ssl
> in sslConnection.cc I found out that Recv snd Send are then used at
> the same time by different threads. Recv is used
>  sometimes in blocking mode so simply using a mutex is not the
> solution as omniorb will than hang completely.
> 
> The only option for us to use ssl now is to switch bidirectional
> CORBA off. 

The whole point of bidirectional GIOP is that the same connection is
used for both outgoing calls and for incoming callbacks. That is why
there can be a thread blocked in recv at the same time another thread
is doing a send.

Clearly that works fine with TCP sockets, and it is possible to send
and receive data literally simultaneously in TCP.

It has always worked in the past with OpenSSL as well. Has something
changed with OpenSSL that means it is no longer thread safe for this?

Duncan.

-- 
Duncan Grisby <duncan at grisby.org>



More information about the omniORB-list mailing list