From 47cd790436985fd93b253337b58ffc8caf5c89e0 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 01:46:02 +0800 Subject: [PATCH 01/82] try staked.h again --- src/crosschain_authority.cpp | 29 ++++++----------------------- src/komodo_notary.h | 22 +++------------------- src/notaries_STAKED.h | 14 ++++++++------ 3 files changed, 17 insertions(+), 48 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 30e4e725a..3c257c4a7 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -1,32 +1,15 @@ #include "cc/eval.h" #include "crosschain.h" #include "notarisationdb.h" -//#include "notaries_STAKED.h" - -const char *notaries_STAKEDcc[][2] = -{ - {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x - {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg - {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 - {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ - {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 - {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 - {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev - {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 - {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL - {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 - {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu - {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx - {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN -}; +#include "notaries_STAKED.h" +extern char *notaries_STAKED int GetSymbolAuthority(const char* symbol) { - if (strlen(symbol) >= 5 && strncmp(symbol, "TXSCL", 5) == 0) + if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if ( (strlen(symbol) >= 4 && strncmp(symbol, "STKD", 4) == 0) || (strlen(symbol) >= 6 && strncmp(symbol, "STAKED", 6) == 0) ) + if ( (strncmp(symbol, "STKD", 4) == 0) || (strncmp(symbol, "STAKED", 6) == 0) ) return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; } @@ -72,10 +55,10 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; - auth.size = (int32_t)(sizeof(notaries_STAKEDcc)/sizeof(*notaries_STAKEDcc)); + auth.size = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); auth.requiredSigs = 3; for (int n=0; n Date: Fri, 21 Sep 2018 01:48:37 +0800 Subject: [PATCH 02/82] ; --- src/crosschain_authority.cpp | 2 +- src/komodo_notary.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 3c257c4a7..046abff82 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -3,7 +3,7 @@ #include "notarisationdb.h" #include "notaries_STAKED.h" -extern char *notaries_STAKED +extern char *notaries_STAKED; int GetSymbolAuthority(const char* symbol) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 37fa6b1ac..08ed1a91a 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -22,7 +22,7 @@ #define KOMODO_MAINNET_START 178999 -extern char *notaries_STAKED +extern char *notaries_STAKED; const char *Notaries_genesis[][2] = { From 9a241aa9c29c40bf75da075cccc9ecb69233d8ec Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 02:10:11 +0800 Subject: [PATCH 03/82] try again --- src/crosschain_authority.cpp | 2 +- src/komodo_notary.h | 2 +- src/notaries_STAKED.cpp | 22 ++++++++++++++++++++++ src/notaries_STAKED.h | 26 +++++--------------------- 4 files changed, 29 insertions(+), 23 deletions(-) create mode 100644 src/notaries_STAKED.cpp diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 046abff82..10145013b 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -3,7 +3,7 @@ #include "notarisationdb.h" #include "notaries_STAKED.h" -extern char *notaries_STAKED; +//extern char *notaries_STAKED; int GetSymbolAuthority(const char* symbol) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 08ed1a91a..7bec772b1 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -22,7 +22,7 @@ #define KOMODO_MAINNET_START 178999 -extern char *notaries_STAKED; +//extern char *notaries_STAKED; const char *Notaries_genesis[][2] = { diff --git a/src/notaries_STAKED.cpp b/src/notaries_STAKED.cpp new file mode 100644 index 000000000..e34100eff --- /dev/null +++ b/src/notaries_STAKED.cpp @@ -0,0 +1,22 @@ +#include "notaries_STAKED.h" + +const char *notaries_STAKED[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index 99169f1a6..b6e209733 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -1,22 +1,6 @@ -#pragma once +#ifndef NOTARIES_STAKED +#define NOTARIES_STAKED -const char *notaries_STAKED[][2] = -{ - {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x - {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg - {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 - {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ - {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 - {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 - {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev - {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 - {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL - {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 - {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu - {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx - {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN - {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 - {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -}; +extern char *notaries_STAKED[][2]; + +#endif From 550e9a54ac185935bb1b87ed53546182fb0c8467 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 02:19:24 +0800 Subject: [PATCH 04/82] i --- src/notaries_STAKED.h | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index b6e209733..479979a57 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -1,6 +1,26 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED -extern char *notaries_STAKED[][2]; +//extern char *notaries_STAKED[][2]; +const char *notaries_STAKED[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; #endif From 9b97cb1a5dadef69047f6ebf39ad84828098a61b Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 02:54:13 +0800 Subject: [PATCH 05/82] one more time --- src/notaries_STAKED.cpp | 7 +++++++ src/notaries_STAKED.h | 12 +++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/notaries_STAKED.cpp b/src/notaries_STAKED.cpp index e34100eff..a012bc08c 100644 --- a/src/notaries_STAKED.cpp +++ b/src/notaries_STAKED.cpp @@ -20,3 +20,10 @@ const char *notaries_STAKED[][2] = {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; + +bool is_STAKED() { + int32_t STAKED = 0; + if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) + STAKED = 1; + return(STAKED) +} diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index 479979a57..f6be14222 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -1,9 +1,11 @@ -#ifndef NOTARIES_STAKED -#define NOTARIES_STAKED +#ifndef NOTARIES_STAKED_H +#define NOTARIES_STAKED_H -//extern char *notaries_STAKED[][2]; +extern const char *notaries_STAKED[][2]; -const char *notaries_STAKED[][2] = +bool is_STAKED(); + +/*const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -22,5 +24,5 @@ const char *notaries_STAKED[][2] = {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -}; +};*/ #endif From f58cc01b5e0451e1c8f3182523d3639c3a17d559 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 02:58:53 +0800 Subject: [PATCH 06/82] ; --- src/notaries_STAKED.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notaries_STAKED.cpp b/src/notaries_STAKED.cpp index a012bc08c..2038f6897 100644 --- a/src/notaries_STAKED.cpp +++ b/src/notaries_STAKED.cpp @@ -26,4 +26,4 @@ bool is_STAKED() { if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) STAKED = 1; return(STAKED) -} +}; From 75a86d88a299c8251193b09ae4cb3894832ae4df Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 03:10:28 +0800 Subject: [PATCH 07/82] ? --- src/crosschain_authority.cpp | 2 +- src/komodo_notary.h | 2 +- src/notaries_STAKED.cpp | 4 +++- src/notaries_STAKED.h | 1 + 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 10145013b..6b4f1d7ad 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -55,7 +55,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; - auth.size = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); + auth.size = num_notaries_STAKED; auth.requiredSigs = 3; for (int n=0; n Date: Fri, 21 Sep 2018 03:12:24 +0800 Subject: [PATCH 08/82] ? --- src/notaries_STAKED.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index 23e58e1ee..814cc0a7a 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -1,5 +1,5 @@ -#ifndef NOTARIES_STAKED_H -#define NOTARIES_STAKED_H +//#ifndef NOTARIES_STAKED_H +//#define NOTARIES_STAKED_H extern const char *notaries_STAKED[][2]; extern int num_notaries_STAKED; @@ -26,4 +26,4 @@ bool is_STAKED(); {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s };*/ -#endif +//#endif From 41c25e89db3dc730229e07b578dfe96a90265309 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 03:16:35 +0800 Subject: [PATCH 09/82] ? --- src/notaries_STAKED.cpp | 2 +- src/notaries_STAKED.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/notaries_STAKED.cpp b/src/notaries_STAKED.cpp index 41b106066..b3c97020a 100644 --- a/src/notaries_STAKED.cpp +++ b/src/notaries_STAKED.cpp @@ -28,4 +28,4 @@ bool is_STAKED() { return(STAKED) }; -int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index 814cc0a7a..4b2f8ba90 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -2,7 +2,7 @@ //#define NOTARIES_STAKED_H extern const char *notaries_STAKED[][2]; -extern int num_notaries_STAKED; +extern const int num_notaries_STAKED; bool is_STAKED(); From 24f0f84417bd0dc89d48f741c91a01cf36953c03 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 11:20:09 +0800 Subject: [PATCH 10/82] try this --- src/notaries_STAKED.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/notaries_STAKED.h b/src/notaries_STAKED.h index 4b2f8ba90..7bf13b8c9 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_STAKED.h @@ -1,5 +1,5 @@ -//#ifndef NOTARIES_STAKED_H -//#define NOTARIES_STAKED_H +#ifndef NOTARIES_STAKED_H +#define NOTARIES_STAKED_H extern const char *notaries_STAKED[][2]; extern const int num_notaries_STAKED; @@ -26,4 +26,4 @@ bool is_STAKED(); {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s };*/ -//#endif +#endif From b7a3348ed19dde86b3dbc174d3f48db39aa703bd Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 11:43:32 +0800 Subject: [PATCH 11/82] change some stuff --- src/crosschain_authority.cpp | 3 ++- src/komodo_notary.h | 3 ++- src/{notaries_STAKED.cpp => notaries_staked.cpp} | 5 +++-- src/{notaries_STAKED.h => notaries_staked.h} | 11 +++++++---- 4 files changed, 14 insertions(+), 8 deletions(-) rename src/{notaries_STAKED.cpp => notaries_staked.cpp} (94%) rename src/{notaries_STAKED.h => notaries_staked.h} (91%) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 6b4f1d7ad..6ccf631dc 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -3,7 +3,8 @@ #include "notarisationdb.h" #include "notaries_STAKED.h" -//extern char *notaries_STAKED; +extern const char *notaries_STAKED[][2]; +extern const int num_notaries_STAKED; int GetSymbolAuthority(const char* symbol) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index cf485e41f..cab36642d 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -22,7 +22,8 @@ #define KOMODO_MAINNET_START 178999 -//extern char *notaries_STAKED; +extern const char *notaries_STAKED[][2]; +extern const int num_notaries_STAKED; const char *Notaries_genesis[][2] = { diff --git a/src/notaries_STAKED.cpp b/src/notaries_staked.cpp similarity index 94% rename from src/notaries_STAKED.cpp rename to src/notaries_staked.cpp index b3c97020a..daab6fe3d 100644 --- a/src/notaries_STAKED.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_STAKED.h" -const char *notaries_STAKED[][2] = +/*const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -20,6 +20,7 @@ const char *notaries_STAKED[][2] = {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; +*/ bool is_STAKED() { bool STAKED = 0; @@ -28,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +//const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_STAKED.h b/src/notaries_staked.h similarity index 91% rename from src/notaries_STAKED.h rename to src/notaries_staked.h index 7bf13b8c9..ba491dd95 100644 --- a/src/notaries_STAKED.h +++ b/src/notaries_staked.h @@ -1,12 +1,12 @@ #ifndef NOTARIES_STAKED_H #define NOTARIES_STAKED_H -extern const char *notaries_STAKED[][2]; -extern const int num_notaries_STAKED; +//extern const char *notaries_STAKED[][2]; +//extern const int num_notaries_STAKED; bool is_STAKED(); -/*const char *notaries_STAKED[][2] = +const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -25,5 +25,8 @@ bool is_STAKED(); {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -};*/ +}; + +const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); + #endif From 95918c6402d806a7d6793bec58370db1ee0f361d Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 12:29:39 +0800 Subject: [PATCH 12/82] fix dumbness --- src/crosschain_authority.cpp | 2 +- src/komodo_notary.h | 27 +-------------------------- src/notaries_staked.cpp | 2 +- 3 files changed, 3 insertions(+), 28 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 849c083bc..b382b4fc9 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -1,7 +1,7 @@ #include "cc/eval.h" #include "crosschain.h" #include "notarisationdb.h" -#include "notaries_STAKED.h" +#include "notaries_staked.h" extern const char *notaries_STAKED[][2]; extern const int num_notaries_STAKED; diff --git a/src/komodo_notary.h b/src/komodo_notary.h index b5e147855..7b041f8b9 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -18,32 +18,7 @@ #include "komodo_cJSON.h" -<<<<<<< HEAD -//include "notaries_STAKED.h" -//{"kmdcrazy", "02da444a2627d420f1f622fcdfb9bddb67d6d4241ad6b4d5054716ddbde8a25dfb"} // RJPJBbHcm5mkAxhkkERHRfEE9Cvkr4Euoi -const char *notaries_STAKED[][2] = -{ - {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x - {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg - {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 - {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ - {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 - {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 - {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev - {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 - {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL - {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 - {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu - {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx - {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN - {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 - {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -}; -======= -#include "notaries_STAKED.h" ->>>>>>> blackjok3r +#include "notaries_staked.h" #define KOMODO_MAINNET_START 178999 diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index daab6fe3d..9f6301f80 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,4 +1,4 @@ -#include "notaries_STAKED.h" +#include "notaries_staked.h" /*const char *notaries_STAKED[][2] = { From 9f1e5ad6c0ffd3d11f667e262c28f1c553fda919 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 12:41:10 +0800 Subject: [PATCH 13/82] runnign around in circles here, little sense! --- src/notaries_staked.cpp | 6 +++--- src/notaries_staked.h | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 9f6301f80..a3b3844d3 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_staked.h" -/*const char *notaries_STAKED[][2] = +const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -20,7 +20,7 @@ {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; -*/ + bool is_STAKED() { bool STAKED = 0; @@ -29,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -//const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index ba491dd95..59e083a41 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,12 +1,12 @@ #ifndef NOTARIES_STAKED_H #define NOTARIES_STAKED_H -//extern const char *notaries_STAKED[][2]; -//extern const int num_notaries_STAKED; +extern const char *notaries_STAKED[][2]; +extern const int num_notaries_STAKED; bool is_STAKED(); -const char *notaries_STAKED[][2] = +/*const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -28,5 +28,5 @@ const char *notaries_STAKED[][2] = }; const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); - +*/ #endif From 3dcbdcb85c3c441fbacc3916c8f8bfeaaaca6e19 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:08:13 +0800 Subject: [PATCH 14/82] try something else --- src/notaries_staked.cpp | 4 ++-- src/notaries_staked.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index a3b3844d3..9350ecdf2 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_staked.h" -const char *notaries_STAKED[][2] = +extern const char *const notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -29,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +extern const int const num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 59e083a41..a3d3599b7 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,8 +1,8 @@ #ifndef NOTARIES_STAKED_H #define NOTARIES_STAKED_H -extern const char *notaries_STAKED[][2]; -extern const int num_notaries_STAKED; +extern const char *const notaries_STAKED[][2]; +extern const int const num_notaries_STAKED; bool is_STAKED(); From bb7815b05bd650fefb8e89051f4e9c9fa795f8ef Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:09:53 +0800 Subject: [PATCH 15/82] that didnt work --- src/notaries_staked.cpp | 4 ++-- src/notaries_staked.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 9350ecdf2..0a9db207d 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_staked.h" -extern const char *const notaries_STAKED[][2] = +extern const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -29,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -extern const int const num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +extern const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index a3d3599b7..59e083a41 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,8 +1,8 @@ #ifndef NOTARIES_STAKED_H #define NOTARIES_STAKED_H -extern const char *const notaries_STAKED[][2]; -extern const int const num_notaries_STAKED; +extern const char *notaries_STAKED[][2]; +extern const int num_notaries_STAKED; bool is_STAKED(); From 158d7befbc384c5d45ecada1c35d5e373ecb4858 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:11:12 +0800 Subject: [PATCH 16/82] WTF!??!? --- src/notaries_staked.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 59e083a41..9b843f2c5 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,6 +1,3 @@ -#ifndef NOTARIES_STAKED_H -#define NOTARIES_STAKED_H - extern const char *notaries_STAKED[][2]; extern const int num_notaries_STAKED; @@ -29,4 +26,3 @@ bool is_STAKED(); const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); */ -#endif From 14acb852d578d8ca39da6834bed7124449c439f4 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:23:00 +0800 Subject: [PATCH 17/82] try again --- src/notaries_staked.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 0a9db207d..a3b3844d3 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_staked.h" -extern const char *notaries_STAKED[][2] = +const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -29,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -extern const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); From 1183a043b2a561327b09eac8b11d62edd7a7b30e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:28:25 +0800 Subject: [PATCH 18/82] try again --- src/crosschain_authority.cpp | 4 ++-- src/komodo_notary.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index b382b4fc9..31ea0b547 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -3,8 +3,8 @@ #include "notarisationdb.h" #include "notaries_staked.h" -extern const char *notaries_STAKED[][2]; -extern const int num_notaries_STAKED; +//extern const char *notaries_STAKED[][2]; +//extern const int num_notaries_STAKED; int GetSymbolAuthority(const char* symbol) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 7b041f8b9..d8b25a0ef 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -22,8 +22,8 @@ #define KOMODO_MAINNET_START 178999 -extern const char *notaries_STAKED[][2]; -extern const int num_notaries_STAKED; +//extern const char *notaries_STAKED[][2]; +//extern const int num_notaries_STAKED; const char *Notaries_genesis[][2] = { From 9a469cda6f4c03c8dd136ab4089bd28db913be6b Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:37:26 +0800 Subject: [PATCH 19/82] try hardcode of array length --- src/notaries_staked.cpp | 4 ++-- src/notaries_staked.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index a3b3844d3..24c8562df 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,6 @@ #include "notaries_staked.h" -const char *notaries_STAKED[][2] = +const char *notaries_STAKED[17][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -29,4 +29,4 @@ bool is_STAKED() { return(STAKED) }; -const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 9b843f2c5..ef54eb6aa 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,5 +1,5 @@ -extern const char *notaries_STAKED[][2]; -extern const int num_notaries_STAKED; +extern const char *notaries_STAKED[17[2]; +extern int num_notaries_STAKED; bool is_STAKED(); From 3539848b6031b76204a2a0e2675c26b478eaec38 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 13:41:40 +0800 Subject: [PATCH 20/82] typo --- src/notaries_staked.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index ef54eb6aa..3defe851c 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,4 +1,4 @@ -extern const char *notaries_STAKED[17[2]; +extern const char *notaries_STAKED[17][2]; extern int num_notaries_STAKED; bool is_STAKED(); From bb33491657b778b6e9bc02bde8c8a8b9ae3ecc87 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 15:11:36 +0800 Subject: [PATCH 21/82] thanks mike --- src/notaries_staked.cpp | 12 ++++++++---- src/notaries_staked.h | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 24c8562df..735136b7d 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -1,6 +1,10 @@ -#include "notaries_staked.h" -const char *notaries_STAKED[17][2] = +#include "notaries_staked.h" +#include + +extern char ASSETCHAINS_SYMBOL[65]; + +const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg @@ -26,7 +30,7 @@ bool is_STAKED() { bool STAKED = 0; if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) STAKED = 1; - return(STAKED) + return(STAKED); }; -int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +int num_notaries_STAKED = (sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 3defe851c..d7ea4c4fd 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -1,3 +1,7 @@ + +#ifndef NOTARIES_STAKED +#define NOTARIES_STAKED + extern const char *notaries_STAKED[17][2]; extern int num_notaries_STAKED; @@ -26,3 +30,4 @@ bool is_STAKED(); const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); */ +#endif From c83285ffe2dcfe09cfa637121da2fb5d6548b447 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 15:24:53 +0800 Subject: [PATCH 22/82] add include file to makefile ... Please work?! --- src/Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Makefile.am b/src/Makefile.am index 7113a1e42..de476385e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -291,6 +291,7 @@ libbitcoin_server_a_SOURCES = \ metrics.cpp \ miner.cpp \ net.cpp \ + notaries_staked.cpp \ noui.cpp \ notarisationdb.cpp \ paymentdisclosure.cpp \ From 77ee7feec84a9e91f7d7532f0c06340da4d10d61 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 15:43:16 +0800 Subject: [PATCH 23/82] about to blow it up --- src/bitcoin-cli.cpp | 3 ++- src/komodo_notary.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bitcoin-cli.cpp b/src/bitcoin-cli.cpp index bf189e483..db99b6a67 100644 --- a/src/bitcoin-cli.cpp +++ b/src/bitcoin-cli.cpp @@ -74,11 +74,12 @@ public: #include "komodo_globals.h" #include "komodo_utils.h" #include "komodo_cJSON.c" +#include "notaries_staked.h" #include "komodo_notary.h" void komodo_stateupdate(int32_t height,uint8_t notarypubs[][33],uint8_t numnotaries,uint8_t notaryid,uint256 txhash,uint64_t voutmask,uint8_t numvouts,uint32_t *pvals,uint8_t numpvals,int32_t KMDheight,uint32_t KMDtimestamp,uint64_t opretvalue,uint8_t *opretbuf,uint16_t opretlen,uint16_t vout,uint256 MoM,int32_t MoMdepth) { - + } uint32_t komodo_heightstamp(int32_t height) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index d8b25a0ef..45f325648 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -18,7 +18,7 @@ #include "komodo_cJSON.h" -#include "notaries_staked.h" +//#include "notaries_staked.h" #define KOMODO_MAINNET_START 178999 From 7384746b72d090a32f92e8d69fe85f7277292828 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 15:48:26 +0800 Subject: [PATCH 24/82] WTFWTFW --- src/komodo_notary.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 45f325648..d8b25a0ef 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -18,7 +18,7 @@ #include "komodo_cJSON.h" -//#include "notaries_staked.h" +#include "notaries_staked.h" #define KOMODO_MAINNET_START 178999 From 3b210ee00cbd89399088c3dadb4eda43b4740b0f Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 15:57:30 +0800 Subject: [PATCH 25/82] WTFTWTFEWIDlknPI --- src/bitcoin-cli.cpp | 1 - src/notaries_staked.h | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/bitcoin-cli.cpp b/src/bitcoin-cli.cpp index db99b6a67..60a185284 100644 --- a/src/bitcoin-cli.cpp +++ b/src/bitcoin-cli.cpp @@ -74,7 +74,6 @@ public: #include "komodo_globals.h" #include "komodo_utils.h" #include "komodo_cJSON.c" -#include "notaries_staked.h" #include "komodo_notary.h" void komodo_stateupdate(int32_t height,uint8_t notarypubs[][33],uint8_t numnotaries,uint8_t notaryid,uint256 txhash,uint64_t voutmask,uint8_t numvouts,uint32_t *pvals,uint8_t numpvals,int32_t KMDheight,uint32_t KMDtimestamp,uint64_t opretvalue,uint8_t *opretbuf,uint16_t opretlen,uint16_t vout,uint256 MoM,int32_t MoMdepth) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index d7ea4c4fd..b8243513d 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -2,7 +2,7 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED -extern const char *notaries_STAKED[17][2]; +extern const char *notaries_STAKED[][2]; extern int num_notaries_STAKED; bool is_STAKED(); From 5f2b70662553a62518d9bd680bb43cafe911f21e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 16:09:51 +0800 Subject: [PATCH 26/82] meh --- src/Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Makefile.am b/src/Makefile.am index de476385e..0559230c0 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -179,6 +179,7 @@ BITCOIN_CORE_H = \ mruset.h \ net.h \ netbase.h \ + notaries_staked.h \ noui.h \ paymentdisclosure.h \ paymentdisclosuredb.h \ From 263c24b266e9e4537772064da62c0725f0d6a152 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 16:56:34 +0800 Subject: [PATCH 27/82] maybe --- src/bitcoin-cli.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/bitcoin-cli.cpp b/src/bitcoin-cli.cpp index 60a185284..6164cf463 100644 --- a/src/bitcoin-cli.cpp +++ b/src/bitcoin-cli.cpp @@ -75,6 +75,7 @@ public: #include "komodo_utils.h" #include "komodo_cJSON.c" #include "komodo_notary.h" +#include "notaries_staked.cpp" void komodo_stateupdate(int32_t height,uint8_t notarypubs[][33],uint8_t numnotaries,uint8_t notaryid,uint256 txhash,uint64_t voutmask,uint8_t numvouts,uint32_t *pvals,uint8_t numpvals,int32_t KMDheight,uint32_t KMDtimestamp,uint64_t opretvalue,uint8_t *opretbuf,uint16_t opretlen,uint16_t vout,uint256 MoM,int32_t MoMdepth) { From c85b1ace10f684a7e92282011231f6a858529377 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 17:02:22 +0800 Subject: [PATCH 28/82] hmmmm --- src/notaries_staked.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 735136b7d..01e09bf07 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -25,7 +25,6 @@ const char *notaries_STAKED[][2] = {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; - bool is_STAKED() { bool STAKED = 0; if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) From 90f50a9ee705766c3bc369f83e2677d2defdac92 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 17:15:21 +0800 Subject: [PATCH 29/82] add is_staked function --- src/crosschain_authority.cpp | 7 ++----- src/komodo.h | 3 ++- src/komodo_notary.h | 2 +- src/main.cpp | 4 ++-- src/notaries_staked.h | 25 ++----------------------- 5 files changed, 9 insertions(+), 32 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 31ea0b547..cca6d6b21 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -3,14 +3,11 @@ #include "notarisationdb.h" #include "notaries_staked.h" -//extern const char *notaries_STAKED[][2]; -//extern const int num_notaries_STAKED; - int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if ( (strncmp(symbol, "STKD", 4) == 0) || (strncmp(symbol, "STAKED", 6) == 0) ) + if (is_STAKED() == 1) return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; } @@ -56,7 +53,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; - auth.requiredSigs = 4; + auth.requiredSigs = STAKED_MIN_SIGS; auth.size = num_notaries_STAKED; for (int n=0; n= KOMODO_MINRATIFY) || (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) || - ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) && numvalid > 4 ) + ( (is_STAKED == 1) && (numvalid > STAKED_MIN_SIGS) ) { if ( ASSETCHAINS_SYMBOL[0] != 0 ) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index d8b25a0ef..6cb69ef0c 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -231,7 +231,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam { if ( did1 == 0 ) { - if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) + if (is_STAKED == 1) { n1 = num_notaries_STAKED; for (i=0; i> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe; - if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) + if ( is_STAKED == 1 ) { if (pfrom->nVersion < STAKEDMIN_PEER_PROTO_VERSION) { diff --git a/src/notaries_staked.h b/src/notaries_staked.h index b8243513d..eac34e0d0 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -5,29 +5,8 @@ extern const char *notaries_STAKED[][2]; extern int num_notaries_STAKED; +static const int STAKED_MIN_SIGS = 4; + bool is_STAKED(); -/*const char *notaries_STAKED[][2] = -{ - {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x - {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg - {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 - {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ - {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 - {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 - {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev - {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 - {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL - {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 - {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu - {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx - {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN - {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 - {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -}; - -const int num_notaries_STAKED = (int32_t)(sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); -*/ #endif From 0233e249cf1cd2079b69553ded79a594717d5697 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 17:19:16 +0800 Subject: [PATCH 30/82] change to int --- src/notaries_staked.cpp | 2 +- src/notaries_staked.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 01e09bf07..323ec094f 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -25,7 +25,7 @@ const char *notaries_STAKED[][2] = {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; -bool is_STAKED() { +int is_STAKED() { bool STAKED = 0; if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) STAKED = 1; diff --git a/src/notaries_staked.h b/src/notaries_staked.h index eac34e0d0..bf8c3c58e 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -7,6 +7,6 @@ extern int num_notaries_STAKED; static const int STAKED_MIN_SIGS = 4; -bool is_STAKED(); +int is_STAKED(); #endif From c2ec9c54688da5386af23959e29256bb0d90d0e9 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 17:21:30 +0800 Subject: [PATCH 31/82] syntax --- src/komodo.h | 2 +- src/komodo_notary.h | 2 +- src/main.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/komodo.h b/src/komodo.h index 7c8a226df..4ff65fa18 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -858,7 +858,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) if ( (((height < 90000 || (signedmask & 1) != 0) && numvalid >= KOMODO_MINRATIFY) || (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) || - ( (is_STAKED == 1) && (numvalid > STAKED_MIN_SIGS) ) + ( (is_STAKED() == 1) && (numvalid > STAKED_MIN_SIGS) ) { if ( ASSETCHAINS_SYMBOL[0] != 0 ) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 6cb69ef0c..d4f3e4ead 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -231,7 +231,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam { if ( did1 == 0 ) { - if (is_STAKED == 1) + if (is_STAKED() == 1) { n1 = num_notaries_STAKED; for (i=0; i> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe; - if ( is_STAKED == 1 ) + if ( is_STAKED() == 1 ) { if (pfrom->nVersion < STAKEDMIN_PEER_PROTO_VERSION) { From d35a88824596927ed36405b9d322f3d03250d522 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Fri, 21 Sep 2018 17:23:26 +0800 Subject: [PATCH 32/82] ) --- src/komodo.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/komodo.h b/src/komodo.h index 4ff65fa18..cdf660189 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -858,7 +858,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) if ( (((height < 90000 || (signedmask & 1) != 0) && numvalid >= KOMODO_MINRATIFY) || (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) || - ( (is_STAKED() == 1) && (numvalid > STAKED_MIN_SIGS) ) + ( (is_STAKED() == 1) && (numvalid > STAKED_MIN_SIGS) )) { if ( ASSETCHAINS_SYMBOL[0] != 0 ) { From 44f2c39adae28a792dd3fef97b688373f09939ae Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 15:27:14 +0800 Subject: [PATCH 33/82] try and add eras, for notaries, with timestamp activation --- src/crosschain_authority.cpp | 2 +- src/komodo.h | 3 +- src/komodo_notary.h | 132 ++++++++++++++++++++++++----------- src/main.cpp | 2 +- src/notaries_staked.cpp | 91 +++++++++++++++++++++++- src/notaries_staked.h | 15 +++- 6 files changed, 199 insertions(+), 46 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index cca6d6b21..1d9ba93f4 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -7,7 +7,7 @@ int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if (is_STAKED() == 1) + if (is_STAKED() != 0) return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; } diff --git a/src/komodo.h b/src/komodo.h index cdf660189..d1587fbb4 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -857,8 +857,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) numvalid = bitweight(signedmask); if ( (((height < 90000 || (signedmask & 1) != 0) && numvalid >= KOMODO_MINRATIFY) || (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || - numvalid > (numnotaries/5)) || - ( (is_STAKED() == 1) && (numvalid > STAKED_MIN_SIGS) )) + numvalid > (numnotaries/5)) ) { if ( ASSETCHAINS_SYMBOL[0] != 0 ) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index d4f3e4ead..87947a9b8 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -206,53 +206,107 @@ const char *Notaries_elected1[][2] = int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestamp) { static uint8_t elected_pubkeys0[64][33],elected_pubkeys1[64][33],did0,did1; static int32_t n0,n1; + static uint8_t staked_pubkeys[64][33],staked_pubkeys1[64][33],didstaked,didstaked1; static int32_t ns,ns1; + static uint8_t staked_pubkeys2[64][33],staked_pubkeys3[64][33],didstaked2,didstaked3; static int32_t ns2,ns3; + int staked_era; int32_t i,htind,n; uint64_t mask = 0; struct knotary_entry *kp,*tmp; if ( timestamp == 0 && ASSETCHAINS_SYMBOL[0] != 0 ) timestamp = komodo_heightstamp(height); else if ( ASSETCHAINS_SYMBOL[0] == 0 ) timestamp = 0; - if ( height >= KOMODO_NOTARIES_HARDCODED || ASSETCHAINS_SYMBOL[0] != 0 ) + // If this chain is not a staked chain, use the normal Komodo logic to determine notaries. This allows KMD to still sync and use its proper pubkeys for dPoW. + if (is_STAKED() == 0) { - if ( (timestamp != 0 && timestamp <= KOMODO_NOTARIES_TIMESTAMP1) || (ASSETCHAINS_SYMBOL[0] == 0 && height <= KOMODO_NOTARIES_HEIGHT1) ) - { - if ( did0 == 0 ) - { - n0 = (int32_t)(sizeof(Notaries_elected0)/sizeof(*Notaries_elected0)); - for (i=0; i= KOMODO_NOTARIES_HARDCODED || ASSETCHAINS_SYMBOL[0] != 0 ) + { + if ( (timestamp != 0 && timestamp <= KOMODO_NOTARIES_TIMESTAMP1) || (ASSETCHAINS_SYMBOL[0] == 0 && height <= KOMODO_NOTARIES_HEIGHT1) ) + { + if ( did0 == 0 ) + { + n0 = (int32_t)(sizeof(Notaries_elected0)/sizeof(*Notaries_elected0)); + for (i=0; i= KOMODO_MAXBLOCKS / KOMODO_ELECTION_GAP ) htind = (KOMODO_MAXBLOCKS / KOMODO_ELECTION_GAP) - 1; diff --git a/src/main.cpp b/src/main.cpp index e86fe47bc..596518ecf 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -5954,7 +5954,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, CAddress addrFrom; uint64_t nNonce = 1; vRecv >> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe; - if ( is_STAKED() == 1 ) + if ( is_STAKED() != 0 ) { if (pfrom->nVersion < STAKEDMIN_PEER_PROTO_VERSION) { diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 323ec094f..4f335a444 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -4,6 +4,7 @@ extern char ASSETCHAINS_SYMBOL[65]; +// Era 0 set of pubkeys const char *notaries_STAKED[][2] = { {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x @@ -25,11 +26,97 @@ const char *notaries_STAKED[][2] = {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s }; +int num_notaries_STAKED = (sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); + +// Era 1 set of pubkeys +const char *notaries_STAKED1[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; + +int num_notaries_STAKED1 = (sizeof(notaries_STAKED1)/sizeof(*notaries_STAKED1)); + +// Era 2 set of pubkeys +const char *notaries_STAKED2[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; + +int num_notaries_STAKED2 = (sizeof(notaries_STAKED2)/sizeof(*notaries_STAKED2)); + +// Era 3 set of pubkeys +const char *notaries_STAKED3[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; + +int num_notaries_STAKED3 = (sizeof(notaries_STAKED3)/sizeof(*notaries_STAKED3)); + int is_STAKED() { - bool STAKED = 0; + int STAKED = 0; if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) STAKED = 1; return(STAKED); }; -int num_notaries_STAKED = (sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); +int STAKED_era(uint32_t timestamp) +{ + int era; + if (timestamp <= STAKED_NOTARIES_TIMESTAMP) + era = 0; + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP1 && timestamp >= STAKED_NOTARIES_TIMESTAMP) + era = 1; + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP2 && timestamp >= STAKED_NOTARIES_TIMESTAMP1) + era = 2; + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP3 && timestamp >= STAKED_NOTARIES_TIMESTAMP2) + era = 3; + return(era); +} diff --git a/src/notaries_staked.h b/src/notaries_staked.h index bf8c3c58e..201f8cb40 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -2,11 +2,24 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED +static const uint32_t STAKED_NOTARIES_TIMESTAMP = 1537780949; +static const uint32_t STAKED_NOTARIES_TIMESTAMP1 = 1537791749; +static const uint32_t STAKED_NOTARIES_TIMESTAMP2 = 1537802549; +static const uint32_t STAKED_NOTARIES_TIMESTAMP3 = 1537813349; + extern const char *notaries_STAKED[][2]; extern int num_notaries_STAKED; -static const int STAKED_MIN_SIGS = 4; +extern const char *notaries_STAKED1[][2]; +extern int num_notaries_STAKED1; + +extern const char *notaries_STAKED2[][2]; +extern int num_notaries_STAKED2; + +extern const char *notaries_STAKED3[][2]; +extern int num_notaries_STAKED3; int is_STAKED(); +int STAKED_era(uint32_t timestamp); #endif From 91c308014611e1b9edb5b8bf423d8a533fc9e85c Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 15:37:15 +0800 Subject: [PATCH 34/82] hmmm need to have height activation for MoMoM aswell, as uses a diffrent array for its pubkeys,disable this for now to test. --- src/crosschain_authority.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 1d9ba93f4..06a01dbd5 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,7 +53,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; - auth.requiredSigs = STAKED_MIN_SIGS; + auth.requiredSigs = 4; auth.size = num_notaries_STAKED; for (int n=0; n Date: Mon, 24 Sep 2018 15:43:43 +0800 Subject: [PATCH 35/82] change to just int, compiler was mad --- src/notaries_staked.cpp | 2 +- src/notaries_staked.h | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 4f335a444..81d249d96 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -107,7 +107,7 @@ int is_STAKED() { return(STAKED); }; -int STAKED_era(uint32_t timestamp) +int STAKED_era(int timestamp) { int era; if (timestamp <= STAKED_NOTARIES_TIMESTAMP) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 201f8cb40..84296d4e5 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -2,10 +2,10 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED -static const uint32_t STAKED_NOTARIES_TIMESTAMP = 1537780949; -static const uint32_t STAKED_NOTARIES_TIMESTAMP1 = 1537791749; -static const uint32_t STAKED_NOTARIES_TIMESTAMP2 = 1537802549; -static const uint32_t STAKED_NOTARIES_TIMESTAMP3 = 1537813349; +static const int STAKED_NOTARIES_TIMESTAMP = 1537780949; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537791749; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537802549; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537813349; extern const char *notaries_STAKED[][2]; extern int num_notaries_STAKED; @@ -20,6 +20,6 @@ extern const char *notaries_STAKED3[][2]; extern int num_notaries_STAKED3; int is_STAKED(); -int STAKED_era(uint32_t timestamp); +int STAKED_era(int timestamp); #endif From 5ef1dc51272e4c036c4d23fe492029c03286ebde Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 15:45:03 +0800 Subject: [PATCH 36/82] ; --- src/komodo_notary.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 87947a9b8..5c85c0885 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -303,7 +303,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam memcpy(pubkeys,staked_pubkeys3,ns1 * 33); return(ns3); } - free(staked_era) + free(staked_era); } } From 533cb0369c9daab7a387d7096ac4a1019fd8ee1b Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 15:46:38 +0800 Subject: [PATCH 37/82] pointless line remove --- src/komodo_notary.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 5c85c0885..8be1c2feb 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -303,7 +303,6 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam memcpy(pubkeys,staked_pubkeys3,ns1 * 33); return(ns3); } - free(staked_era); } } From fdf332d9abcf8be292dc573620da298c59d38a11 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 16:24:25 +0800 Subject: [PATCH 38/82] fix silly --- src/komodo_notary.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 8be1c2feb..af84287b4 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -264,7 +264,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam didstaked = 1; printf("THIS CHAIN IS A STAKED CHAIN and is era 0 \n"); } - memcpy(pubkeys,staked_pubkeys,n1 * 33); + memcpy(pubkeys,staked_pubkeys,ns * 33); return(ns); } else if (staked_era == 1) { @@ -288,7 +288,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam didstaked2 = 1; printf("THIS CHAIN IS A STAKED CHAIN and is era 2 \n"); } - memcpy(pubkeys,staked_pubkeys2,ns1 * 33); + memcpy(pubkeys,staked_pubkeys2,ns2 * 33); return(ns2); } else if (staked_era == 3) { @@ -300,7 +300,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam didstaked2 = 1; printf("THIS CHAIN IS A STAKED CHAIN and is era 3 \n"); } - memcpy(pubkeys,staked_pubkeys3,ns1 * 33); + memcpy(pubkeys,staked_pubkeys3,ns3 * 33); return(ns3); } } From 6120642eb124099c2b0b63f1104eaa84e412809d Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 18:58:38 +0800 Subject: [PATCH 39/82] add a print for isstaked --- src/crosschain_authority.cpp | 3 ++- src/komodo_notary.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 06a01dbd5..049b97cd4 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -8,6 +8,7 @@ int GetSymbolAuthority(const char* symbol) if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; if (is_STAKED() != 0) + printf("RETURNED CROSSCHAIN STAKED AS TRUE"); return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; } @@ -53,7 +54,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; - auth.requiredSigs = 4; + auth.requiredSigs = (num_notaries_STAKED / 5); auth.size = num_notaries_STAKED; for (int n=0; n Date: Mon, 24 Sep 2018 19:14:59 +0800 Subject: [PATCH 40/82] fix format --- src/crosschain_authority.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 049b97cd4..aa2188457 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -8,7 +8,7 @@ int GetSymbolAuthority(const char* symbol) if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; if (is_STAKED() != 0) - printf("RETURNED CROSSCHAIN STAKED AS TRUE"); + printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; } From b2c4fd58ecc344f9f92c34fdcf9a90d447b5f5a8 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 19:45:17 +0800 Subject: [PATCH 41/82] add another print --- src/notarisationdb.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 779489fd8..0df999e53 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -24,6 +24,8 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationData data; bool parsed = ParseNotarisationOpReturn(tx, data); + printf("Parsed notarisation data for %s",data.symbol); + if (!parsed) data = NotarisationData(); int authority = GetSymbolAuthority(data.symbol); From 8496fdbeeded2173d0493448880938419ffb7587 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 19:49:10 +0800 Subject: [PATCH 42/82] better? --- src/notarisationdb.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 0df999e53..45aff2ac7 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -24,9 +24,10 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationData data; bool parsed = ParseNotarisationOpReturn(tx, data); - printf("Parsed notarisation data for %s",data.symbol); + printf("Parsed notarisation data for %s \n",data.symbol); if (!parsed) data = NotarisationData(); + printf("Parsed notarisation data for %s \n",data.symbol); int authority = GetSymbolAuthority(data.symbol); if (authority == CROSSCHAIN_KOMODO) { From d75be221a0b256e3d60750b8fa5339bcce74d4bd Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 19:55:23 +0800 Subject: [PATCH 43/82] fux stupid error --- src/crosschain_authority.cpp | 2 +- src/komodo_notary.h | 2 +- src/main.cpp | 2 +- src/notaries_staked.cpp | 6 ++---- src/notaries_staked.h | 2 +- 5 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index aa2188457..1b41c2aad 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -7,7 +7,7 @@ int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if (is_STAKED() != 0) + if (is_STAKED(symbol) != 0) printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; return CROSSCHAIN_KOMODO; diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 4f1645f98..1b572b17c 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -215,7 +215,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam else if ( ASSETCHAINS_SYMBOL[0] == 0 ) timestamp = 0; // If this chain is not a staked chain, use the normal Komodo logic to determine notaries. This allows KMD to still sync and use its proper pubkeys for dPoW. - if (is_STAKED() == 0) + if (is_STAKED(ASSETCHAINS_SYMBOL) == 0) { if ( height >= KOMODO_NOTARIES_HARDCODED || ASSETCHAINS_SYMBOL[0] != 0 ) { diff --git a/src/main.cpp b/src/main.cpp index 596518ecf..89aea8360 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -5954,7 +5954,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, CAddress addrFrom; uint64_t nNonce = 1; vRecv >> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe; - if ( is_STAKED() != 0 ) + if ( is_STAKED(ASSETCHAINS_SYMBOL) != 0 ) { if (pfrom->nVersion < STAKEDMIN_PEER_PROTO_VERSION) { diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 81d249d96..33dfa8bb5 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -2,8 +2,6 @@ #include "notaries_staked.h" #include -extern char ASSETCHAINS_SYMBOL[65]; - // Era 0 set of pubkeys const char *notaries_STAKED[][2] = { @@ -100,9 +98,9 @@ const char *notaries_STAKED3[][2] = int num_notaries_STAKED3 = (sizeof(notaries_STAKED3)/sizeof(*notaries_STAKED3)); -int is_STAKED() { +int is_STAKED(const *char chain_name) { int STAKED = 0; - if ( (strncmp(ASSETCHAINS_SYMBOL, "STKD", 4) == 0) || (strncmp(ASSETCHAINS_SYMBOL, "STAKED", 6) == 0) ) + if ( (strncmp(chain_name, "STKD", 4) == 0) || (strncmp(chain_name, "STAKED", 6) == 0) ) STAKED = 1; return(STAKED); }; diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 84296d4e5..7d3748d4e 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -19,7 +19,7 @@ extern int num_notaries_STAKED2; extern const char *notaries_STAKED3[][2]; extern int num_notaries_STAKED3; -int is_STAKED(); +int is_STAKED(const *char chain_name); int STAKED_era(int timestamp); #endif From 267745130baca8ddbd6db732f06ea7ca9e126643 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 19:58:56 +0800 Subject: [PATCH 44/82] ok --- src/notaries_staked.cpp | 2 +- src/notaries_staked.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 33dfa8bb5..0741ecd58 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -98,7 +98,7 @@ const char *notaries_STAKED3[][2] = int num_notaries_STAKED3 = (sizeof(notaries_STAKED3)/sizeof(*notaries_STAKED3)); -int is_STAKED(const *char chain_name) { +int is_STAKED(const char *chain_name) { int STAKED = 0; if ( (strncmp(chain_name, "STKD", 4) == 0) || (strncmp(chain_name, "STAKED", 6) == 0) ) STAKED = 1; diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 7d3748d4e..d0df3906c 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -19,7 +19,7 @@ extern int num_notaries_STAKED2; extern const char *notaries_STAKED3[][2]; extern int num_notaries_STAKED3; -int is_STAKED(const *char chain_name); +int is_STAKED(const char *chain_name); int STAKED_era(int timestamp); #endif From 108c04eaf6bec0725bf1dc48074ff4936b571c12 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:03:01 +0800 Subject: [PATCH 45/82] more prints --- src/notarisationdb.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 45aff2ac7..9243cd17f 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -27,7 +27,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) printf("Parsed notarisation data for %s \n",data.symbol); if (!parsed) data = NotarisationData(); - printf("Parsed notarisation data for %s \n",data.symbol); + printf("Checked notarisation data for %s \n",data.symbol); int authority = GetSymbolAuthority(data.symbol); if (authority == CROSSCHAIN_KOMODO) { @@ -47,6 +47,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) LogPrintf("WARNING: Couldn't parse notarisation for tx: %s at height %i\n", tx.GetHash().GetHex().data(), nHeight); } + printf("Authorised and added notarisation data for %s \n",data.symbol); return vNotarisations; } From 6f610e9bdd2cc400b082c833dceed8859cdd427e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:06:33 +0800 Subject: [PATCH 46/82] things --- src/notarisationdb.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 9243cd17f..b79527cca 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -35,6 +35,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) continue; } else if (authority == CROSSCHAIN_STAKED) { if (!CheckTxAuthority(tx, auth_STAKED)) + printf("Authorised notarisation data for %s \n",data.symbol); continue; } @@ -47,7 +48,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) LogPrintf("WARNING: Couldn't parse notarisation for tx: %s at height %i\n", tx.GetHash().GetHex().data(), nHeight); } - printf("Authorised and added notarisation data for %s \n",data.symbol); + printf("Added notarisation data\n"); return vNotarisations; } From 250cb3ffd4d0f47a5c4e81dce2e5ac911b91ed88 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:14:35 +0800 Subject: [PATCH 47/82] try again --- src/notarisationdb.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index b79527cca..20b412979 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -34,13 +34,14 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) if (!eval->CheckNotaryInputs(tx, nHeight, block.nTime)) continue; } else if (authority == CROSSCHAIN_STAKED) { + printf("Authorised notarisation data for %s \n",data.symbol); if (!CheckTxAuthority(tx, auth_STAKED)) - printf("Authorised notarisation data for %s \n",data.symbol); continue; } if (parsed) { vNotarisations.push_back(std::make_pair(tx.GetHash(), data)); + printf("Added notarisation data for %s \n",data.symbol); //printf("Parsed a notarisation for: %s, txid:%s, ccid:%i, momdepth:%i\n", // data.symbol, tx.GetHash().GetHex().data(), data.ccId, data.MoMDepth); //if (!data.MoMoM.IsNull()) printf("MoMoM:%s\n", data.MoMoM.GetHex().data()); @@ -48,7 +49,6 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) LogPrintf("WARNING: Couldn't parse notarisation for tx: %s at height %i\n", tx.GetHash().GetHex().data(), nHeight); } - printf("Added notarisation data\n"); return vNotarisations; } From 93381421e1ca4ffc8c54a6ea390dae037c1a0190 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:21:31 +0800 Subject: [PATCH 48/82] more --- src/notarisationdb.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 20b412979..d9f1b2aeb 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -31,6 +31,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) int authority = GetSymbolAuthority(data.symbol); if (authority == CROSSCHAIN_KOMODO) { + printf("Authorised notarisation data for %s \n",data.symbol); if (!eval->CheckNotaryInputs(tx, nHeight, block.nTime)) continue; } else if (authority == CROSSCHAIN_STAKED) { @@ -38,7 +39,8 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) if (!CheckTxAuthority(tx, auth_STAKED)) continue; } - + printf("Authorised notarisation data for %s \n",data.symbol); + if (parsed) { vNotarisations.push_back(std::make_pair(tx.GetHash(), data)); printf("Added notarisation data for %s \n",data.symbol); From f7826be127553d469211c0c9cc97cdbdc65e6ad6 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:41:19 +0800 Subject: [PATCH 49/82] test --- src/crosschain_authority.cpp | 4 +++- src/notarisationdb.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 1b41c2aad..7f95d1533 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -7,9 +7,11 @@ int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if (is_STAKED(symbol) != 0) + if (is_STAKED(symbol) != 0) { printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; + } + printf("RETURNED CROSSCHAIN KOMODO AS TRUE\n"); return CROSSCHAIN_KOMODO; } diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index d9f1b2aeb..51b692270 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -40,7 +40,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) continue; } printf("Authorised notarisation data for %s \n",data.symbol); - + if (parsed) { vNotarisations.push_back(std::make_pair(tx.GetHash(), data)); printf("Added notarisation data for %s \n",data.symbol); From 43de331bef672f00acd64d9cbf4baa5f28afac55 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:46:52 +0800 Subject: [PATCH 50/82] make staked chains not authorised to test if notarizations are still added --- src/crosschain_authority.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 7f95d1533..5c0897512 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -7,7 +7,7 @@ int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if (is_STAKED(symbol) != 0) { + if (is_STAKED("TEST") != 0) { printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; } From a8412c31cea05d6dc9a1e50998a725b9036965f3 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 20:58:30 +0800 Subject: [PATCH 51/82] bail from check notarization if there is no valid notarization --- src/notarisationdb.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 51b692270..ee99a8020 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -24,9 +24,13 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationData data; bool parsed = ParseNotarisationOpReturn(tx, data); + printf("Parsed notarisation data for %s \n",data.symbol); if (!parsed) data = NotarisationData(); + if (strlen(data.symbol) == 0) + continue; + printf("Checked notarisation data for %s \n",data.symbol); int authority = GetSymbolAuthority(data.symbol); From 8010a2567c55c4ab28a4af4853a7af50084c4779 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:04:26 +0800 Subject: [PATCH 52/82] check --- src/notarisationdb.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index ee99a8020..916a5a185 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -30,7 +30,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) if (!parsed) data = NotarisationData(); if (strlen(data.symbol) == 0) continue; - + printf("Checked notarisation data for %s \n",data.symbol); int authority = GetSymbolAuthority(data.symbol); @@ -43,7 +43,6 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) if (!CheckTxAuthority(tx, auth_STAKED)) continue; } - printf("Authorised notarisation data for %s \n",data.symbol); if (parsed) { vNotarisations.push_back(std::make_pair(tx.GetHash(), data)); From 7aea99c1a4abe7ef5893be07f37cc319d9be810c Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:24:48 +0800 Subject: [PATCH 53/82] try and get timesstamp for crosschain auth height activation --- src/crosschain_authority.cpp | 1 - src/notarisationdb.cpp | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 5c0897512..78958b362 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,7 +53,6 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) return true; } - const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; auth.requiredSigs = (num_notaries_STAKED / 5); diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 916a5a185..ee6b4d267 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -4,6 +4,7 @@ #include "cc/eval.h" #include "crosschain.h" #include "main.h" +#include "notaries_staked.h" #include @@ -18,6 +19,9 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) { EvalRef eval; NotarisationsInBlock vNotarisations; + //CrosschainAuthority auth_STAKED; + int timestamp = komodo_heightstamp(nHeight); + printf("timestamp = %d",timestamp) for (unsigned int i = 0; i < block.vtx.size(); i++) { CTransaction tx = block.vtx[i]; @@ -40,6 +44,8 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) continue; } else if (authority == CROSSCHAIN_STAKED) { printf("Authorised notarisation data for %s \n",data.symbol); + // We need to create auth_STAKED dynamically here based on timestamp + if (!CheckTxAuthority(tx, auth_STAKED)) continue; } From 2b91c1d732801f90a9e9d20f4dfcbd1f15e989d0 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:29:20 +0800 Subject: [PATCH 54/82] try this instead --- src/notarisationdb.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index ee6b4d267..1b459e363 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -39,15 +39,14 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) int authority = GetSymbolAuthority(data.symbol); if (authority == CROSSCHAIN_KOMODO) { - printf("Authorised notarisation data for %s \n",data.symbol); if (!eval->CheckNotaryInputs(tx, nHeight, block.nTime)) continue; - } else if (authority == CROSSCHAIN_STAKED) { printf("Authorised notarisation data for %s \n",data.symbol); + } else if (authority == CROSSCHAIN_STAKED) { // We need to create auth_STAKED dynamically here based on timestamp - if (!CheckTxAuthority(tx, auth_STAKED)) continue; + printf("Authorised notarisation data for %s \n",data.symbol); } if (parsed) { From f541d4a7d5b27c91b34b1d17dc72c11a18e1e4c7 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:40:51 +0800 Subject: [PATCH 55/82] try pull from cBlock --- src/notarisationdb.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 1b459e363..8ec508e21 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -20,7 +20,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) EvalRef eval; NotarisationsInBlock vNotarisations; //CrosschainAuthority auth_STAKED; - int timestamp = komodo_heightstamp(nHeight); + int timestamp = block.nTime; printf("timestamp = %d",timestamp) for (unsigned int i = 0; i < block.vtx.size(); i++) { From 360925ac6a238c592589ee99e0df18e66dd92afd Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:42:22 +0800 Subject: [PATCH 56/82] ; --- src/notarisationdb.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 8ec508e21..a2052c8bf 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -21,7 +21,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationsInBlock vNotarisations; //CrosschainAuthority auth_STAKED; int timestamp = block.nTime; - printf("timestamp = %d",timestamp) + printf("timestamp = %d",timestamp); for (unsigned int i = 0; i < block.vtx.size(); i++) { CTransaction tx = block.vtx[i]; From 7d8a97e1f98ae9d72f56ba62a123409248c4f9e9 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:51:13 +0800 Subject: [PATCH 57/82] reactivate staked auth, and try to fetch era from auto function --- src/crosschain_authority.cpp | 2 +- src/notarisationdb.cpp | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 78958b362..8dc8fc77f 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -7,7 +7,7 @@ int GetSymbolAuthority(const char* symbol) { if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; - if (is_STAKED("TEST") != 0) { + if (is_STAKED(symbol) != 0) { printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; } diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index a2052c8bf..f4ba4dfe7 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -21,7 +21,6 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationsInBlock vNotarisations; //CrosschainAuthority auth_STAKED; int timestamp = block.nTime; - printf("timestamp = %d",timestamp); for (unsigned int i = 0; i < block.vtx.size(); i++) { CTransaction tx = block.vtx[i]; @@ -44,6 +43,9 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) printf("Authorised notarisation data for %s \n",data.symbol); } else if (authority == CROSSCHAIN_STAKED) { // We need to create auth_STAKED dynamically here based on timestamp + printf("timestamp = %d\n",timestamp); + int staked_era = STAKED_era(timestamp); + printf("ERA = %d \n", ); if (!CheckTxAuthority(tx, auth_STAKED)) continue; printf("Authorised notarisation data for %s \n",data.symbol); From 9cdde9ca1257cbab6801beae2eae86ed2f24b88e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 21:53:00 +0800 Subject: [PATCH 58/82] oops --- src/notarisationdb.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index f4ba4dfe7..3811ccb8f 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -45,7 +45,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) // We need to create auth_STAKED dynamically here based on timestamp printf("timestamp = %d\n",timestamp); int staked_era = STAKED_era(timestamp); - printf("ERA = %d \n", ); + printf("ERA = %d \n",staked_era); if (!CheckTxAuthority(tx, auth_STAKED)) continue; printf("Authorised notarisation data for %s \n",data.symbol); From bb5402c9a9199db1ea64b7931e50eb2965445f02 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 22:10:37 +0800 Subject: [PATCH 59/82] add eras for cross chain auth? --- src/crosschain_authority.cpp | 2 ++ src/notarisationdb.cpp | 42 +++++++++++++++++++++++++++++++++--- 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 8dc8fc77f..ed7457e23 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,6 +53,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) return true; } +/* const CrosschainAuthority auth_STAKED = [&](){ CrosschainAuthority auth; auth.requiredSigs = (num_notaries_STAKED / 5); @@ -62,3 +63,4 @@ const CrosschainAuthority auth_STAKED = [&](){ sscanf(notaries_STAKED[n][1]+(i*2), "%2hhx", auth.notaries[n]+i); return auth; }(); +*/ diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 3811ccb8f..3c5234089 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -19,7 +19,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) { EvalRef eval; NotarisationsInBlock vNotarisations; - //CrosschainAuthority auth_STAKED; + CrosschainAuthority auth_STAKED; int timestamp = block.nTime; for (unsigned int i = 0; i < block.vtx.size(); i++) { @@ -43,9 +43,45 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) printf("Authorised notarisation data for %s \n",data.symbol); } else if (authority == CROSSCHAIN_STAKED) { // We need to create auth_STAKED dynamically here based on timestamp - printf("timestamp = %d\n",timestamp); int staked_era = STAKED_era(timestamp); - printf("ERA = %d \n",staked_era); + printf("ERA.(%d) \n",staked_era); + if (staked_era == 0) + { + // era 0 + auth_STAKED.requiredSigs = (num_notaries_STAKED / 5); + auth_STAKED.size = num_notaries_STAKED; + for (int n=0; n 3) { + printf("Invalid ERA.(%d), this should not happen",staked_era); + continue; + } + } if (!CheckTxAuthority(tx, auth_STAKED)) continue; printf("Authorised notarisation data for %s \n",data.symbol); From 3ae25942127ee7a1cfd8548c8bdba5adc2e0b208 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 22:13:38 +0800 Subject: [PATCH 60/82] } --- src/notarisationdb.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 3c5234089..685440d1a 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -81,7 +81,6 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) printf("Invalid ERA.(%d), this should not happen",staked_era); continue; } - } if (!CheckTxAuthority(tx, auth_STAKED)) continue; printf("Authorised notarisation data for %s \n",data.symbol); From 475e8bc5cb8c163cfa6b447af5321b759d9da6e4 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 23:22:38 +0800 Subject: [PATCH 61/82] add era gap, and change to start at era 1 instead of 0. --- src/komodo_notary.h | 41 ++++++++++++++++----------- src/notaries_staked.cpp | 61 +++++++++++++++++++++-------------------- src/notaries_staked.h | 14 ++++++---- src/notarisationdb.cpp | 20 ++++++++------ 4 files changed, 76 insertions(+), 60 deletions(-) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 1b572b17c..3dc0c05f3 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -206,8 +206,9 @@ const char *Notaries_elected1[][2] = int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestamp) { static uint8_t elected_pubkeys0[64][33],elected_pubkeys1[64][33],did0,did1; static int32_t n0,n1; - static uint8_t staked_pubkeys[64][33],staked_pubkeys1[64][33],didstaked,didstaked1; static int32_t ns,ns1; - static uint8_t staked_pubkeys2[64][33],staked_pubkeys3[64][33],didstaked2,didstaked3; static int32_t ns2,ns3; + static uint8_t staked_pubkeys1[64][33],staked_pubkeys2[64][33],didstaked1,didstaked2; static int32_t ns1,ns2; + static uint8_t staked_pubkeys3[64][33],staked_pubkeys4[64][33],didstaked3,didstaked4; static int32_t ns3,ns4; + static uint8_t null_pubkeys[64][33]; int staked_era; int32_t i,htind,n; uint64_t mask = 0; struct knotary_entry *kp,*tmp; if ( timestamp == 0 && ASSETCHAINS_SYMBOL[0] != 0 ) @@ -250,23 +251,11 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam } } else - { // here we can activate our pubkeys. + { // here we can activate our pubkeys for STAKED chains by era. if (timestamp != 0) { staked_era = STAKED_era(timestamp); - if (staked_era == 0) - { - if (didstaked == 0) - { - ns = num_notaries_STAKED; - for (i=0; i -// Era 0 set of pubkeys -const char *notaries_STAKED[][2] = -{ - {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x - {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg - {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 - {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ - {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 - {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 - {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev - {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 - {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL - {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 - {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu - {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx - {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN - {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca - {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 - {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s -}; - -int num_notaries_STAKED = (sizeof(notaries_STAKED)/sizeof(*notaries_STAKED)); - // Era 1 set of pubkeys const char *notaries_STAKED1[][2] = { @@ -98,6 +74,30 @@ const char *notaries_STAKED3[][2] = int num_notaries_STAKED3 = (sizeof(notaries_STAKED3)/sizeof(*notaries_STAKED3)); +// Era 4 set of pubkeys +const char *notaries_STAKED4[][2] = +{ + {"blackjok3r", "021914947402d936a89fbdd1b12be49eb894a1568e5e17bb18c8a6cffbd3dc106e" }, // RTVti13NP4eeeZaCCmQxc2bnPdHxCJFP9x + {"alright", "0285657c689b903218c97f5f10fe1d10ace2ed6595112d9017f54fb42ea1c1dda8" }, //RXmXeQ8LfJK6Y1aTM97cRz9Gu5f6fmR3sg + {"webworker01", "031d1fb39ae4dca28965c3abdbd21faa0f685f6d7b87a60561afa7c448343fef6d" }, //RGsQiArk5sTmjXZV9UzGMW5njyvtSnsTN8 + {"CrisF", "03f87f1bccb744d90fdbf7fad1515a98e9fc7feb1800e460d2e7565b88c3971bf3" }, //RMwEpnaVe3cesWbMqqKYPPkaLcDkooTDgZ + {"smk762", "02eacef682d2f86e0103c18f4da46116e17196f3fb8f73ed931acb78e81d8e1aa5" }, // RQVvzJ8gepCDVjhqCAc5Tia1kTmt8KDPL9 + {"jorian", "02150c410a606b898bcab4f083e48e0f98a510e0d48d4db367d37f318d26ae72e3" }, // RFgzxZe2P4RWKx6E9QGPK3rx3TXeWxSqa8 + {"TonyL", "021a559101e355c907d9c553671044d619769a6e71d624f68bfec7d0afa6bd6a96" }, // RHq3JsvLxU45Z8ufYS6RsDpSG4wi6ucDev + {"Emman", "038f642dcdacbdf510b7869d74544dbc6792548d9d1f8d73a999dd9f45f513c935" }, //RN2KsQGW36Ah4NorJDxLJp2xiYJJEzk9Y6 + {"CHMEX", "03ed125d1beb118d12ff0a052bdb0cee32591386d718309b2924f2c36b4e7388e6" }, // RF4HiVeuYpaznRPs7fkRAKKYqT5tuxQQTL + {"metaphilibert", "0344182c376f054e3755d712361672138660bda8005abb64067eb5aa98bdb40d10" }, // RG28QSnYFADBg1dAVkH1uPGYS6F8ioEUM2 + {"jusoaresf", "02dfb7ed72a23f6d07f0ea2f28192ee174733cc8412ec0f97b073007b78fab6346" }, // RBQGfE5Hxsjm1BPraTxbneRuNasPDuoLnu + {"mylo", "03f6b7fcaf0b8b8ec432d0de839a76598b78418dadd50c8e5594c0e557d914ec09" }, // RXN4hoZkhUkkrnef9nTUDw3E3vVALAD8Kx + {"blackjok3r2", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"blackjok3r3", "03c3e4c0206551dbf3a4b24d18e5d2737080541184211e3bfd2b1092177410b9c2" }, // RMMav2AVse5XHPvDfTzRpMbFhK3GqFmtSN + {"kmdkrazy", "02f7597468703c1c5c8465dd6d43acaae697df9df30bed21494d193412a1ea193e" }, // RWHGbrLSP89fTzNVF9U9xiekDYJqcibTca + {"alrighttest", "02e9dfe248f453b499315a90375e58a1c9ad79f5f3932ecb2205399a0f262d65fc" }, // RBevSstS8JtDXMEFNcJws4QTYN4PcE2VL5 + {"alrighttest1", "03527c7ecd6a8c5db6d685a64e6e18c1edb49e2f057a434f56c3f1253a26e9c6a2" }, // RBw2jNU3dnGk86ZLqPMadJwRwg3NU8eC6s +}; + +int num_notaries_STAKED4 = (sizeof(notaries_STAKED4)/sizeof(*notaries_STAKED4)); + int is_STAKED(const char *chain_name) { int STAKED = 0; if ( (strncmp(chain_name, "STKD", 4) == 0) || (strncmp(chain_name, "STAKED", 6) == 0) ) @@ -108,13 +108,16 @@ int is_STAKED(const char *chain_name) { int STAKED_era(int timestamp) { int era; - if (timestamp <= STAKED_NOTARIES_TIMESTAMP) - era = 0; - else if (timestamp <= STAKED_NOTARIES_TIMESTAMP1 && timestamp >= STAKED_NOTARIES_TIMESTAMP) + if (timestamp <= STAKED_NOTARIES_TIMESTAMP1 era = 1; - else if (timestamp <= STAKED_NOTARIES_TIMESTAMP2 && timestamp >= STAKED_NOTARIES_TIMESTAMP1) + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP2 && timestamp >= (STAKED_NOTARIES_TIMESTAMP1 + STAKED_ERA_GAP)) era = 2; - else if (timestamp <= STAKED_NOTARIES_TIMESTAMP3 && timestamp >= STAKED_NOTARIES_TIMESTAMP2) + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP3 && timestamp >= (STAKED_NOTARIES_TIMESTAMP2 + STAKED_ERA_GAP)) era = 3; + else if (timestamp <= STAKED_NOTARIES_TIMESTAMP4 && timestamp >= (STAKED_NOTARIES_TIMESTAMP3 + STAKED_ERA_GAP)) + era = 4; + else + era = 0; + // if we are in a gap, return era 0, so any notarizations submitted are invalid. return(era); } diff --git a/src/notaries_staked.h b/src/notaries_staked.h index d0df3906c..6c51a0050 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -2,13 +2,12 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED -static const int STAKED_NOTARIES_TIMESTAMP = 1537780949; -static const int STAKED_NOTARIES_TIMESTAMP1 = 1537791749; -static const int STAKED_NOTARIES_TIMESTAMP2 = 1537802549; -static const int STAKED_NOTARIES_TIMESTAMP3 = 1537813349; +static const int STAKED_ERA_GAP = 777; -extern const char *notaries_STAKED[][2]; -extern int num_notaries_STAKED; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537780949; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537791749; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537802549; +static const int STAKED_NOTARIES_TIMESTAMP4 = 1537813349; extern const char *notaries_STAKED1[][2]; extern int num_notaries_STAKED1; @@ -19,6 +18,9 @@ extern int num_notaries_STAKED2; extern const char *notaries_STAKED3[][2]; extern int num_notaries_STAKED3; +extern const char *notaries_STAKED4[][2]; +extern int num_notaries_STAKED4; + int is_STAKED(const char *chain_name); int STAKED_era(int timestamp); diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 685440d1a..9f2610feb 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -47,12 +47,9 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) printf("ERA.(%d) \n",staked_era); if (staked_era == 0) { - // era 0 - auth_STAKED.requiredSigs = (num_notaries_STAKED / 5); - auth_STAKED.size = num_notaries_STAKED; - for (int n=0; n 3) { - printf("Invalid ERA.(%d), this should not happen",staked_era); - continue; + } else if (staked_era == 4) + { + // era 4 + auth_STAKED.requiredSigs = (num_notaries_STAKED4 / 5); + auth_STAKED.size = num_notaries_STAKED4; + for (int n=0; n Date: Mon, 24 Sep 2018 23:25:33 +0800 Subject: [PATCH 62/82] ) --- src/notaries_staked.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 2c45b5dbd..f7d64a168 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -108,7 +108,7 @@ int is_STAKED(const char *chain_name) { int STAKED_era(int timestamp) { int era; - if (timestamp <= STAKED_NOTARIES_TIMESTAMP1 + if (timestamp <= STAKED_NOTARIES_TIMESTAMP1) era = 1; else if (timestamp <= STAKED_NOTARIES_TIMESTAMP2 && timestamp >= (STAKED_NOTARIES_TIMESTAMP1 + STAKED_ERA_GAP)) era = 2; From 595f3d7a5fbb7efd47d6e1c5d68eb4b1ed29e769 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 23:27:45 +0800 Subject: [PATCH 63/82] fix pointless print --- src/notarisationdb.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 9f2610feb..4e0be704a 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -27,9 +27,6 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) NotarisationData data; bool parsed = ParseNotarisationOpReturn(tx, data); - - printf("Parsed notarisation data for %s \n",data.symbol); - if (!parsed) data = NotarisationData(); if (strlen(data.symbol) == 0) continue; From 01b6ef666a5da230a6ab73ade08c052ac7e83d9c Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 23:46:08 +0800 Subject: [PATCH 64/82] add check for num vins over 2 for all AC --- src/komodo.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/komodo.h b/src/komodo.h index d1587fbb4..3fef07475 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -859,7 +859,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) ) { - if ( ASSETCHAINS_SYMBOL[0] != 0 ) + if ( ASSETCHAINS_SYMBOL[0] != 0 && numvins >= 2) // check numvins, because on STAKED during ERA GAP, it counts every TX as notarized. { static FILE *signedfp; if ( signedfp == 0 ) From 6368a83fe3c921581dd20fb32ac518515f938bec Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Mon, 24 Sep 2018 23:51:38 +0800 Subject: [PATCH 65/82] retest gap --- src/komodo.h | 2 +- src/notaries_staked.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/komodo.h b/src/komodo.h index 3fef07475..ead20f034 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -859,7 +859,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) ) { - if ( ASSETCHAINS_SYMBOL[0] != 0 && numvins >= 2) // check numvins, because on STAKED during ERA GAP, it counts every TX as notarized. + if ( ASSETCHAINS_SYMBOL[0] != 0 && numvins >= 2) // check numvins, because on STAKED during ERA GAP, it counts every TX as notarized.u { static FILE *signedfp; if ( signedfp == 0 ) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 6c51a0050..aab392301 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -7,7 +7,7 @@ static const int STAKED_ERA_GAP = 777; static const int STAKED_NOTARIES_TIMESTAMP1 = 1537780949; static const int STAKED_NOTARIES_TIMESTAMP2 = 1537791749; static const int STAKED_NOTARIES_TIMESTAMP3 = 1537802549; -static const int STAKED_NOTARIES_TIMESTAMP4 = 1537813349; +static const int STAKED_NOTARIES_TIMESTAMP4 = 1537805431; extern const char *notaries_STAKED1[][2]; extern int num_notaries_STAKED1; From b60948261bf96b7acfd3a9d83795987811583e3a Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 00:03:00 +0800 Subject: [PATCH 66/82] reset eras, try from reqync --- src/notaries_staked.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index aab392301..f1af9595a 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -4,10 +4,10 @@ static const int STAKED_ERA_GAP = 777; -static const int STAKED_NOTARIES_TIMESTAMP1 = 1537780949; -static const int STAKED_NOTARIES_TIMESTAMP2 = 1537791749; -static const int STAKED_NOTARIES_TIMESTAMP3 = 1537802549; -static const int STAKED_NOTARIES_TIMESTAMP4 = 1537805431; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537807474; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537818274; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537839874; +static const int STAKED_NOTARIES_TIMESTAMP4 = 1537850674; extern const char *notaries_STAKED1[][2]; extern int num_notaries_STAKED1; From 2cf2e5f83ed27dcf45b1b98d57683819b7b93f49 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 01:17:49 +0800 Subject: [PATCH 67/82] try to zero array of pubkeys --- src/komodo.h | 2 +- src/komodo_notary.h | 18 +++++++++--------- src/notarisationdb.cpp | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/komodo.h b/src/komodo.h index ead20f034..d8376d15c 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -859,7 +859,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || numvalid > (numnotaries/5)) ) { - if ( ASSETCHAINS_SYMBOL[0] != 0 && numvins >= 2) // check numvins, because on STAKED during ERA GAP, it counts every TX as notarized.u + if ( ASSETCHAINS_SYMBOL[0] != 0) { static FILE *signedfp; if ( signedfp == 0 ) diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 3dc0c05f3..352316e77 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -208,7 +208,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam static uint8_t elected_pubkeys0[64][33],elected_pubkeys1[64][33],did0,did1; static int32_t n0,n1; static uint8_t staked_pubkeys1[64][33],staked_pubkeys2[64][33],didstaked1,didstaked2; static int32_t ns1,ns2; static uint8_t staked_pubkeys3[64][33],staked_pubkeys4[64][33],didstaked3,didstaked4; static int32_t ns3,ns4; - static uint8_t null_pubkeys[64][33]; + static uint8_t null_pubkeys[64][33] = {0}; int staked_era; int32_t i,htind,n; uint64_t mask = 0; struct knotary_entry *kp,*tmp; if ( timestamp == 0 && ASSETCHAINS_SYMBOL[0] != 0 ) @@ -263,7 +263,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam for (i=0; i Date: Tue, 25 Sep 2018 10:16:05 +0800 Subject: [PATCH 68/82] that didnt work, try another way --- src/komodo.h | 5 ++++- src/komodo_notary.h | 6 +++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/komodo.h b/src/komodo.h index d8376d15c..3c708989f 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -831,6 +831,9 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) txn_count = block.vtx.size(); for (i=0; iGetBlockTime()) != 0)) + printf("ERA 0 SKIP %s\n",ASSETCHAINS_SYMBOL); + continue; txhash = block.vtx[i].GetHash(); numvouts = block.vtx[i].vout.size(); notaryid = -1; @@ -857,7 +860,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) numvalid = bitweight(signedmask); if ( (((height < 90000 || (signedmask & 1) != 0) && numvalid >= KOMODO_MINRATIFY) || (numvalid >= KOMODO_MINRATIFY && ASSETCHAINS_SYMBOL[0] != 0) || - numvalid > (numnotaries/5)) ) + numvalid > (numnotaries/5))) { if ( ASSETCHAINS_SYMBOL[0] != 0) { diff --git a/src/komodo_notary.h b/src/komodo_notary.h index 352316e77..de343e184 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -305,12 +305,12 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam return(ns4); } else if (staked_era == 0) { - // this means we are in a gap, so we set the array of pubkeys to zero, so all notarizations are invalid. + // this means we are in a gap, so we set the array of pubkeys to zero, this does't seem to correctly work, so added exeption to komodo.h aswell. for (i=0; i<1; i++) decode_hex(null_pubkeys[i],33,(char *)notaries_STAKED1[i][1]); - printf("%s IS A STAKED CHAIN and is in an ERA GAP, so we ignored it.\n",ASSETCHAINS_SYMBOL); + printf("%s IS A STAKED CHAIN and is in an ERA GAP, so we zeroed the pubkeys.\n",ASSETCHAINS_SYMBOL); memcpy(pubkeys,null_pubkeys,64 * 33); - return(2); + return(64); } } } From 2e82dcdf8efccdbc3c2c3787f0d1b91276ed4cd2 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 10:19:27 +0800 Subject: [PATCH 69/82] change eras --- src/notaries_staked.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index f1af9595a..5545f8714 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -4,9 +4,9 @@ static const int STAKED_ERA_GAP = 777; -static const int STAKED_NOTARIES_TIMESTAMP1 = 1537807474; -static const int STAKED_NOTARIES_TIMESTAMP2 = 1537818274; -static const int STAKED_NOTARIES_TIMESTAMP3 = 1537839874; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537839874; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537843474; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537847074; static const int STAKED_NOTARIES_TIMESTAMP4 = 1537850674; extern const char *notaries_STAKED1[][2]; From 582b359c15385428800f7eb75661510d5690e3f7 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 10:24:15 +0800 Subject: [PATCH 70/82] == 0 --- src/komodo.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/komodo.h b/src/komodo.h index 3c708989f..7c927a3d8 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -831,7 +831,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block) txn_count = block.vtx.size(); for (i=0; iGetBlockTime()) != 0)) + if ((is_STAKED(ASSETCHAINS_SYMBOL) != 0) && (STAKED_era(pindex->GetBlockTime()) == 0)) printf("ERA 0 SKIP %s\n",ASSETCHAINS_SYMBOL); continue; txhash = block.vtx[i].GetHash(); From 3e86777927d5bf04a5064248659ca11eb2994f3d Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 13:49:15 +0800 Subject: [PATCH 71/82] try move crosschain auth to a function, and clean up code a bit. --- src/crosschain_authority.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index ed7457e23..6c8df2219 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,6 +53,15 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) return true; } +CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen,int num_notaries){ + CrosschainAuthority auth; + auth.requiredSigs = (num_notaries / 5); + auth.size = num_notaries; + for (int n=0; n Date: Tue, 25 Sep 2018 14:16:39 +0800 Subject: [PATCH 72/82] timstaps --- src/notaries_staked.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 5545f8714..5d2450f0b 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -4,10 +4,10 @@ static const int STAKED_ERA_GAP = 777; -static const int STAKED_NOTARIES_TIMESTAMP1 = 1537839874; -static const int STAKED_NOTARIES_TIMESTAMP2 = 1537843474; -static const int STAKED_NOTARIES_TIMESTAMP3 = 1537847074; -static const int STAKED_NOTARIES_TIMESTAMP4 = 1537850674; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537859688; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537863288; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537866888; +static const int STAKED_NOTARIES_TIMESTAMP4 = 1537870488; extern const char *notaries_STAKED1[][2]; extern int num_notaries_STAKED1; From 562d0132f7a532a8c1c1ce78707fe58e23ce803c Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 14:20:21 +0800 Subject: [PATCH 73/82] test --- src/crosschain_authority.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 6c8df2219..be54f2a43 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,7 +53,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) return true; } -CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen,int num_notaries){ +CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries){ CrosschainAuthority auth; auth.requiredSigs = (num_notaries / 5); auth.size = num_notaries; From 84f0f23626ec988d8726b688816fdc9ee95fbdf0 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 14:25:27 +0800 Subject: [PATCH 74/82] try call function --- src/notarisationdb.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index fd2d9cac0..1867aa748 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -50,11 +50,14 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) } else if (staked_era == 1) { // era 1 + auth_STAKED = auth_STAKED_chosen(notaries_STAKED,num_notaries_STAKED); + /* auth_STAKED.requiredSigs = (num_notaries_STAKED1 / 5); auth_STAKED.size = num_notaries_STAKED1; for (int n=0; n Date: Tue, 25 Sep 2018 14:27:08 +0800 Subject: [PATCH 75/82] 1 --- src/notarisationdb.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index 1867aa748..be1ae5dfa 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -50,7 +50,7 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) } else if (staked_era == 1) { // era 1 - auth_STAKED = auth_STAKED_chosen(notaries_STAKED,num_notaries_STAKED); + auth_STAKED = auth_STAKED_chosen(notaries_STAKED1,num_notaries_STAKED1); /* auth_STAKED.requiredSigs = (num_notaries_STAKED1 / 5); auth_STAKED.size = num_notaries_STAKED1; From f16893312fe10e00eec9f88fd9b07eb1a6a346a7 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 14:29:22 +0800 Subject: [PATCH 76/82] try that --- src/crosschain.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/crosschain.h b/src/crosschain.h index 65be53f92..75c0b2e9f 100644 --- a/src/crosschain.h +++ b/src/crosschain.h @@ -13,7 +13,7 @@ typedef struct CrosschainAuthority { size_t requiredSigs; } CrosschainAuthority; -extern const CrosschainAuthority auth_STAKED; +CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries); int GetSymbolAuthority(const char* symbol); bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth); From 07f90f985292e2991ad1e0c5db0202b34475c27e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 15:17:51 +0800 Subject: [PATCH 77/82] move cross chain choose to staked.cpp --- src/crosschain.h | 2 -- src/crosschain_authority.cpp | 10 +--------- src/notaries_staked.cpp | 11 +++++++++++ src/notaries_staked.h | 3 +++ src/notarisationdb.cpp | 7 ------- 5 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/crosschain.h b/src/crosschain.h index 75c0b2e9f..29b6bec4b 100644 --- a/src/crosschain.h +++ b/src/crosschain.h @@ -13,8 +13,6 @@ typedef struct CrosschainAuthority { size_t requiredSigs; } CrosschainAuthority; -CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries); - int GetSymbolAuthority(const char* symbol); bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth); diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index be54f2a43..ef09c5e00 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -53,15 +53,7 @@ bool CheckTxAuthority(const CTransaction &tx, CrosschainAuthority auth) return true; } -CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries){ - CrosschainAuthority auth; - auth.requiredSigs = (num_notaries / 5); - auth.size = num_notaries; - for (int n=0; n // Era 1 set of pubkeys @@ -121,3 +122,13 @@ int STAKED_era(int timestamp) // if we are in a gap, return era 0, so any notarizations submitted are invalid. return(era); } + +CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries){ + CrosschainAuthority auth; + auth.requiredSigs = (num_notaries / 5); + auth.size = num_notaries; + for (int n=0; n Date: Tue, 25 Sep 2018 15:19:21 +0800 Subject: [PATCH 78/82] opps --- src/notaries_staked.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index f6139cc98..375077cac 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -24,7 +24,7 @@ extern int num_notaries_STAKED4; int is_STAKED(const char *chain_name); int STAKED_era(int timestamp); -CrosschainAuthority Choose_auth_STAKED(staked_era) +//CrosschainAuthority Choose_auth_STAKED(staked_era); CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries); #endif From a2d3bd9f849129a37d0d85820d2211d52a24d257 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 15:21:04 +0800 Subject: [PATCH 79/82] try --- src/notaries_staked.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 375077cac..c5ffe5219 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -2,6 +2,8 @@ #ifndef NOTARIES_STAKED #define NOTARIES_STAKED +#include "crosschain.h" + static const int STAKED_ERA_GAP = 777; static const int STAKED_NOTARIES_TIMESTAMP1 = 1537859688; From 211f57fb452943fe44ece0be3f6a513a52c3c942 Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 15:40:44 +0800 Subject: [PATCH 80/82] tidy up --- src/notaries_staked.cpp | 27 +++++++++++++++++++++++---- src/notaries_staked.h | 2 +- src/notarisationdb.cpp | 38 ++++++-------------------------------- 3 files changed, 30 insertions(+), 37 deletions(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index d2cc0bafb..489a9ea78 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -115,15 +115,34 @@ int STAKED_era(int timestamp) era = 2; else if (timestamp <= STAKED_NOTARIES_TIMESTAMP3 && timestamp >= (STAKED_NOTARIES_TIMESTAMP2 + STAKED_ERA_GAP)) era = 3; - else if (timestamp <= STAKED_NOTARIES_TIMESTAMP4 && timestamp >= (STAKED_NOTARIES_TIMESTAMP3 + STAKED_ERA_GAP)) + else if timestamp >= (STAKED_NOTARIES_TIMESTAMP3 + STAKED_ERA_GAP)) era = 4; else era = 0; - // if we are in a gap, return era 0, so any notarizations submitted are invalid. + // if we are in a gap, return era 0, this allows to invalidate notarizations when in GAP. return(era); -} +}; -CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries){ +CrosschainAuthority Choose_auth_STAKED(int chosen_era) { + CrosschainAuthority auth; + switch (chosen_era) { + case 1: + auth = auth_STAKED_chosen(notaries_STAKED1,num_notaries_STAKED1); + break; + case 2: + auth = auth_STAKED_chosen(notaries_STAKED2,num_notaries_STAKED2); + break; + case 3: + auth = auth_STAKED_chosen(notaries_STAKED3,num_notaries_STAKED3); + break; + case 4: + auth = auth_STAKED_chosen(notaries_STAKED4,num_notaries_STAKED4); + break; + } + return(auth); +}; + +CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries) { CrosschainAuthority auth; auth.requiredSigs = (num_notaries / 5); auth.size = num_notaries; diff --git a/src/notaries_staked.h b/src/notaries_staked.h index c5ffe5219..3776c6828 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -26,7 +26,7 @@ extern int num_notaries_STAKED4; int is_STAKED(const char *chain_name); int STAKED_era(int timestamp); -//CrosschainAuthority Choose_auth_STAKED(staked_era); +CrosschainAuthority Choose_auth_STAKED(int chosen_era); CrosschainAuthority auth_STAKED_chosen(const char *notaries_chosen[][2],int num_notaries); #endif diff --git a/src/notarisationdb.cpp b/src/notarisationdb.cpp index acd1d2287..68c00546b 100644 --- a/src/notarisationdb.cpp +++ b/src/notarisationdb.cpp @@ -31,50 +31,24 @@ NotarisationsInBlock ScanBlockNotarisations(const CBlock &block, int nHeight) if (strlen(data.symbol) == 0) continue; - printf("Checked notarisation data for %s \n",data.symbol); + //printf("Checked notarisation data for %s \n",data.symbol); int authority = GetSymbolAuthority(data.symbol); if (authority == CROSSCHAIN_KOMODO) { if (!eval->CheckNotaryInputs(tx, nHeight, block.nTime)) continue; - printf("Authorised notarisation data for %s \n",data.symbol); + //printf("Authorised notarisation data for %s \n",data.symbol); } else if (authority == CROSSCHAIN_STAKED) { // We need to create auth_STAKED dynamically here based on timestamp int staked_era = STAKED_era(timestamp); printf("ERA.(%d) \n",staked_era); - if (staked_era == 0) - { + if (staked_era == 0) { // this is an ERA GAP, so we will ignore this notarization printf("Notarization for %s occured inside an ERA GAP, we will ignore it! \n",data.symbol); continue; - } else if (staked_era == 1) - { - // era 1 - auth_STAKED = auth_STAKED_chosen(notaries_STAKED1,num_notaries_STAKED1); - } else if (staked_era == 2) - { - // era 2 - auth_STAKED.requiredSigs = (num_notaries_STAKED2 / 5); - auth_STAKED.size = num_notaries_STAKED2; - for (int n=0; n Date: Tue, 25 Sep 2018 15:41:55 +0800 Subject: [PATCH 81/82] ) --- src/notaries_staked.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/notaries_staked.cpp b/src/notaries_staked.cpp index 489a9ea78..9a91b9d84 100644 --- a/src/notaries_staked.cpp +++ b/src/notaries_staked.cpp @@ -115,7 +115,7 @@ int STAKED_era(int timestamp) era = 2; else if (timestamp <= STAKED_NOTARIES_TIMESTAMP3 && timestamp >= (STAKED_NOTARIES_TIMESTAMP2 + STAKED_ERA_GAP)) era = 3; - else if timestamp >= (STAKED_NOTARIES_TIMESTAMP3 + STAKED_ERA_GAP)) + else if (timestamp >= (STAKED_NOTARIES_TIMESTAMP3 + STAKED_ERA_GAP)) era = 4; else era = 0; From 1a948db4fda982931c763e62b847d3a54ab35a7e Mon Sep 17 00:00:00 2001 From: blackjok3r Date: Tue, 25 Sep 2018 16:38:39 +0800 Subject: [PATCH 82/82] who knows --- src/crosschain_authority.cpp | 4 ++-- src/komodo_notary.h | 2 +- src/notaries_staked.h | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index ef09c5e00..8116b2887 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -8,10 +8,10 @@ int GetSymbolAuthority(const char* symbol) if (strncmp(symbol, "TXSCL", 5) == 0) return CROSSCHAIN_TXSCL; if (is_STAKED(symbol) != 0) { - printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); + //printf("RETURNED CROSSCHAIN STAKED AS TRUE\n"); return CROSSCHAIN_STAKED; } - printf("RETURNED CROSSCHAIN KOMODO AS TRUE\n"); + //printf("RETURNED CROSSCHAIN KOMODO AS TRUE\n"); return CROSSCHAIN_KOMODO; } diff --git a/src/komodo_notary.h b/src/komodo_notary.h index de343e184..4f5f7aea7 100644 --- a/src/komodo_notary.h +++ b/src/komodo_notary.h @@ -305,7 +305,7 @@ int32_t komodo_notaries(uint8_t pubkeys[64][33],int32_t height,uint32_t timestam return(ns4); } else if (staked_era == 0) { - // this means we are in a gap, so we set the array of pubkeys to zero, this does't seem to correctly work, so added exeption to komodo.h aswell. + // this means we are in a gap, so we set the array of pubkeys to zero, this does't seem to correctly work, so added exeption to komodo.h aswell, fix here welcome. for (i=0; i<1; i++) decode_hex(null_pubkeys[i],33,(char *)notaries_STAKED1[i][1]); printf("%s IS A STAKED CHAIN and is in an ERA GAP, so we zeroed the pubkeys.\n",ASSETCHAINS_SYMBOL); diff --git a/src/notaries_staked.h b/src/notaries_staked.h index 3776c6828..c87f27f98 100644 --- a/src/notaries_staked.h +++ b/src/notaries_staked.h @@ -6,10 +6,10 @@ static const int STAKED_ERA_GAP = 777; -static const int STAKED_NOTARIES_TIMESTAMP1 = 1537859688; -static const int STAKED_NOTARIES_TIMESTAMP2 = 1537863288; -static const int STAKED_NOTARIES_TIMESTAMP3 = 1537866888; -static const int STAKED_NOTARIES_TIMESTAMP4 = 1537870488; +static const int STAKED_NOTARIES_TIMESTAMP1 = 1537868073; +static const int STAKED_NOTARIES_TIMESTAMP2 = 1537871673; +static const int STAKED_NOTARIES_TIMESTAMP3 = 1537875273; +static const int STAKED_NOTARIES_TIMESTAMP4 = 1537878873; extern const char *notaries_STAKED1[][2]; extern int num_notaries_STAKED1;