You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2008/11/12 16:42:25 UTC
svn commit: r713405 -
/incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp
Author: aconway
Date: Wed Nov 12 07:42:24 2008
New Revision: 713405
URL: http://svn.apache.org/viewvc?rev=713405&view=rev
Log:
Fix problem where broker generates empty URL if run on a host with only the 127.0.0.1 loopback interface.
Modified:
incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp?rev=713405&r1=713404&r2=713405&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/sys/posix/SystemInfo.cpp Wed Nov 12 07:42:24 2008
@@ -53,11 +53,10 @@
return true;
}
+static const string LOCALHOST("127.0.0.1");
+
void SystemInfo::getLocalIpAddresses (uint16_t port,
std::vector<Address> &addrList) {
-
- static const string LOCALHOST("127.0.0.1");
-
int s = socket (PF_INET, SOCK_STREAM, 0);
for (int i=1;;i++) {
struct ifreq ifr;
@@ -72,6 +71,9 @@
if (addr != LOCALHOST)
addrList.push_back(TcpAddress(addr, port));
}
+ if (addrList.empty()) {
+ addrList.push_back(TcpAddress(LOCALHOST, port));
+ }
close (s);
}