diff options
| author | Cory Fields <[email protected]> | 2016-04-16 15:46:00 -0400 |
|---|---|---|
| committer | Cory Fields <[email protected]> | 2016-09-08 12:06:24 -0400 |
| commit | 02137f11e2ea5d153f433493639730587836a1e3 (patch) | |
| tree | 9d46cc20dbc21c6220adb1f62fe1485ae7f724f1 /src/net.h | |
| parent | net: Pass CConnection to wallet rather than using the global (diff) | |
| download | discoin-02137f11e2ea5d153f433493639730587836a1e3.tar.xz discoin-02137f11e2ea5d153f433493639730587836a1e3.zip | |
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); |