diff options
| author | Gordon Sim <gsim@apache.org> | 2008-10-20 18:00:05 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2008-10-20 18:00:05 +0000 |
| commit | 7a592121b8a8404e431c4bb0f485f6bbde0db77f (patch) | |
| tree | 367e405ed63379c67ef551cceebd3815691b9fc7 /cpp/src/qpid/sys/SslPlugin.cpp | |
| parent | 6fcb7dcbd22956828de8aa52a58e66b9df5e7529 (diff) | |
| download | qpid-python-7a592121b8a8404e431c4bb0f485f6bbde0db77f.tar.gz | |
Remove default location for certificate database.
Some extra checking in loading ssl libraries.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@706349 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/sys/SslPlugin.cpp')
| -rw-r--r-- | cpp/src/qpid/sys/SslPlugin.cpp | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/cpp/src/qpid/sys/SslPlugin.cpp b/cpp/src/qpid/sys/SslPlugin.cpp index ee272830e1..c519f5dc80 100644 --- a/cpp/src/qpid/sys/SslPlugin.cpp +++ b/cpp/src/qpid/sys/SslPlugin.cpp @@ -89,13 +89,21 @@ static struct SslPlugin : public Plugin { broker::Broker* broker = dynamic_cast<broker::Broker*>(&target); // Only provide to a Broker if (broker) { - ssl::initNSS(options, true); - - const broker::Broker::Options& opts = broker->getOptions(); - ProtocolFactory::shared_ptr protocol(new SslProtocolFactory(options, - opts.connectionBacklog, opts.tcpNoDelay)); - QPID_LOG(info, "Listening for SSL connections on TCP port " << protocol->getPort()); - broker->registerProtocolFactory("ssl", protocol); + if (options.certDbPath.empty()) { + QPID_LOG(warning, "SSL plugin not enabled, you must set --qpid-ssl-cert-db to enable it."); + } else { + try { + ssl::initNSS(options, true); + + const broker::Broker::Options& opts = broker->getOptions(); + ProtocolFactory::shared_ptr protocol(new SslProtocolFactory(options, + opts.connectionBacklog, opts.tcpNoDelay)); + QPID_LOG(info, "Listening for SSL connections on TCP port " << protocol->getPort()); + broker->registerProtocolFactory("ssl", protocol); + } catch (const std::exception& e) { + QPID_LOG(error, "Failed to initialise SSL plugin: " << e.what()); + } + } } } } sslPlugin; |
