You might be a king or a little street zsweeper, but sooner or later you will dance with the reaper

This commit is contained in:
Duke Leto
2022-08-24 23:38:19 -04:00
parent afd3f93e2e
commit c6e5b07a59
22 changed files with 146 additions and 9 deletions

View File

@@ -785,6 +785,9 @@ private:
std::vector<CTransaction> pendingSaplingConsolidationTxs;
AsyncRPCOperationId saplingConsolidationOperationId;
std::vector<CTransaction> pendingSaplingSweepTxs;
AsyncRPCOperationId saplingSweepOperationId;
void AddToTransparentSpends(const COutPoint& outpoint, const uint256& wtxid);
void AddToSaplingSpends(const uint256& nullifier, const uint256& wtxid);
void AddToSpends(const uint256& wtxid);
@@ -797,7 +800,13 @@ public:
*/
int64_t nWitnessCacheSize;
bool needsRescan = false;
int nextConsolidation = 0;
bool fSaplingConsolidationEnabled = false;
bool fConsolidationRunning = false;
bool fSweepEnabled = false;
bool fSweepRunning = false;
int nextSweep = 0;
void ClearNoteWitnessCache();
@@ -1181,12 +1190,14 @@ public:
CAmount GetCredit(const CTransaction& tx, int32_t voutNum, const isminefilter& filter) const;
CAmount GetCredit(const CTransaction& tx, const isminefilter& filter) const;
CAmount GetChange(const CTransaction& tx) const;
void RunSaplingSweep(int blockHeight);
void ChainTip(
const CBlockIndex *pindex,
const CBlock *pblock,
boost::optional<std::pair<SproutMerkleTree, SaplingMerkleTree>> added);
void RunSaplingConsolidation(int blockHeight);
bool CommitConsolidationTx(const CTransaction& tx);
bool CommitAutomatedTx(const CTransaction& tx);
/** Saves witness caches and best block locator to disk. */
void SetBestChain(const CBlockLocator& loc);
std::set<std::pair<libzcash::PaymentAddress, uint256>> GetNullifiersForAddresses(const std::set<libzcash::PaymentAddress> & addresses);