From b71b045a7234487d1c6bcaf436cefd19203545bb Mon Sep 17 00:00:00 2001 From: jl777 Date: Wed, 6 Sep 2017 23:17:00 +0200 Subject: [PATCH 01/20] Remove win prints --- src/komodo.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/komodo.h b/src/komodo.h index e81522eb5..2b1d11d05 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -16,6 +16,12 @@ #ifndef H_KOMODO_H #define H_KOMODO_H +#ifdef _WIN32 +#define printf(...) +#endif + + +[11:05 // Todo: // verify: reorgs From 923f51772f6df6f64940c6245c89a6b4ff3c987a Mon Sep 17 00:00:00 2001 From: jl777 Date: Thu, 7 Sep 2017 12:51:41 +0200 Subject: [PATCH 02/20] Komodo.conf for osx --- src/util.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/util.cpp b/src/util.cpp index 4c901d586..c2d299e20 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -604,7 +604,14 @@ boost::filesystem::path GetConfigFile() char confname[512]; if ( ASSETCHAINS_SYMBOL[0] != 0 ) sprintf(confname,"%s.conf",ASSETCHAINS_SYMBOL); - else strcpy(confname,"komodo.conf"); + else + { +#ifdef __APPLE__ + strcpy(confname,"Komodo.conf"); +#else + strcpy(confname,"komodo.conf"); +#endif + } boost::filesystem::path pathConfigFile(GetArg("-conf",confname)); if (!pathConfigFile.is_complete()) pathConfigFile = GetDataDir(false) / pathConfigFile; From e319fd1267fc9e03431f2fb0cb6a095cd607585c Mon Sep 17 00:00:00 2001 From: jl777 Date: Thu, 7 Sep 2017 12:52:04 +0200 Subject: [PATCH 03/20] Test --- src/komodo.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/komodo.h b/src/komodo.h index 2b1d11d05..e1e40448d 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -20,8 +20,6 @@ #define printf(...) #endif - -[11:05 // Todo: // verify: reorgs From 7e24efd429bf3c07882fecad4de7e0b8a6401e46 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:09:53 +0200 Subject: [PATCH 04/20] Print sync messages --- src/main.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main.cpp b/src/main.cpp index c14fd7995..227d6ca8f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,6 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); + fprintf(stderr, "recv: %s (%u bytes) peer=%s\n", SanitizeString(strCommand), vRecv.size(), pfrom->addr.ToString()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From 428690eefc8786184468a8f1c2bf0f03c02bd2c8 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:10:57 +0200 Subject: [PATCH 05/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 227d6ca8f..9f2e980d0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,7 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s (%u bytes) peer=%s\n", SanitizeString(strCommand), vRecv.size(), pfrom->addr.ToString()); + fprintf(stderr, "recv: %s (%u bytes) peer=%s\n", SanitizeString(strCommand), vRecv.size(), pfrom->addr.ToString().c_str()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From 74819673e6842d09518c29c9da49cdb760c1d244 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:12:16 +0200 Subject: [PATCH 06/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 9f2e980d0..11b2a18c2 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,7 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s (%u bytes) peer=%s\n", SanitizeString(strCommand), vRecv.size(), pfrom->addr.ToString().c_str()); + fprintf(stderr, "recv: %s peer=%s\n", SanitizeString(strCommand), pfrom->addr.ToString().c_str()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From b4123cf2955d96adec05e1859bb058af4ffd169f Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:13:56 +0200 Subject: [PATCH 07/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 11b2a18c2..e9d87d780 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,7 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s peer=%s\n", SanitizeString(strCommand), pfrom->addr.ToString().c_str()); + fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand), pfrom->id); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From 5fa9e2fe69cb9be9bd5955ddae84632abd7f6404 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:15:44 +0200 Subject: [PATCH 08/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index e9d87d780..858ce3f77 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,7 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand), pfrom->id); + fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand).c_str(), (itn32_t)pfrom->GetId()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From 5323cb13a687351131005223b66bd583903fe403 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:16:49 +0200 Subject: [PATCH 09/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 858ce3f77..4be842e55 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4583,7 +4583,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand).c_str(), (itn32_t)pfrom->GetId()); + fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand).c_str(), (int32_t)pfrom->GetId()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); From c2b0ec2e4e4d9bbc6363450be51c86720c767149 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:30:30 +0200 Subject: [PATCH 10/20] Test --- src/main.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main.cpp b/src/main.cpp index 4be842e55..16d0df6da 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4494,7 +4494,10 @@ void static ProcessGetData(CNode* pfrom) else { if (inv.type == MSG_BLOCK) + { + fprintf(stderr,"send block %d\n",komodo_block2height(&block)); pfrom->PushMessage("block", block); + } else // MSG_FILTERED_BLOCK) { LOCK(pfrom->cs_filter); @@ -4957,6 +4960,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, vector vHeaders; int nLimit = MAX_HEADERS_RESULTS; LogPrint("net", "getheaders %d to %s from peer=%d\n", (pindex ? pindex->nHeight : -1), hashStop.ToString(), pfrom->id); + fprintf(stderr,"getheaders from %d\n",(int32_t)(pindex ? pindex->nHeight : -1)); for (; pindex; pindex = chainActive.Next(pindex)) { vHeaders.push_back(pindex->GetBlockHeader()); From e73a3943b3ed52c994dcb2d89a08502204af524d Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 15:57:40 +0200 Subject: [PATCH 11/20] Test --- src/main.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 16d0df6da..a04dfcd18 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4495,7 +4495,11 @@ void static ProcessGetData(CNode* pfrom) { if (inv.type == MSG_BLOCK) { - fprintf(stderr,"send block %d\n",komodo_block2height(&block)); + uint256 hash; int32_t z; + hash = block.GetHash(); + for (z=0; z<32; z++) + printf("%02x",((uint8_t *)&hash)[z]); + fprintf(stderr," send block %d\n",komodo_block2height(&block)); pfrom->PushMessage("block", block); } else // MSG_FILTERED_BLOCK) From 5f27c121a989cf40389c12ce395925577424495b Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 16:03:14 +0200 Subject: [PATCH 12/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index a04dfcd18..31fb1cb17 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4498,7 +4498,7 @@ void static ProcessGetData(CNode* pfrom) uint256 hash; int32_t z; hash = block.GetHash(); for (z=0; z<32; z++) - printf("%02x",((uint8_t *)&hash)[z]); + fprintf(stderr,"%02x",((uint8_t *)&hash)[z]); fprintf(stderr," send block %d\n",komodo_block2height(&block)); pfrom->PushMessage("block", block); } From 1cf907bc7526282a374071f337250575876d8cdb Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 16:13:32 +0200 Subject: [PATCH 13/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 31fb1cb17..138682439 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4497,7 +4497,7 @@ void static ProcessGetData(CNode* pfrom) { uint256 hash; int32_t z; hash = block.GetHash(); - for (z=0; z<32; z++) + for (z=31; z>=0; z--) fprintf(stderr,"%02x",((uint8_t *)&hash)[z]); fprintf(stderr," send block %d\n",komodo_block2height(&block)); pfrom->PushMessage("block", block); From 37782e4e3b1365520d4ae07d1e967f34fe68d3cb Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 16:35:45 +0200 Subject: [PATCH 14/20] Remove prints --- src/main.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 138682439..bc0ff9dfa 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4495,11 +4495,11 @@ void static ProcessGetData(CNode* pfrom) { if (inv.type == MSG_BLOCK) { - uint256 hash; int32_t z; - hash = block.GetHash(); - for (z=31; z>=0; z--) - fprintf(stderr,"%02x",((uint8_t *)&hash)[z]); - fprintf(stderr," send block %d\n",komodo_block2height(&block)); + //uint256 hash; int32_t z; + //hash = block.GetHash(); + //for (z=31; z>=0; z--) + // fprintf(stderr,"%02x",((uint8_t *)&hash)[z]); + //fprintf(stderr," send block %d\n",komodo_block2height(&block)); pfrom->PushMessage("block", block); } else // MSG_FILTERED_BLOCK) @@ -4590,7 +4590,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, { const CChainParams& chainparams = Params(); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); - fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand).c_str(), (int32_t)pfrom->GetId()); + //fprintf(stderr, "recv: %s peer=%d\n", SanitizeString(strCommand).c_str(), (int32_t)pfrom->GetId()); if (mapArgs.count("-dropmessagestest") && GetRand(atoi(mapArgs["-dropmessagestest"])) == 0) { LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); @@ -4964,7 +4964,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, vector vHeaders; int nLimit = MAX_HEADERS_RESULTS; LogPrint("net", "getheaders %d to %s from peer=%d\n", (pindex ? pindex->nHeight : -1), hashStop.ToString(), pfrom->id); - fprintf(stderr,"getheaders from %d\n",(int32_t)(pindex ? pindex->nHeight : -1)); + //fprintf(stderr,"getheaders from %d\n",(int32_t)(pindex ? pindex->nHeight : -1)); for (; pindex; pindex = chainActive.Next(pindex)) { vHeaders.push_back(pindex->GetBlockHeader()); From 336a60cf9b4e93e5a88baf7feabe82d515b54902 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 16:57:31 +0200 Subject: [PATCH 15/20] Prevent duplicate headers --- src/main.cpp | 16 ++++++++++------ src/net.h | 1 + 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index bc0ff9dfa..57e692893 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4964,14 +4964,18 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, vector vHeaders; int nLimit = MAX_HEADERS_RESULTS; LogPrint("net", "getheaders %d to %s from peer=%d\n", (pindex ? pindex->nHeight : -1), hashStop.ToString(), pfrom->id); - //fprintf(stderr,"getheaders from %d\n",(int32_t)(pindex ? pindex->nHeight : -1)); - for (; pindex; pindex = chainActive.Next(pindex)) + fprintf(stderr,"getheaders from %d prev.%d\n",(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); + if ( pfrom->lasthdrsreq != (int32_t)(pindex ? pindex->nHeight : -1) ) { - vHeaders.push_back(pindex->GetBlockHeader()); - if (--nLimit <= 0 || pindex->GetBlockHash() == hashStop) - break; + for (; pindex; pindex = chainActive.Next(pindex)) + { + vHeaders.push_back(pindex->GetBlockHeader()); + if (--nLimit <= 0 || pindex->GetBlockHash() == hashStop) + break; + } + pfrom->PushMessage("headers", vHeaders); + pfrom->lasthdrsreq = (int32_t)(pindex ? pindex->nHeight : -1); } - pfrom->PushMessage("headers", vHeaders); } diff --git a/src/net.h b/src/net.h index f7ebf11f6..5674bd40d 100644 --- a/src/net.h +++ b/src/net.h @@ -264,6 +264,7 @@ public: std::string addrName; CService addrLocal; int nVersion; + int lasthdrsreq; // strSubVer is whatever byte array we read from the wire. However, this field is intended // to be printed out, displayed to humans in various forms and so on. So we sanitize it and // store the sanitized version in cleanSubVer. The original should be used when dealing with From 4723d6acf5fe7903d8902537154d82821788a7ff Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 16:59:22 +0200 Subject: [PATCH 16/20] Test --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 57e692893..8fc063f9b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4965,7 +4965,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, int nLimit = MAX_HEADERS_RESULTS; LogPrint("net", "getheaders %d to %s from peer=%d\n", (pindex ? pindex->nHeight : -1), hashStop.ToString(), pfrom->id); fprintf(stderr,"getheaders from %d prev.%d\n",(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); - if ( pfrom->lasthdrsreq != (int32_t)(pindex ? pindex->nHeight : -1) ) + if ( pfrom->lasthdrsreq >= chainActive.Height()-MAX_HEADERS_RESULTS || pfrom->lasthdrsreq != (int32_t)(pindex ? pindex->nHeight : -1) ) { for (; pindex; pindex = chainActive.Next(pindex)) { From 164bbe6c3b6289f657b55733b0a495ad119b7c87 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 17:13:58 +0200 Subject: [PATCH 17/20] Test --- src/main.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 8fc063f9b..7d4b4477c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4964,9 +4964,9 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, vector vHeaders; int nLimit = MAX_HEADERS_RESULTS; LogPrint("net", "getheaders %d to %s from peer=%d\n", (pindex ? pindex->nHeight : -1), hashStop.ToString(), pfrom->id); - fprintf(stderr,"getheaders from %d prev.%d\n",(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); if ( pfrom->lasthdrsreq >= chainActive.Height()-MAX_HEADERS_RESULTS || pfrom->lasthdrsreq != (int32_t)(pindex ? pindex->nHeight : -1) ) { + pfrom->lasthdrsreq = (int32_t)(pindex ? pindex->nHeight : -1); for (; pindex; pindex = chainActive.Next(pindex)) { vHeaders.push_back(pindex->GetBlockHeader()); @@ -4974,8 +4974,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, break; } pfrom->PushMessage("headers", vHeaders); - pfrom->lasthdrsreq = (int32_t)(pindex ? pindex->nHeight : -1); - } + } else fprintf(stderr,"ignore getheaders from peer.%d %d prev.%d\n",(int32_t)pfrom->id,(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); } From 8dcf7f94492ab2ca9a7f94362f2f40c030eff594 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 17:32:48 +0200 Subject: [PATCH 18/20] Test --- src/main.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 7d4b4477c..6d831173b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -49,6 +49,7 @@ using namespace std; */ CCriticalSection cs_main; +extern uint8_t NOTARY_PUBKEY33[33]; BlockMap mapBlockIndex; CChain chainActive; @@ -4974,7 +4975,9 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, break; } pfrom->PushMessage("headers", vHeaders); - } else fprintf(stderr,"ignore getheaders from peer.%d %d prev.%d\n",(int32_t)pfrom->id,(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); + } + else if ( NOTARY_PUBKEY33[0] != 0 ) + fprintf(stderr,"you can ignore redundant getheaders from peer.%d %d prev.%d\n",(int32_t)pfrom->id,(int32_t)(pindex ? pindex->nHeight : -1),pfrom->lasthdrsreq); } From 8ab425f8b27e2801023e33d6421fd6f63764a928 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 18 Sep 2017 18:34:43 +0200 Subject: [PATCH 19/20] Test --- src/main.cpp | 8 ++++++-- src/net.h | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 6d831173b..1e9be1a06 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -5158,8 +5158,12 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, // Headers message had its maximum size; the peer may have more headers. // TODO: optimize: if pindexLast is an ancestor of chainActive.Tip or pindexBestHeader, continue // from there instead. - LogPrint("net", "more getheaders (%d) to end to peer=%d (startheight:%d)\n", pindexLast->nHeight, pfrom->id, pfrom->nStartingHeight); - pfrom->PushMessage("getheaders", chainActive.GetLocator(pindexLast), uint256()); + if ( pfrom->sendhdrsreq >= chainActive.Height()-MAX_HEADERS_RESULTS || pindexLast->nHeight != pfrom->sendhdrsreq ) + { + pfrom->sendhdrsreq = (int32_t)pindexLast->nHeight; + LogPrint("net", "more getheaders (%d) to end to peer=%d (startheight:%d)\n", pindexLast->nHeight, pfrom->id, pfrom->nStartingHeight); + pfrom->PushMessage("getheaders", chainActive.GetLocator(pindexLast), uint256()); + } } CheckBlockIndex(); diff --git a/src/net.h b/src/net.h index 5674bd40d..bb79acf17 100644 --- a/src/net.h +++ b/src/net.h @@ -264,7 +264,7 @@ public: std::string addrName; CService addrLocal; int nVersion; - int lasthdrsreq; + int lasthdrsreq,sendhdrsreq; // strSubVer is whatever byte array we read from the wire. However, this field is intended // to be printed out, displayed to humans in various forms and so on. So we sanitize it and // store the sanitized version in cleanSubVer. The original should be used when dealing with From b206e182a74d946e8e7ea2e18c77af7dcead6ed7 Mon Sep 17 00:00:00 2001 From: ca333 Date: Mon, 18 Sep 2017 23:01:12 +0200 Subject: [PATCH 20/20] checksum fix --- depends/packages/libsnark.mk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/depends/packages/libsnark.mk b/depends/packages/libsnark.mk index d0d31097e..26d8f6677 100644 --- a/depends/packages/libsnark.mk +++ b/depends/packages/libsnark.mk @@ -1,10 +1,10 @@ package=libsnark $(package)_version=0.1 -$(package)_download_path=https://github.com/radix42/$(package)/archive/ +$(package)_download_path=https://supernetorg.bintray.com/misc/ $(package)_file_name=$(package)-$($(package)_git_commit).tar.gz -$(package)_download_file=$($(package)_git_commit).tar.gz -$(package)_sha256_hash=9dbd5b44d3443e86463e934bfe1023cab4ca5948f8d74c23a67d9535c28d2584 -$(package)_git_commit=9be18569b8abcda1245c3912877075259599c0f1 +$(package)_download_file=$(package)-$($(package)_git_commit).tar.gz +$(package)_sha256_hash=47478adc2ae88c448dc736d59dfe007de6478e41e88d2d4d2ff4135a17ee6f90 +$(package)_git_commit=3854b20c25e8bc567aab2b558dec84d45f4a3e73 $(package)_dependencies=libgmp libsodium