From 9026081cca1e8baeed0fac359a547e034f7280bf Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 29 Oct 2016 11:21:51 -0300 Subject: [PATCH] test --- src/miner.cpp | 86 --------------------------------------------------- 1 file changed, 86 deletions(-) diff --git a/src/miner.cpp b/src/miner.cpp index f5ecddde7..7babb9d5e 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -457,92 +457,6 @@ static bool ProcessBlockFound(CBlock* pblock, CWallet& wallet, CReserveKey& rese return true; } -void minegenesis() -{ - const CChainParams& chainparams = Params(); - // Each thread has its own key and counter - CReserveKey reservekey(pwallet); - unsigned int nExtraNonce = 0; - unsigned int n = chainparams.EquihashN(); - unsigned int k = chainparams.EquihashK(); - while ( true ) - { - unique_ptr pblocktemplate(CreateNewBlockWithKey(reservekey)); - if (!pblocktemplate.get()) - { - LogPrintf("Error in ZcashMiner: Keypool ran out, please call keypoolrefill before restarting the mining thread\n"); - return; - } - CBlock *pblock = &pblocktemplate->block; - IncrementExtraNonce(pblock, pindexPrev, nExtraNonce); - while ( true ) - { - // Hash state - crypto_generichash_blake2b_state state; - EhInitialiseState(n, k, state); - // I = the block header minus nonce and solution. - CEquihashInput I{*pblock}; - CDataStream ss(SER_NETWORK, PROTOCOL_VERSION); - ss << I; - // H(I||... - crypto_generichash_blake2b_update(&state, (unsigned char*)&ss[0], ss.size()); - // H(I||V||... - crypto_generichash_blake2b_state curr_state; - curr_state = state; - crypto_generichash_blake2b_update(&curr_state,pblock->nNonce.begin(),pblock->nNonce.size()); - // (x_1, x_2, ...) = A(I, V, n, k) - LogPrint("pow", "Running Equihash solver \"%s\" with nNonce = %s\n",solver, pblock->nNonce.ToString()); - std::function)> validBlock = - [&pblock, &hashTarget, &pwallet, &reservekey, &m_cs, &cancelSolver, &chainparams] - (std::vector soln) - { - // Write the solution to the hash and compute the result. - LogPrint("pow", "- Checking solution against target\n"); - pblock->nSolution = soln; - solutionTargetChecks.increment(); - if ( UintToArith256(pblock->GetHash()) > hashTarget ) - continue; - // Found a solution - LogPrintf("ZcashMiner:\n"); - LogPrintf("proof-of-work found \n hash: %s \ntarget: %s\n", pblock->GetHash().GetHex(), hashTarget.GetHex()); - break; - }; - // TODO: factor this out into a function with the same API for each solver. - if ( solver == "tromp" ) - { - // Create solver and initialize it. - equi eq(1); - eq.setstate(&curr_state); - // Intialization done, start algo driver. - eq.digit0(0); - eq.xfull = eq.bfull = eq.hfull = 0; - eq.showbsizes(0); - for (u32 r = 1; r < WK; r++) - { - (r&1) ? eq.digitodd(r, 0) : eq.digiteven(r, 0); - eq.xfull = eq.bfull = eq.hfull = 0; - eq.showbsizes(r); - } - eq.digitK(0); - ehSolverRuns.increment(); - // Convert solution indices to byte array (decompress) and pass it to validBlock method. - for (size_t s = 0; s < eq.nsols; s++) - { - LogPrint("pow", "Checking solution %d\n", s+1); - std::vector index_vector(PROOFSIZE); - for (size_t i = 0; i < PROOFSIZE; i++) - index_vector[i] = eq.sols[s][i]; - std::vector sol_char = GetMinimalFromIndices(index_vector, DIGITBITS); - if ( validBlock(sol_char) ) - // If we find a POW solution, do not try other solutions - // because they become invalid as we created a new block in blockchain. - break; - } - } - } - } -} - extern uint8_t NOTARY_PUBKEY33[33]; uint32_t Mining_start; int32_t komodo_chosennotary(int32_t *notaryidp,int32_t height,uint8_t *pubkey33);