diff options
author | Kim van der Riet <kpvdr@apache.org> | 2011-07-05 14:35:41 +0000 |
---|---|---|
committer | Kim van der Riet <kpvdr@apache.org> | 2011-07-05 14:35:41 +0000 |
commit | 12f3f36ce2945dad5498d9a6c587995df4655be6 (patch) | |
tree | b3e78ed5fe746bdc7fafe0013bffdeb34999218d | |
parent | cba29b48e3dc4fd7cbec49aa0c37675a792a8b13 (diff) | |
download | qpid-python-12f3f36ce2945dad5498d9a6c587995df4655be6.tar.gz |
QPID-3309: This fix sets the value of the port number in management if the broker is started with a port value of 0.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1143078 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | qpid/cpp/src/posix/QpiddBroker.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/qpid/cpp/src/posix/QpiddBroker.cpp b/qpid/cpp/src/posix/QpiddBroker.cpp index 879935462e..1270b57252 100644 --- a/qpid/cpp/src/posix/QpiddBroker.cpp +++ b/qpid/cpp/src/posix/QpiddBroker.cpp @@ -138,6 +138,9 @@ struct QpiddDaemon : public Daemon { brokerPtr->accept(); uint16_t port=brokerPtr->getPort(options->daemon.transport); ready(port); // Notify parent. + if (options->parent->broker.enableMgmt && (options->parent->broker.port == 0 || options->daemon.transport != TCP)) { + dynamic_cast<qmf::org::apache::qpid::broker::Broker*>(brokerPtr->GetManagementObject())->set_port(port); + } brokerPtr->run(); } }; @@ -182,8 +185,13 @@ int QpiddBroker::execute (QpiddOptions *options) { boost::intrusive_ptr<Broker> brokerPtr(new Broker(options->broker)); ScopedSetBroker ssb(brokerPtr); brokerPtr->accept(); - if (options->broker.port == 0 || myOptions->daemon.transport != TCP) - cout << uint16_t(brokerPtr->getPort(myOptions->daemon.transport)) << endl; + if (options->broker.port == 0 || myOptions->daemon.transport != TCP) { + uint16_t port = brokerPtr->getPort(myOptions->daemon.transport); + cout << port << endl; + if (options->broker.enableMgmt) { + dynamic_cast<qmf::org::apache::qpid::broker::Broker*>(brokerPtr->GetManagementObject())->set_port(port); + } + } brokerPtr->run(); } return 0; |