#include "base58.h"
#include "net.h"
-#include <boost/algorithm/string/predicate.hpp> // for startswith() and endswith()
-
using namespace std;
-using namespace boost;
int nGotIRCAddresses = 0;
bool RecvLineIRC(SOCKET hSocket, string& strLine)
{
- while (true)
+ for ( ; ; )
{
bool fRet = RecvLine(hSocket, strLine);
if (fRet)
int RecvUntil(SOCKET hSocket, const char* psz1, const char* psz2=NULL, const char* psz3=NULL, const char* psz4=NULL)
{
- while (true)
+ for ( ; ; )
{
string strLine;
strLine.reserve(10000);
bool RecvCodeLine(SOCKET hSocket, const char* psz1, string& strRet)
{
strRet.clear();
- while (true)
+ for ( ; ; )
{
string strLine;
if (!RecvLineIRC(hSocket, strLine))
// Make this thread recognisable as the IRC seeding thread
RenameThread("novacoin-ircseed");
+ printf("ThreadIRCSeed started\n");
+
try
{
ThreadIRCSeed2(parg);
if (!GetBoolArg("-irc", true))
return;
- printf("ThreadIRCSeed started\n");
+ printf("ThreadIRCSeed trying to connect...\n");
+
int nErrorWait = 10;
int nRetryWait = 10;
int nNameRetry = 0;
while (!fShutdown)
{
- CService addrConnect("92.243.23.21", 6667); // irc.lfnet.org
+ const uint16_t nIrcPort = 6667;
+ CService addrConnect("92.243.23.21", nIrcPort); // irc.lfnet.org
- CService addrIRC("irc.lfnet.org", 6667, true);
+ CService addrIRC("irc.lfnet.org", nIrcPort, true);
if (addrIRC.IsValid())
addrConnect = addrIRC;
if (!RecvUntil(hSocket, "Found your hostname", "using your IP address instead", "Couldn't look up your hostname", "ignoring hostname"))
{
- closesocket(hSocket);
- hSocket = INVALID_SOCKET;
+ CloseSocket(hSocket);
nErrorWait = nErrorWait * 11 / 10;
if (Wait(nErrorWait += 60))
continue;
int nRet = RecvUntil(hSocket, " 004 ", " 433 ");
if (nRet != 1)
{
- closesocket(hSocket);
- hSocket = INVALID_SOCKET;
+ CloseSocket(hSocket);
if (nRet == 2)
{
printf("IRC name already in use\n");
{
// index 7 is limited to 16 characters
// could get full length name at index 10, but would be different from join messages
- strName = vWords[7].c_str();
+ strName = vWords[7];
printf("IRC got who\n");
}
printf("IRC got join\n");
}
- if (boost::algorithm::starts_with(strName, "u"))
+ if (strName.compare(0,1, "u") == 0)
{
CAddress addr;
if (DecodeAddress(strName, addr))
}
}
}
- closesocket(hSocket);
- hSocket = INVALID_SOCKET;
+ CloseSocket(hSocket);
if (GetTime() - nStart > 20 * 60)
{