On 7/24/23 15:27, david kerns wrote:
I removed the failover:() construct ...
it still hangs, but now I get the following on stderr: (using the expired
cert)

Error occurred while accessing an OpenSSL library method:
error:0906D06C:PEM routines:PEM_read_bio:no start line
error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib

... still no mention of an expired cert

The C++ client is effectively unmaintained at this point and has not seen a release in years so bugs are not surprising.  You would need to investigate the OpenSSL usage and supply a fix on your source tree to handle an error from whatever API point in OpenSSL would provide one, or not use expired certificates as an alternative.


On Mon, Jul 24, 2023 at 7:52 AM Timothy Bish <tabish...@gmail.com> wrote:

On 7/21/23 17:01, david kerns wrote:
I started with the example code here:
https://activemq.apache.org/components/cms/example
I modified it to use SSL and a certificate... all working.

Six months later when the certificate expired, starting the subscriber
just
hangs on:

connection->start();

It would be nice if instead of hanging, the subscriber took an
exception. (bonus points for a "your certificate has expired" message)

I'm curious if the call to:
connection->setExceptionListener(this);

should be done before the call to start()? or is there a standard way
to detect/report connection issues.

thanks

If you kept the default connection URI from the example then it is using
failover mechanisms and so it would just be sitting in the start call
waiting on failover to try and eventually connect. If you haven't added
max reconnect attempts configuration then it will try forever, refer to
the client configuration to set a backoff and max attempts if needed.

--
Tim Bish



--
Tim Bish

Reply via email to