mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-12 23:18:14 +01:00
net: Move socket binding into CConnman
This commit is contained in:
18
src/net.h
18
src/net.h
@@ -95,13 +95,6 @@ CNode* FindNode(const CService& ip);
|
||||
CNode* FindNode(const NodeId id); //TODO: Remove this
|
||||
bool OpenNetworkConnection(const CAddress& addrConnect, bool fCountFailure, CSemaphoreGrant *grantOutbound = NULL, const char *strDest = NULL, bool fOneShot = false, bool fFeeler = false);
|
||||
|
||||
struct ListenSocket {
|
||||
SOCKET socket;
|
||||
bool whitelisted;
|
||||
|
||||
ListenSocket(SOCKET socket_, bool whitelisted_) : socket(socket_), whitelisted(whitelisted_) {}
|
||||
};
|
||||
|
||||
class CConnman
|
||||
{
|
||||
public:
|
||||
@@ -109,7 +102,16 @@ public:
|
||||
~CConnman();
|
||||
bool Start(boost::thread_group& threadGroup, std::string& strNodeError);
|
||||
void Stop();
|
||||
bool BindListenPort(const CService &bindAddr, std::string& strError, bool fWhitelisted = false);
|
||||
|
||||
private:
|
||||
struct ListenSocket {
|
||||
SOCKET socket;
|
||||
bool whitelisted;
|
||||
|
||||
ListenSocket(SOCKET socket_, bool whitelisted_) : socket(socket_), whitelisted(whitelisted_) {}
|
||||
};
|
||||
|
||||
void ThreadOpenAddedConnections();
|
||||
void ProcessOneShot();
|
||||
void ThreadOpenConnections();
|
||||
@@ -117,6 +119,8 @@ private:
|
||||
void AcceptConnection(const ListenSocket& hListenSocket);
|
||||
void ThreadSocketHandler();
|
||||
void ThreadDNSAddressSeed();
|
||||
|
||||
std::vector<ListenSocket> vhListenSocket;
|
||||
};
|
||||
extern std::unique_ptr<CConnman> g_connman;
|
||||
void MapPort(bool fUseUPnP);
|
||||
|
||||
Reference in New Issue
Block a user