From 998397aa2ccbfb55cdfeb183fa2c1a86c3c46249 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 3 Oct 2016 08:16:53 -0300 Subject: [PATCH] fixed pubkey for notary mining --- src/bitcoind.cpp | 3 +++ src/komodo.h | 1 + src/miner.cpp | 19 ++++++++++++++----- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/bitcoind.cpp b/src/bitcoind.cpp index fb8f6584f..380919979 100644 --- a/src/bitcoind.cpp +++ b/src/bitcoind.cpp @@ -119,7 +119,10 @@ bool AppInit(int argc, char* argv[]) exit(1); } extern int32_t IS_KOMODO_NOTARY; + extern std::string NOTARY_PUBKEY; IS_KOMODO_NOTARY = GetBoolArg("-notary", false); + NOTARY_PUBKEY = GetArg("-pubkey", ""); + #ifndef WIN32 fDaemon = GetBoolArg("-daemon", false); if (fDaemon) diff --git a/src/komodo.h b/src/komodo.h index a70fed925..44a41cdd6 100644 --- a/src/komodo.h +++ b/src/komodo.h @@ -20,6 +20,7 @@ #include int32_t IS_KOMODO_NOTARY; +std::string NOTARY_PUBKEY; int32_t komodo_is_notaryblock(void *block) { diff --git a/src/miner.cpp b/src/miner.cpp index 25ee1cb65..c7b3a1768 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -405,14 +405,22 @@ void IncrementExtraNonce(CBlock* pblock, CBlockIndex* pindexPrev, unsigned int& // // Internal miner // +extern int32_t IS_KOMODO_NOTARY; +extern std::string NOTARY_PUBKEY; CBlockTemplate* CreateNewBlockWithKey(CReserveKey& reservekey) { CPubKey pubkey; - if (!reservekey.GetReservedKey(pubkey)) - return NULL; - - CScript scriptPubKey = CScript() << ToByteVector(pubkey) << OP_CHECKSIG; + if ( IS_KOMODO_NOTARY == 0 ) + { + if (!reservekey.GetReservedKey(pubkey)) + return NULL; + CScript scriptPubKey = CScript() << ToByteVector(pubkey) << OP_CHECKSIG; + } + else + { + CScript scriptPubKey = CScript() << ParseHex(NOTARY_PUBKEY.get_str()) << OP_CHECKSIG; + } return CreateNewBlock(scriptPubKey); } @@ -429,7 +437,8 @@ static bool ProcessBlockFound(CBlock* pblock, CWallet& wallet, CReserveKey& rese } // Remove key from key pool - reservekey.KeepKey(); + if ( IS_KOMODO_NOTARY == 0 ) + reservekey.KeepKey(); // Track how many getdata requests this block gets {