mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 02:25:40 +01:00
net: move MAX_FEELER_CONNECTIONS into connman
This commit is contained in:
parent
e700cd0bc8
commit
0103c5b90f
@ -1520,6 +1520,7 @@ bool AppInit2(boost::thread_group& threadGroup, CScheduler& scheduler)
|
||||
connOptions.nRelevantServices = nRelevantServices;
|
||||
connOptions.nMaxConnections = nMaxConnections;
|
||||
connOptions.nMaxOutbound = std::min(MAX_OUTBOUND_CONNECTIONS, connOptions.nMaxConnections);
|
||||
connOptions.nMaxFeeler = 1;
|
||||
connOptions.nBestHeight = chainActive.Height();
|
||||
connOptions.uiInterface = &uiInterface;
|
||||
connOptions.nSendBufferMaxSize = 1000*GetArg("-maxsendbuffer", DEFAULT_MAXSENDBUFFER);
|
||||
|
14
src/net.cpp
14
src/net.cpp
@ -61,11 +61,6 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
namespace {
|
||||
const int MAX_FEELER_CONNECTIONS = 1;
|
||||
}
|
||||
|
||||
const static std::string NET_MESSAGE_COMMAND_OTHER = "*other*";
|
||||
|
||||
//
|
||||
@ -971,7 +966,7 @@ void CConnman::AcceptConnection(const ListenSocket& hListenSocket) {
|
||||
SOCKET hSocket = accept(hListenSocket.socket, (struct sockaddr*)&sockaddr, &len);
|
||||
CAddress addr;
|
||||
int nInbound = 0;
|
||||
int nMaxInbound = nMaxConnections - (nMaxOutbound + MAX_FEELER_CONNECTIONS);
|
||||
int nMaxInbound = nMaxConnections - (nMaxOutbound + nMaxFeeler);
|
||||
assert(nMaxInbound > 0);
|
||||
|
||||
if (hSocket != INVALID_SOCKET)
|
||||
@ -1624,7 +1619,7 @@ void CConnman::ThreadOpenConnections()
|
||||
}
|
||||
}
|
||||
}
|
||||
assert(nOutbound <= (nMaxOutbound + MAX_FEELER_CONNECTIONS));
|
||||
assert(nOutbound <= (nMaxOutbound + nMaxFeeler));
|
||||
|
||||
// Feeler Connections
|
||||
//
|
||||
@ -2060,6 +2055,7 @@ bool CConnman::Start(boost::thread_group& threadGroup, CScheduler& scheduler, st
|
||||
nLocalServices = connOptions.nLocalServices;
|
||||
nMaxConnections = connOptions.nMaxConnections;
|
||||
nMaxOutbound = std::min((connOptions.nMaxOutbound), nMaxConnections);
|
||||
nMaxFeeler = connOptions.nMaxFeeler;
|
||||
|
||||
nSendBufferMaxSize = connOptions.nSendBufferMaxSize;
|
||||
nReceiveFloodSize = connOptions.nSendBufferMaxSize;
|
||||
@ -2106,7 +2102,7 @@ bool CConnman::Start(boost::thread_group& threadGroup, CScheduler& scheduler, st
|
||||
|
||||
if (semOutbound == NULL) {
|
||||
// initialize semaphore
|
||||
semOutbound = new CSemaphore(std::min((nMaxOutbound + MAX_FEELER_CONNECTIONS), nMaxConnections));
|
||||
semOutbound = new CSemaphore(std::min((nMaxOutbound + nMaxFeeler), nMaxConnections));
|
||||
}
|
||||
|
||||
if (pnodeLocalHost == NULL) {
|
||||
@ -2162,7 +2158,7 @@ void CConnman::Stop()
|
||||
{
|
||||
LogPrintf("%s\n",__func__);
|
||||
if (semOutbound)
|
||||
for (int i=0; i<(nMaxOutbound + MAX_FEELER_CONNECTIONS); i++)
|
||||
for (int i=0; i<(nMaxOutbound + nMaxFeeler); i++)
|
||||
semOutbound->post();
|
||||
|
||||
if (fAddressesInitialized)
|
||||
|
@ -115,6 +115,7 @@ public:
|
||||
ServiceFlags nRelevantServices = NODE_NONE;
|
||||
int nMaxConnections = 0;
|
||||
int nMaxOutbound = 0;
|
||||
int nMaxFeeler = 0;
|
||||
int nBestHeight = 0;
|
||||
CClientUIInterface* uiInterface = nullptr;
|
||||
unsigned int nSendBufferMaxSize = 0;
|
||||
@ -384,6 +385,7 @@ private:
|
||||
CSemaphore *semOutbound;
|
||||
int nMaxConnections;
|
||||
int nMaxOutbound;
|
||||
int nMaxFeeler;
|
||||
std::atomic<int> nBestHeight;
|
||||
CClientUIInterface* clientInterface;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user