From 2d5ba1509528286fa9a75850c47c1263c1dfb691 Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Mon, 2 Jul 2018 14:29:12 -0700 Subject: [PATCH] pvlist replace getBroadcastAddresses() with discoverInterfaces() --- pvtoolsSrc/pvlist.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pvtoolsSrc/pvlist.cpp b/pvtoolsSrc/pvlist.cpp index 53ecd63..104d3be 100644 --- a/pvtoolsSrc/pvlist.cpp +++ b/pvtoolsSrc/pvlist.cpp @@ -228,7 +228,22 @@ bool discoverServers(double timeOut) // quary broadcast addresses of all IFs InetAddrVector broadcastAddresses; - getBroadcastAddresses(broadcastAddresses, socket, broadcastPort); + { + IfaceNodeVector ifaces; + if(discoverInterfaces(ifaces, socket, 0)) { + fprintf(stderr, "Unable to populate interface list\n"); + return false; + } + + for(IfaceNodeVector::const_iterator it(ifaces.begin()), end(ifaces.end()); it!=end; ++it) + { + if(it->validBcast && it->bcast.sa.sa_family == AF_INET) { + osiSockAddr bcast = it->bcast; + bcast.ia.sin_port = htons(broadcastPort); + broadcastAddresses.push_back(bcast); + } + } + } // set broadcast address list if (!addressList.empty())