diff --git a/interface/src/Menu.cpp b/interface/src/Menu.cpp index 69ec085188..d3caa4a092 100644 --- a/interface/src/Menu.cpp +++ b/interface/src/Menu.cpp @@ -529,19 +529,19 @@ Menu::Menu() { }); addActionToQMenuAndActionHash(networkMenu, MenuOption::ReloadContent, 0, qApp, SLOT(reloadResourceCaches())); addCheckableActionToQMenuAndActionHash(networkMenu, - MenuOption::DisableActivityLogger, - 0, - false, - &UserActivityLogger::getInstance(), - SLOT(disable(bool))); + MenuOption::DisableActivityLogger, + 0, + false, + &UserActivityLogger::getInstance(), + SLOT(disable(bool))); addActionToQMenuAndActionHash(networkMenu, MenuOption::CachesSize, 0, - dialogsManager.data(), SLOT(cachesSizeDialog())); + dialogsManager.data(), SLOT(cachesSizeDialog())); addActionToQMenuAndActionHash(networkMenu, MenuOption::DiskCacheEditor, 0, - dialogsManager.data(), SLOT(toggleDiskCacheEditor())); + dialogsManager.data(), SLOT(toggleDiskCacheEditor())); addActionToQMenuAndActionHash(networkMenu, MenuOption::ShowDSConnectTable, 0, - dialogsManager.data(), SLOT(showDomainConnectionDialog())); + dialogsManager.data(), SLOT(showDomainConnectionDialog())); addActionToQMenuAndActionHash(networkMenu, MenuOption::BandwidthDetails, 0, - dialogsManager.data(), SLOT(bandwidthDetails())); + dialogsManager.data(), SLOT(bandwidthDetails())); #if (PR_BUILD || DEV_BUILD) addCheckableActionToQMenuAndActionHash(networkMenu, MenuOption::SendWrongProtocolVersion, 0, false, diff --git a/libraries/networking/src/LimitedNodeList.cpp b/libraries/networking/src/LimitedNodeList.cpp index bd7b50c9f8..9cf7d87fb5 100644 --- a/libraries/networking/src/LimitedNodeList.cpp +++ b/libraries/networking/src/LimitedNodeList.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include #include @@ -25,6 +26,7 @@ #include #include +#include #include #include @@ -34,6 +36,8 @@ #include "NetworkLogging.h" #include "udt/Packet.h" +static Setting::Handle LIMITED_NODELIST_LOCAL_PORT("LimitedNodeList.LocalPort", 0); + const std::set SOLO_NODE_TYPES = { NodeType::AvatarMixer, NodeType::AudioMixer @@ -62,8 +66,8 @@ LimitedNodeList::LimitedNodeList(unsigned short socketListenPort, unsigned short } qRegisterMetaType("ConnectionStep"); - - _nodeSocket.bind(QHostAddress::AnyIPv4, socketListenPort); + auto port = (socketListenPort != 0) ? socketListenPort : LIMITED_NODELIST_LOCAL_PORT.get(); + _nodeSocket.bind(QHostAddress::AnyIPv4, port); qCDebug(networking) << "NodeList socket is listening on" << _nodeSocket.localPort(); if (dtlsListenPort > 0) { @@ -157,6 +161,18 @@ void LimitedNodeList::setPermissions(const NodePermissions& newPermissions) { } } +void LimitedNodeList::setSocketLocalPort(quint16 socketLocalPort) { + if (QThread::currentThread() != thread()) { + QMetaObject::invokeMethod(this, "setSocketLocalPort", Qt::QueuedConnection, + Q_ARG(quint16, socketLocalPort)); + return; + } + if (_nodeSocket.localPort() != socketLocalPort) { + _nodeSocket.rebind(socketLocalPort); + LIMITED_NODELIST_LOCAL_PORT.set(socketLocalPort); + } +} + QUdpSocket& LimitedNodeList::getDTLSSocket() { if (!_dtlsSocket) { // DTLS socket getter called but no DTLS socket exists, create it now diff --git a/libraries/networking/src/LimitedNodeList.h b/libraries/networking/src/LimitedNodeList.h index 89c8d41b49..5cafd7e613 100644 --- a/libraries/networking/src/LimitedNodeList.h +++ b/libraries/networking/src/LimitedNodeList.h @@ -113,6 +113,8 @@ public: bool getThisNodeCanKick() const { return _permissions.can(NodePermissions::Permission::canKick); } quint16 getSocketLocalPort() const { return _nodeSocket.localPort(); } + void setSocketLocalPort(quint16 socketLocalPort); + QUdpSocket& getDTLSSocket(); PacketReceiver& getPacketReceiver() { return *_packetReceiver; } diff --git a/libraries/networking/src/NodeList.cpp b/libraries/networking/src/NodeList.cpp index 171e9e279c..6269499e28 100644 --- a/libraries/networking/src/NodeList.cpp +++ b/libraries/networking/src/NodeList.cpp @@ -31,18 +31,10 @@ #include "udt/PacketHeaders.h" #include "SharedUtil.h" -#include - const int KEEPALIVE_PING_INTERVAL_MS = 1000; -static Setting::Handle NODELIST_LOCAL_PORT("NodeList.LocalPort", 0); - -quint16 pickPortHelper(quint16 port) { - return (port != 0) ? port : NODELIST_LOCAL_PORT.get(); -} - NodeList::NodeList(char newOwnerType, unsigned short socketListenPort, unsigned short dtlsListenPort) : - LimitedNodeList(pickPortHelper(socketListenPort), dtlsListenPort), + LimitedNodeList(socketListenPort, dtlsListenPort), _ownerType(newOwnerType), _nodeTypesOfInterest(), _domainHandler(this), @@ -246,18 +238,6 @@ void NodeList::reset() { } } -void NodeList::setSocketLocalPort(quint16 socketLocalPort) { - if (QThread::currentThread() != thread()) { - QMetaObject::invokeMethod(this, "setSocketLocalPort", Qt::QueuedConnection, - Q_ARG(quint16, socketLocalPort)); - return; - } - if (_nodeSocket.localPort() != socketLocalPort) { - _nodeSocket.rebind(socketLocalPort); - NODELIST_LOCAL_PORT.set(socketLocalPort); - } -} - void NodeList::addNodeTypeToInterestSet(NodeType_t nodeTypeToAdd) { _nodeTypesOfInterest << nodeTypeToAdd; } diff --git a/libraries/networking/src/NodeList.h b/libraries/networking/src/NodeList.h index 936e67c018..f3cd5bed0d 100644 --- a/libraries/networking/src/NodeList.h +++ b/libraries/networking/src/NodeList.h @@ -92,8 +92,6 @@ public slots: void processICEPingPacket(QSharedPointer message); - void setSocketLocalPort(quint16 socketLocalPort); - #if (PR_BUILD || DEV_BUILD) void toggleSendNewerDSConnectVersion(bool shouldSendNewerVersion) { _shouldSendNewerVersion = shouldSendNewerVersion; } #endif