From a25ef5824707d9de5707ea11153d19cb36e15006 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Wed, 16 Apr 2014 11:25:35 -0700 Subject: [PATCH] move DTLS socket changes to LimitedNodeList --- domain-server/src/DomainServer.cpp | 12 ------------ libraries/networking/src/LimitedNodeList.cpp | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/domain-server/src/DomainServer.cpp b/domain-server/src/DomainServer.cpp index 1268ae739e..969b83f64f 100644 --- a/domain-server/src/DomainServer.cpp +++ b/domain-server/src/DomainServer.cpp @@ -66,18 +66,6 @@ DomainServer::DomainServer(int argc, char* argv[]) : LimitedNodeList* nodeList = LimitedNodeList::getInstance(); -#if defined(IP_DONTFRAG) || defined(IP_MTU_DISCOVER) - qDebug() << "Making required DTLS changes to NodeList DTLS socket."; - - int socketHandle = LimitedNodeList::getInstance()->getDTLSSocket().socketDescriptor(); -#if defined(IP_DONTFRAG) - int optValue = 1; - setsockopt(socketHandle, IPPROTO_IP, IP_DONTFRAG, (const void*) optValue, sizeof(optValue)); -#elif defined(IP_MTU_DISCOVER) - int optValue = 1; - setsockopt(socketHandle, IPPROTO_IP, IP_MTU_DISCOVER, (const void*) optValue, sizeof(optValue)); -#endif -#endif // connect our socket to read datagrams received on the DTLS socket connect(&nodeList->getDTLSSocket(), &QUdpSocket::readyRead, this, &DomainServer::readAvailableDTLSDatagrams); } diff --git a/libraries/networking/src/LimitedNodeList.cpp b/libraries/networking/src/LimitedNodeList.cpp index 60fbe9b3a6..d85c01a9eb 100644 --- a/libraries/networking/src/LimitedNodeList.cpp +++ b/libraries/networking/src/LimitedNodeList.cpp @@ -105,6 +105,20 @@ QUdpSocket& LimitedNodeList::getDTLSSocket() { _dtlsSocket = new QUdpSocket(this); _dtlsSocket->bind(QHostAddress::AnyIPv4, 0, QAbstractSocket::DontShareAddress); + +#if defined(IP_DONTFRAG) || defined(IP_MTU_DISCOVER) + qDebug() << "Making required DTLS changes to LimitedNodeList DTLS socket."; + + int socketHandle = _dtlsSocket->socketDescriptor(); +#if defined(IP_DONTFRAG) + int optValue = 1; + setsockopt(socketHandle, IPPROTO_IP, IP_DONTFRAG, (const void*) optValue, sizeof(optValue)); +#elif defined(IP_MTU_DISCOVER) + int optValue = 1; + setsockopt(socketHandle, IPPROTO_IP, IP_MTU_DISCOVER, (const void*) optValue, sizeof(optValue)); +#endif +#endif + qDebug() << "NodeList DTLS socket is listening on" << _dtlsSocket->localPort(); }