diff options
author | Cory Fields <cory-nospam-@coryfields.com> | 2016-04-16 15:46:00 -0400 |
---|---|---|
committer | Cory Fields <cory-nospam-@coryfields.com> | 2016-09-08 12:06:24 -0400 |
commit | 02137f11e2ea5d153f433493639730587836a1e3 (patch) | |
tree | 9d46cc20dbc21c6220adb1f62fe1485ae7f724f1 /src/net.h | |
parent | 5b446dd5b11d4f403554bc2dd5a7a94c7d20422a (diff) |
net: Move socket binding into CConnman
Diffstat (limited to 'src/net.h')
-rw-r--r-- | src/net.h | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -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); |