mirror of
https://github.com/kvazar-network/kevacoin.git
synced 2025-01-10 15:18:09 +00:00
parent
7810a0a1e6
commit
66b473457b
50
src/net.cpp
50
src/net.cpp
@ -157,56 +157,6 @@ CAddress GetLocalAddress(const CNetAddr *paddrPeer)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool RecvLine(SOCKET hSocket, string& strLine)
|
|
||||||
{
|
|
||||||
strLine = "";
|
|
||||||
while (true)
|
|
||||||
{
|
|
||||||
char c;
|
|
||||||
int nBytes = recv(hSocket, &c, 1, 0);
|
|
||||||
if (nBytes > 0)
|
|
||||||
{
|
|
||||||
if (c == '\n')
|
|
||||||
continue;
|
|
||||||
if (c == '\r')
|
|
||||||
return true;
|
|
||||||
strLine += c;
|
|
||||||
if (strLine.size() >= 9000)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (nBytes <= 0)
|
|
||||||
{
|
|
||||||
boost::this_thread::interruption_point();
|
|
||||||
if (nBytes < 0)
|
|
||||||
{
|
|
||||||
int nErr = WSAGetLastError();
|
|
||||||
if (nErr == WSAEMSGSIZE)
|
|
||||||
continue;
|
|
||||||
if (nErr == WSAEWOULDBLOCK || nErr == WSAEINTR || nErr == WSAEINPROGRESS)
|
|
||||||
{
|
|
||||||
MilliSleep(10);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!strLine.empty())
|
|
||||||
return true;
|
|
||||||
if (nBytes == 0)
|
|
||||||
{
|
|
||||||
// socket closed
|
|
||||||
LogPrint("net", "socket closed\n");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// socket error
|
|
||||||
int nErr = WSAGetLastError();
|
|
||||||
LogPrint("net", "recv failed: %s\n", NetworkErrorString(nErr));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int GetnScore(const CService& addr)
|
int GetnScore(const CService& addr)
|
||||||
{
|
{
|
||||||
LOCK(cs_mapLocalHost);
|
LOCK(cs_mapLocalHost);
|
||||||
|
@ -61,7 +61,6 @@ unsigned int ReceiveFloodSize();
|
|||||||
unsigned int SendBufferSize();
|
unsigned int SendBufferSize();
|
||||||
|
|
||||||
void AddOneShot(std::string strDest);
|
void AddOneShot(std::string strDest);
|
||||||
bool RecvLine(SOCKET hSocket, std::string& strLine);
|
|
||||||
void AddressCurrentlyConnected(const CService& addr);
|
void AddressCurrentlyConnected(const CService& addr);
|
||||||
CNode* FindNode(const CNetAddr& ip);
|
CNode* FindNode(const CNetAddr& ip);
|
||||||
CNode* FindNode(const std::string& addrName);
|
CNode* FindNode(const std::string& addrName);
|
||||||
|
Loading…
Reference in New Issue
Block a user