From da5253059a3155b6dd02d32eb7a63cc3522c726d Mon Sep 17 00:00:00 2001 From: csoler Date: Sun, 31 Dec 2017 17:27:21 +0100 Subject: [PATCH] fixed retrotor compilation when removing dht and udp --- RetroShare.pro | 13 +++++++++--- libretroshare/src/libretroshare.pro | 12 +++++++---- libretroshare/src/pqi/pqinetstatebox.cc | 2 ++ libretroshare/src/pqi/pqisslpersongrp.cc | 3 +++ libretroshare/src/rsserver/rsinit.cc | 20 +++++++++++++++---- .../src/gui/connect/ConnectProgressDialog.cpp | 4 ++++ .../src/gui/statistics/DhtWindow.cpp | 3 ++- retroshare.pri | 5 ++--- 8 files changed, 47 insertions(+), 15 deletions(-) diff --git a/RetroShare.pro b/RetroShare.pro index 833173029..9a6f24d5f 100644 --- a/RetroShare.pro +++ b/RetroShare.pro @@ -6,12 +6,16 @@ TEMPLATE = subdirs SUBDIRS += openpgpsdk openpgpsdk.file = openpgpsdk/src/openpgpsdk.pro -SUBDIRS += libbitdht -libbitdht.file = libbitdht/src/libbitdht.pro +retrotor { + libretroshare.depends = openpgpsdk +} else { + SUBDIRS += libbitdht + libbitdht.file = libbitdht/src/libbitdht.pro + libretroshare.depends = openpgpsdk libbitdht +} SUBDIRS += libretroshare libretroshare.file = libretroshare/src/libretroshare.pro -libretroshare.depends = openpgpsdk libbitdht SUBDIRS += libresapi libresapi.file = libresapi/src/libresapi.pro @@ -24,12 +28,15 @@ retroshare_gui { retroshare_gui.target = retroshare_gui } +retrotor { +} else { retroshare_nogui { SUBDIRS += retroshare_nogui retroshare_nogui.file = retroshare-nogui/src/retroshare-nogui.pro retroshare_nogui.depends = libretroshare libresapi retroshare_nogui.target = retroshare_nogui } +} retroshare_android_service { SUBDIRS += retroshare_android_service diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro index e58d01eef..7093f273e 100644 --- a/libretroshare/src/libretroshare.pro +++ b/libretroshare/src/libretroshare.pro @@ -1,7 +1,7 @@ !include("../../retroshare.pri"): error("Could not include file ../../retroshare.pri") TEMPLATE = lib -CONFIG += staticlib bitdht +CONFIG += staticlib CONFIG += create_prl CONFIG -= qt TARGET = retroshare @@ -12,8 +12,12 @@ DESTDIR = lib retrotor { DEFINES *= RETROTOR + CONFIG -= bitdht +} else { + CONFIG += bitdht } -# the dht stunner is used to obtain RS' external ip addr. when it is natted + +# the dht stunner is used to obtain RS external ip addr. when it is natted # this system is unreliable and rs supports a newer and better one (asking connected peers) # CONFIG += useDhtStunner @@ -93,6 +97,7 @@ HEADERS += tcponudp/udppeer.h \ tcponudp/tcpstream.h \ tcponudp/tou.h \ tcponudp/udprelay.h \ + pqi/pqissludp.h \ SOURCES += tcponudp/udppeer.cc \ tcponudp/tcppacket.cc \ @@ -100,6 +105,7 @@ SOURCES += tcponudp/udppeer.cc \ tcponudp/tou.cc \ tcponudp/bss_tou.c \ tcponudp/udprelay.cc \ + pqi/pqissludp.cc \ useDhtStunner { HEADERS += dht/stunaddrassist.h \ @@ -437,7 +443,6 @@ HEADERS += pqi/authssl.h \ pqi/pqissllistener.h \ pqi/pqisslpersongrp.h \ pqi/pqissli2pbob.h \ - pqi/pqissludp.h \ pqi/pqisslproxy.h \ pqi/pqistore.h \ pqi/pqistreamer.h \ @@ -593,7 +598,6 @@ SOURCES += pqi/authgpg.cc \ pqi/pqissllistener.cc \ pqi/pqisslpersongrp.cc \ pqi/pqissli2pbob.cpp \ - pqi/pqissludp.cc \ pqi/pqisslproxy.cc \ pqi/pqistore.cc \ pqi/pqistreamer.cc \ diff --git a/libretroshare/src/pqi/pqinetstatebox.cc b/libretroshare/src/pqi/pqinetstatebox.cc index b08994855..128c4d9e5 100644 --- a/libretroshare/src/pqi/pqinetstatebox.cc +++ b/libretroshare/src/pqi/pqinetstatebox.cc @@ -4,7 +4,9 @@ #include "pqi/pqinetstatebox.h" #include "time.h" +#ifdef RS_USE_BITDHT #include "bitdht/bdiface.h" +#endif // External Interface. diff --git a/libretroshare/src/pqi/pqisslpersongrp.cc b/libretroshare/src/pqi/pqisslpersongrp.cc index 432ba1bbf..20fe314d4 100644 --- a/libretroshare/src/pqi/pqisslpersongrp.cc +++ b/libretroshare/src/pqi/pqisslpersongrp.cc @@ -36,6 +36,9 @@ static struct RsLog::logInfo pqipersongrpzoneInfo = {RsLog::Default, "pqipersong /**** * #define PQI_DISABLE_UDP 1 ***/ +#ifdef RETROTOR +#define PQI_DISABLE_UDP 1 +#endif /********************************** SSL Specific features ***************************/ diff --git a/libretroshare/src/rsserver/rsinit.cc b/libretroshare/src/rsserver/rsinit.cc index dae235aa2..797d53067 100644 --- a/libretroshare/src/rsserver/rsinit.cc +++ b/libretroshare/src/rsserver/rsinit.cc @@ -65,6 +65,11 @@ #include #endif +// This needs to be defined here, because when USE_BITDHT is unset, the variable, that is defined in libbitdht (not compiled!) will be missing. +#ifndef RS_USE_BITDHT +RsDht *rsDht = NULL ; +#endif + // for blocking signals #include @@ -825,9 +830,10 @@ RsGRouter *rsGRouter = NULL ; #include "pqi/p3linkmgr.h" #include "pqi/p3netmgr.h" - +#ifndef RETROTOR #include "tcponudp/tou.h" #include "tcponudp/rsudpstack.h" +#endif #ifdef RS_USE_BITDHT @@ -1155,9 +1161,9 @@ int RsServer::StartupRetroShare() #ifdef RS_USE_DHT_STUNNER mNetMgr->setAddrAssist(new stunAddrAssist(mDhtStunner), new stunAddrAssist(mProxyStunner)); #endif // RS_USE_DHT_STUNNER -#else //RS_USE_BITDHT - /* install NULL Pointer for rsDht Interface */ - rsDht = NULL; +// #else //RS_USE_BITDHT +// /* install NULL Pointer for rsDht Interface */ +// rsDht = NULL; #endif //RS_USE_BITDHT @@ -1474,7 +1480,11 @@ int RsServer::StartupRetroShare() interfaces.mMsgs = rsMsgs; interfaces.mTurtle = rsTurtle; interfaces.mDisc = rsDisc; +#ifdef RS_USE_BITDHT interfaces.mDht = rsDht; +#else + interfaces.mDht = NULL; +#endif interfaces.mNotify = mNotify; interfaces.mServiceControl = serviceCtrl; interfaces.mPluginHandler = mPluginsManager; @@ -1511,7 +1521,9 @@ int RsServer::StartupRetroShare() p3BanList *mBanList = new p3BanList(serviceCtrl, mNetMgr); rsBanList = mBanList ; pqih -> addService(mBanList, true); +#ifdef RS_USE_BITDHT mBitDht->setupPeerSharer(mBanList); +#endif p3BandwidthControl *mBwCtrl = new p3BandwidthControl(pqih); pqih -> addService(mBwCtrl, true); diff --git a/retroshare-gui/src/gui/connect/ConnectProgressDialog.cpp b/retroshare-gui/src/gui/connect/ConnectProgressDialog.cpp index aae2af466..1f860acde 100755 --- a/retroshare-gui/src/gui/connect/ConnectProgressDialog.cpp +++ b/retroshare-gui/src/gui/connect/ConnectProgressDialog.cpp @@ -484,6 +484,7 @@ void ConnectProgressDialog::updateLookupStatus() ui->LookupProgressBar->setValue(calcProgress(now, mLookupTS, CONNECT_LOOKUP_TYPICAL, CONNECT_LOOKUP_SLOW, CONNECT_LOOKUP_PERIOD)); +#ifdef RS_USE_BITDHT /* now actually look at the DHT Details */ RsDhtNetPeer status; rsDht->getNetPeerStatus(mId, status); @@ -520,6 +521,7 @@ void ConnectProgressDialog::updateLookupStatus() mLookupStatus = CONNECT_LOOKUP_ONLINE; break; } +#endif } @@ -572,6 +574,7 @@ void ConnectProgressDialog::updateUdpStatus() ui->UdpProgressBar->setValue(calcProgress(now, mUdpTS, CONNECT_UDP_TYPICAL, CONNECT_UDP_SLOW, CONNECT_UDP_PERIOD)); +#ifdef RS_USE_BITDHT /* now lookup details from Dht */ RsDhtNetPeer status; rsDht->getNetPeerStatus(mId, status); @@ -599,6 +602,7 @@ void ConnectProgressDialog::updateUdpStatus() } } } +#endif } diff --git a/retroshare-gui/src/gui/statistics/DhtWindow.cpp b/retroshare-gui/src/gui/statistics/DhtWindow.cpp index a6406743d..5684593fd 100644 --- a/retroshare-gui/src/gui/statistics/DhtWindow.cpp +++ b/retroshare-gui/src/gui/statistics/DhtWindow.cpp @@ -279,6 +279,7 @@ void DhtWindow::updateNetStatus() void DhtWindow::updateNetPeers() { +#ifdef RS_USE_BITDHT //QTreeWidget *peerTreeWidget = ui.peerTreeWidget; std::list peerIds; @@ -364,7 +365,6 @@ void DhtWindow::updateNetPeers() QHeaderView * _header = ui.peerTreeWidget->header () ; _header->resizeSection ( PTW_COL_RSNAME, 170 ); - /* update the data */ RsDhtNetPeer status; rsDht->getNetPeerStatus(*it, status); @@ -518,6 +518,7 @@ void DhtWindow::updateNetPeers() //peerSummaryLabel->setText(connstr); +#endif } diff --git a/retroshare.pri b/retroshare.pri index 5ae0e46b0..db1834efe 100644 --- a/retroshare.pri +++ b/retroshare.pri @@ -3,9 +3,8 @@ CONFIG *= retroshare_gui no_retroshare_gui:CONFIG -= retroshare_gui -# To build the RetroTor executable, just include the following option - -CONFIG *= retrotor +# To build the RetroTor executable, just uncomment the following option +# CONFIG *= retrotor # To disable RetroShare-nogui append the following # assignation to qmake command line "CONFIG+=no_retroshare_nogui"