From 165b98df3d2976248f67c08442fce2a346cec47f Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 15 Nov 2020 20:52:43 -0500 Subject: [PATCH 01/33] Show remaining blocks in BuildWitnessCache logging --- src/wallet/wallet.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 9de10fa00..0b07cf21c 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -21,7 +21,6 @@ #include "wallet/wallet.h" #include "asyncrpcqueue.h" - #include "checkpoints.h" #include "coincontrol.h" #include "consensus/upgrades.h" @@ -42,9 +41,7 @@ #include "wallet/asyncrpcoperation_saplingconsolidation.h" #include "zcash/zip32.h" #include "cc/CCinclude.h" - #include - #include #include #include @@ -1088,7 +1085,7 @@ void CWallet::BuildWitnessCache(const CBlockIndex* pindex, bool witnessOnly) while (pblockindex) { if (pblockindex->GetHeight() % 100 == 0 && pblockindex->GetHeight() < height - 5) { - LogPrintf("Building Witnesses for block %i %.4f complete\n", pblockindex->GetHeight(), pblockindex->GetHeight() / double(height)); + LogPrintf("Building Witnesses for block %i %.4f complete, %d remaining\n", pblockindex->GetHeight(), pblockindex->GetHeight() / double(height), height - pblockindex->GetHeight() ); } SaplingMerkleTree saplingTree; From c90323865a7b30f93c750a0747b23f6fe85933b1 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 5 Feb 2021 06:04:16 -0500 Subject: [PATCH 02/33] Shitty VPS limiting disk i/o should not crash a full node... --- src/main.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 286ef28b0..c37b704ba 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6740,16 +6740,12 @@ void static ProcessGetData(CNode* pfrom) } // Pruned nodes may have deleted the block, so check whether // it's available before trying to send. - if (send && (mi->second->nStatus & BLOCK_HAVE_DATA)) - { + if (send && (mi->second->nStatus & BLOCK_HAVE_DATA)) { // Send block from disk CBlock block; - if (!ReadBlockFromDisk(block, (*mi).second,1)) - { - assert(!"cannot load block from disk"); - } - else - { + if (!ReadBlockFromDisk(block, (*mi).second,1)) { + fprintf(stderr,"Cannot load block from disk, disk I/O may be limited by VPS or failing hard drive..."); + } else { if (inv.type == MSG_BLOCK) { //uint256 hash; int32_t z; From 3c03d271c2814400d4ccd857f9155cebc657d1d0 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Mon, 22 Feb 2021 04:20:49 -0500 Subject: [PATCH 03/33] Allowlisted peers are allowed to getheaders during IBD --- src/main.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 286ef28b0..0d581b828 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7344,10 +7344,15 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, LOCK(cs_main); - if (chainActive.LastTip() != 0 && chainActive.LastTip()->GetHeight() > 100000 && IsInitialBlockDownload()) - { - //fprintf(stderr,"dont process getheaders during initial download\n"); - return true; + + if (chainActive.LastTip() != 0 && chainActive.LastTip()->GetHeight() > 100000 && IsInitialBlockDownload()) { + if(pfrom->fAllowlisted) { + LogPrint("net", "Allowing getheaders from allowlisted peer=%d during initial block download\n", pfrom->id); + } else { + LogPrint("net", "Ignoring getheaders from peer=%d because node is in initial block download\n", pfrom->id); + //fprintf(stderr,"dont process getheaders during initial download\n"); + return true; + } } CBlockIndex* pindex = NULL; if (locator.IsNull()) From fd0d0e6c750cf8e9ddb82ff8e1c9d7e0a283d220 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Mon, 22 Feb 2021 04:44:57 -0500 Subject: [PATCH 04/33] Remove unused partition check code This code is unused and was disabled in BTC core and then deleted, since it didn't work correctly: https://github.com/bitcoin/bitcoin/pull/8275 --- src/main.cpp | 73 +++------------------------------------------------- src/main.h | 3 +-- 2 files changed, 5 insertions(+), 71 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 0d581b828..a3322b03b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -3043,77 +3043,12 @@ void ThreadScriptCheck() { scriptcheckqueue.Thread(); } -// -// Called periodically asynchronously; alerts if it smells like -// we're being fed a bad chain (blocks being generated much -// too slowly or too quickly). -// -void PartitionCheck(bool (*initialDownloadCheck)(), CCriticalSection& cs, const CBlockIndex *const &bestHeader, - int64_t nPowTargetSpacing) -{ - if (bestHeader == NULL || initialDownloadCheck()) return; - static int64_t lastAlertTime = 0; - int64_t now = GetTime(); - if (lastAlertTime > now-60*60*24) return; // Alert at most once per day - - const int SPAN_HOURS=4; - const int SPAN_SECONDS=SPAN_HOURS*60*60; - int BLOCKS_EXPECTED = SPAN_SECONDS / nPowTargetSpacing; - - boost::math::poisson_distribution poisson(BLOCKS_EXPECTED); - - std::string strWarning; - int64_t startTime = GetTime()-SPAN_SECONDS; - - LOCK(cs); - const CBlockIndex* i = bestHeader; - int nBlocks = 0; - while (i->GetBlockTime() >= startTime) { - ++nBlocks; - i = i->pprev; - if (i == NULL) return; // Ran out of chain, we must not be fully synced - } - - // How likely is it to find that many by chance? - double p = boost::math::pdf(poisson, nBlocks); - - LogPrint("partitioncheck", "%s : Found %d blocks in the last %d hours\n", __func__, nBlocks, SPAN_HOURS); - LogPrint("partitioncheck", "%s : likelihood: %g\n", __func__, p); - - // Aim for one false-positive about every fifty years of normal running: - const int FIFTY_YEARS = 50*365*24*60*60; - double alertThreshold = 1.0 / (FIFTY_YEARS / SPAN_SECONDS); - - if (bestHeader->GetHeight() > BLOCKS_EXPECTED) - { - if (p <= alertThreshold && nBlocks < BLOCKS_EXPECTED) - { - // Many fewer blocks than expected: alert! - strWarning = strprintf(_("WARNING: check your network connection, %d blocks received in the last %d hours (%d expected)"), - nBlocks, SPAN_HOURS, BLOCKS_EXPECTED); - } - else if (p <= alertThreshold && nBlocks > BLOCKS_EXPECTED) - { - // Many more blocks than expected: alert! - strWarning = strprintf(_("WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)"), - nBlocks, SPAN_HOURS, BLOCKS_EXPECTED); - } - } - if (!strWarning.empty()) - { - strMiscWarning = strWarning; - CAlert::Notify(strWarning, true); - lastAlertTime = now; - } -} - - -static int64_t nTimeVerify = 0; -static int64_t nTimeConnect = 0; -static int64_t nTimeIndex = 0; +static int64_t nTimeVerify = 0; +static int64_t nTimeConnect = 0; +static int64_t nTimeIndex = 0; static int64_t nTimeCallbacks = 0; -static int64_t nTimeTotal = 0; +static int64_t nTimeTotal = 0; bool FindBlockPos(int32_t tmpflag,CValidationState &state, CDiskBlockPos &pos, unsigned int nAddSize, unsigned int nHeight, uint64_t nTime, bool fKnown = false); bool ReceivedBlockTransactions(const CBlock &block, CValidationState& state, CBlockIndex *pindexNew, const CDiskBlockPos& pos); diff --git a/src/main.h b/src/main.h index 62070998d..a624fbd18 100644 --- a/src/main.h +++ b/src/main.h @@ -239,8 +239,7 @@ bool ProcessMessages(CNode* pfrom); bool SendMessages(CNode* pto, bool fSendTrickle); /** Run an instance of the script checking thread */ void ThreadScriptCheck(); -/** Try to detect Partition (network isolation) attacks against us */ -void PartitionCheck(bool (*initialDownloadCheck)(), CCriticalSection& cs, const CBlockIndex *const &bestHeader, int64_t nPowTargetSpacing); + /** Check whether we are doing an initial block download (synchronizing from disk or network) */ bool IsInitialBlockDownload(); /** Check if the daemon is in sync, if not, it returns 1 or if due to best header only, the difference in best From 8ed3ced34f6a817adf5a85b8afae77d9c952cf33 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Wed, 24 Feb 2021 12:02:43 -0800 Subject: [PATCH 05/33] Log block height in AddToWallet --- src/rpc/rawtransaction.cpp | 8 +++----- src/wallet/wallet.cpp | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/rpc/rawtransaction.cpp b/src/rpc/rawtransaction.cpp index 948ad2eae..1914aa8df 100644 --- a/src/rpc/rawtransaction.cpp +++ b/src/rpc/rawtransaction.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2015 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -1266,7 +1266,7 @@ UniValue sendrawtransaction(const UniValue& params, bool fHelp, const CPubKey& m if (fMissingInputs) { throw JSONRPCError(RPC_TRANSACTION_ERROR, "Missing inputs"); } - throw JSONRPCError(RPC_TRANSACTION_ERROR, state.GetRejectReason()); + throw JSONRPCError(RPC_TRANSACTION_ERROR, strprintf("Invalid state: %s", state.GetRejectReason())); } } } else if (fHaveChain) { @@ -1274,9 +1274,7 @@ UniValue sendrawtransaction(const UniValue& params, bool fHelp, const CPubKey& m } LogPrintf("%s: Relaying raw tx to mempool\n", __FUNCTION__); RelayTransaction(tx); - } - else - { + } else { NSPV_broadcast((char *)params[0].get_str().c_str()); } return hashTx.GetHex(); diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index d2ea2b3a2..962fe36b7 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -1473,7 +1473,7 @@ bool CWallet::AddToWallet(const CWalletTx& wtxIn, bool fFromLoadWallet, CWalletD } //// debug print - LogPrintf("AddToWallet %s %s%s\n", wtxIn.GetHash().ToString(), (fInsertedNew ? "new" : ""), (fUpdated ? "update" : "")); + LogPrintf("AddToWallet %s at height %d %s%s\n", wtxIn.GetHash().ToString(), hush_blockheight(wtxIn.hashBlock), (fInsertedNew ? "new" : ""), (fUpdated ? "update" : "")); // Write to disk if (fInsertedNew || fUpdated) From cadab16cdbeb98caae7190eb403c0c99f8ae795a Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 28 Feb 2021 09:40:59 -0500 Subject: [PATCH 06/33] Revert "Shitty VPS limiting disk i/o should not crash a full node..." This reverts commit c90323865a7b30f93c750a0747b23f6fe85933b1. Turns out this is a bad idea. --- src/main.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index c37b704ba..286ef28b0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6740,12 +6740,16 @@ void static ProcessGetData(CNode* pfrom) } // Pruned nodes may have deleted the block, so check whether // it's available before trying to send. - if (send && (mi->second->nStatus & BLOCK_HAVE_DATA)) { + if (send && (mi->second->nStatus & BLOCK_HAVE_DATA)) + { // Send block from disk CBlock block; - if (!ReadBlockFromDisk(block, (*mi).second,1)) { - fprintf(stderr,"Cannot load block from disk, disk I/O may be limited by VPS or failing hard drive..."); - } else { + if (!ReadBlockFromDisk(block, (*mi).second,1)) + { + assert(!"cannot load block from disk"); + } + else + { if (inv.type == MSG_BLOCK) { //uint256 hash; int32_t z; From ea2b68c1d32db51e3b7fb1d5429be33158950025 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 28 Feb 2021 23:28:49 -0500 Subject: [PATCH 07/33] Feeler connections ported from BTC core, eclipse attack mitigation --- src/main.cpp | 21 ++++---- src/net.cpp | 103 ++++++++++++++++++++++++++++--------- src/net.h | 14 ++--- src/test/netbase_tests.cpp | 31 ++++++++++- 4 files changed, 126 insertions(+), 43 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 286ef28b0..18b96aba5 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6862,10 +6862,16 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, return true; } - //fprintf(stderr,"netmsg: %s\n", strCommand.c_str()); + fprintf(stderr,"%s: netmsg: %s from %s\n", __func__, strCommand.c_str(), pfrom->addr.ToString().c_str() ); + + if (strCommand == "version") { + // Feeler connections exist only to verify if node is online + if (pfrom->fFeeler) { + assert(pfrom->fInbound == false); + pfrom->fDisconnect = true; + fprintf(stderr,"%s: disconnecting feelerconn from %s\n", __func__, pfrom->addr.ToString().c_str() ); + } - if (strCommand == "version") - { // Each connection can only send one version message if (pfrom->nVersion != 0) { @@ -6978,15 +6984,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } } - // Do Not Relay alerts - /* - { - LOCK(cs_mapAlerts); - BOOST_FOREACH(PAIRTYPE(const uint256, CAlert)& item, mapAlerts) - item.second.RelayTo(pfrom); - } - */ - pfrom->fSuccessfullyConnected = true; string remoteAddr; diff --git a/src/net.cpp b/src/net.cpp index 67a9f6cbb..e2e7e71a7 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -62,6 +62,9 @@ using namespace hush; #endif #endif +// We add a random period time (0 to 1 seconds) to feeler connections to prevent synchronization. +#define FEELER_SLEEP_WINDOW 1 + #define USE_TLS "encrypted as fuck" #if defined(USE_TLS) && !defined(TLS1_3_VERSION) @@ -75,6 +78,7 @@ using namespace std; namespace { //TODO: Make these CLI args const int MAX_OUTBOUND_CONNECTIONS = 64; + const int MAX_FEELER_CONNECTIONS = 1; const int MAX_INBOUND_FROMIP = 3; struct ListenSocket { @@ -1023,8 +1027,8 @@ static void AcceptConnection(const ListenSocket& hListenSocket) { socklen_t len = sizeof(sockaddr); SOCKET hSocket = accept(hListenSocket.socket, (struct sockaddr*)&sockaddr, &len); CAddress addr; - int nInbound = 0; - int nMaxInbound = nMaxConnections - MAX_OUTBOUND_CONNECTIONS; + int nInbound = 0; + int nMaxInbound = nMaxConnections - (MAX_OUTBOUND_CONNECTIONS + MAX_FEELER_CONNECTIONS); if (hSocket != INVALID_SOCKET) if (!addr.SetSockAddr((const struct sockaddr*)&sockaddr)) @@ -1412,6 +1416,11 @@ void static ProcessOneShot() } } +int64_t PoissonNextSend(int64_t now, int average_interval_seconds) +{ + return now + (int64_t)(log1p(GetRand(1ULL << 48) * -0.0000000000000035527136788 /* -1/2^48 */) * average_interval_seconds * -1000000.0 + 0.5); +} + void ThreadOpenConnections() { // Connect to specific addresses @@ -1436,8 +1445,11 @@ void ThreadOpenConnections() // Initiate network connections int64_t nStart = GetTime(); - while (true) - { + + // Minimum time before next feeler connection (in microseconds). + int64_t nNextFeeler = PoissonNextSend(nStart*1000*1000, FEELER_INTERVAL); + + while (true) { ProcessOneShot(); MilliSleep(500); @@ -1450,19 +1462,17 @@ void ThreadOpenConnections() if (GetTime() - nStart > 60) { static bool done = false; if (!done) { - // skip DNS seeds for staked chains. LogPrintf("Adding fixed seed nodes.\n"); addrman.Add(convertSeed6(Params().FixedSeeds()), CNetAddr("127.0.0.1")); done = true; } } - // Choose an address to connect to based on most recently seen CAddress addrConnect; - // Only connect out to one peer per network group (/16 for IPv4). - // Use -asmap for ASN bucketing + // Only connect out to one peer per network group. Originally /16 for IPv4, now ASNs via + // -asmap for ASN bucketing, which is enabled by default // Do this here so we don't have to critsect vNodes inside mapAddresses critsect. int nOutbound = 0; set > setConnected; @@ -1475,13 +1485,38 @@ void ThreadOpenConnections() } } } + assert(nOutbound <= (MAX_OUTBOUND_CONNECTIONS + MAX_FEELER_CONNECTIONS)); + + // "Feeler Connections" as per https://eprint.iacr.org/2015/263.pdf + // "Eclipse Attacks on Bitcoin’s Peer-to-Peer Network" by + // Ethan Heilman, Alison Kendler, Aviv Zohar, Sharon Goldberg. + // + // Design goals: + // * Increase the number of connectable addresses in the tried table. + // + // Method: + // * Choose a random address from new and attempt to connect to it if we can connect + // successfully it is added to tried. + // * Start attempting feeler connections only after node finishes making outbound + // connections. + // * Make feeler connections randomly with 120s average interval via PoissonNextSend. + // Originally from https://github.com/bitcoin/bitcoin/pull/8282 + // Modified for API changes by Duke Leto + bool fFeeler = false; + if (nOutbound >= MAX_OUTBOUND_CONNECTIONS) { + int64_t nTime = GetTimeMicros(); // The current time right now (in microseconds). + if (nTime > nNextFeeler) { + nNextFeeler = PoissonNextSend(nTime, FEELER_INTERVAL); + fFeeler = true; + } else { + continue; + } + } int64_t nANow = GetTime(); - - int nTries = 0; - while (true) - { - CAddrInfo addr = addrman.Select(); + int nTries = 0; + while (true) { + CAddrInfo addr = addrman.Select(fFeeler); // if we selected an invalid address, restart if (!addr.IsValid() || setConnected.count(addr.GetGroup(addrman.m_asmap)) || IsLocal(addr)) @@ -1501,6 +1536,13 @@ void ThreadOpenConnections() if (nANow - addr.nLastTry < 600 && nTries < 30) continue; + /* TODO: port this code + // only consider nodes missing relevant services after 40 failed attempts + if ((addr.nServices & nRelevantServices) != nRelevantServices && nTries < 40) + continue; + */ + + //TODO: why is this a good thing? // do not allow non-default ports, unless after 50 invalid addresses selected already if (addr.GetPort() != Params().GetDefaultPort() && nTries < 50) continue; @@ -1509,8 +1551,18 @@ void ThreadOpenConnections() break; } - if (addrConnect.IsValid()) - OpenNetworkConnection(addrConnect, &grant); + if (addrConnect.IsValid()) { + if (fFeeler) { + // Add small amount of random noise before connection to avoid synchronization + int randsleep = GetRandInt(FEELER_SLEEP_WINDOW * 1000); + MilliSleep(randsleep); + LogPrint("net", "Making feeler connection to %s\n", addrConnect.ToString().c_str()); + printf("%s: Making feeler connection to %s\n", __func__, addrConnect.ToString().c_str()); + } + + //int failures = setConnected.size() >= std::min(nMaxConnections - 1, 2); + OpenNetworkConnection(addrConnect,/*failures,*/ &grant, NULL, false, fFeeler); + } } } @@ -1591,7 +1643,7 @@ void ThreadOpenAddedConnections() } // if successful, this moves the passed grant to the constructed node -bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOutbound, const char *pszDest, bool fOneShot) +bool OpenNetworkConnection(const CAddress& addrConnect, /* bool fCountFailure, */ CSemaphoreGrant *grantOutbound, const char *pszDest, bool fOneShot, bool fFeeler) { // Initiate outbound network connection boost::this_thread::interruption_point(); @@ -1604,6 +1656,7 @@ bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOu return false; CNode* pnode = ConnectNode(addrConnect, pszDest); + //CNode* pnode = ConnectNode(addrConnect, pszDest, fCountFailure); boost::this_thread::interruption_point(); if (!pnode) @@ -1611,8 +1664,11 @@ bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOu if (grantOutbound) grantOutbound->MoveTo(pnode->grantOutbound); pnode->fNetworkNode = true; + if (fOneShot) pnode->fOneShot = true; + if (fFeeler) + pnode->fFeeler = true; return true; } @@ -1858,7 +1914,7 @@ void StartNode(boost::thread_group& threadGroup, CScheduler& scheduler) if (semOutbound == NULL) { // initialize semaphore - int nMaxOutbound = min(MAX_OUTBOUND_CONNECTIONS, nMaxConnections); + int nMaxOutbound = min((MAX_OUTBOUND_CONNECTIONS + MAX_FEELER_CONNECTIONS), nMaxConnections); semOutbound = new CSemaphore(nMaxOutbound); } @@ -1907,7 +1963,7 @@ bool StopNode() { LogPrintf("StopNode()\n"); if (semOutbound) - for (int i=0; ipost(); if (HUSH_NSPV_FULLNODE && fAddressesInitialized) @@ -2166,12 +2222,13 @@ CNode::CNode(SOCKET hSocketIn, const CAddress& addrIn, const std::string& addrNa nTimeOffset = 0; addr = addrIn; addrName = addrNameIn == "" ? addr.ToStringIPPort() : addrNameIn; - nVersion = 0; - strSubVer = ""; + nVersion = 0; + strSubVer = ""; fAllowlisted = false; - fOneShot = false; - fClient = false; // set by version message - fInbound = fInboundIn; + fOneShot = false; + fClient = false; // set by version message + fFeeler = false; + fInbound = fInboundIn; fNetworkNode = false; fSuccessfullyConnected = false; fDisconnect = false; diff --git a/src/net.h b/src/net.h index d4b042cde..825fe8ef3 100644 --- a/src/net.h +++ b/src/net.h @@ -82,10 +82,13 @@ static const size_t SETASKFOR_MAX_SZ = 2 * MAX_INV_SZ; static const unsigned int DEFAULT_MAX_PEER_CONNECTIONS = 384; /** The period before a network upgrade activates, where connections to upgrading peers are preferred (in blocks). */ static const int NETWORK_UPGRADE_PEER_PREFERENCE_BLOCK_PERIOD = 24 * 24 * 3; +/** Run the feeler connection loop once every 120 seconds. **/ +static const int FEELER_INTERVAL = 120; unsigned int ReceiveFloodSize(); unsigned int SendBufferSize(); +int64_t PoissonNextSend(int64_t now, int average_interval_seconds); void AddOneShot(const std::string& strDest); void AddressCurrentlyConnected(const CService& addr); CNode* FindNode(const CNetAddr& ip); @@ -93,7 +96,7 @@ CNode* FindNode(const CSubNet& subNet); CNode* FindNode(const std::string& addrName); CNode* FindNode(const CService& ip); CNode* ConnectNode(CAddress addrConnect, const char *pszDest = NULL); -bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOutbound = NULL, const char *strDest = NULL, bool fOneShot = false); +bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOutbound = NULL, const char *strDest = NULL, bool fOneShot = false, bool fFeeler = false); unsigned short GetListenPort(); bool BindListenPort(const CService &bindAddr, std::string& strError, bool fAllowlisted = false); void StartNode(boost::thread_group& threadGroup, CScheduler& scheduler); @@ -220,7 +223,8 @@ public: int nStartingHeight; uint64_t nSendBytes; uint64_t nRecvBytes; - bool fAllowlisted; + bool fAllowlisted; // If true this node bypasses DoS ban limits + bool fFeeler; // If true this node is being used as a short lived feeler. double dPingTime; double dPingWait; std::string addrLocal; @@ -228,7 +232,7 @@ public: CAddress addr; // Bind address of our side of the connection // CAddress addrBind; // https://github.com/bitcoin/bitcoin/commit/a7e3c2814c8e49197889a4679461be42254e5c51 - uint32_t m_mapped_as; + uint32_t m_mapped_as; // Mapped ASN for this address }; @@ -273,9 +277,6 @@ public: }; - - - /** Information about a peer */ class CNode { @@ -323,6 +324,7 @@ public: bool fOneShot; bool fClient; bool fInbound; + bool fFeeler; bool fNetworkNode; bool fSuccessfullyConnected; bool fDisconnect; diff --git a/src/test/netbase_tests.cpp b/src/test/netbase_tests.cpp index c9ce4550f..694e8a3a8 100644 --- a/src/test/netbase_tests.cpp +++ b/src/test/netbase_tests.cpp @@ -5,9 +5,7 @@ #include "netbase.h" #include "test/test_bitcoin.h" - #include - #include #include @@ -24,6 +22,35 @@ BOOST_AUTO_TEST_CASE(netbase_networks) BOOST_CHECK(CNetAddr("FD87:D87E:EB43:edb1:8e4:3588:e546:35ca").GetNetwork() == NET_ONION); } + +/* TODO: port this feeler test +BOOST_AUTO_TEST_CASE(cnode_simple_test) +{ + SOCKET hSocket = INVALID_SOCKET; + + in_addr ipv4Addr; + ipv4Addr.s_addr = 0xa0b0c001; + + CAddress addr = CAddress(CService(ipv4Addr, 7777), NODE_NETWORK); + std::string pszDest = ""; + bool fInboundIn = false; + + // Test that fFeeler is false by default. + CNode* pnode1 = new CNode(hSocket, addr, pszDest, fInboundIn); + + + BOOST_CHECK(pnode1->fInbound == false); + BOOST_CHECK(pnode1->fFeeler == false); + + fInboundIn = true; + CNode* pnode2 = new CNode(hSocket, addr, pszDest, fInboundIn); + BOOST_CHECK(pnode2->fInbound == true); + BOOST_CHECK(pnode2->fFeeler == false); +} + +*/ + + BOOST_AUTO_TEST_CASE(netbase_properties) { BOOST_CHECK(CNetAddr("127.0.0.1").IsIPv4()); From 4ca41a13571a363a22bf25ce139353c1bb976c17 Mon Sep 17 00:00:00 2001 From: jahway603 Date: Mon, 1 Mar 2021 03:07:03 -0500 Subject: [PATCH 08/33] added help2man check in gen-manpages.sh --- contrib/devtools/gen-manpages.sh | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/contrib/devtools/gen-manpages.sh b/contrib/devtools/gen-manpages.sh index 4acce0959..f4f569710 100755 --- a/contrib/devtools/gen-manpages.sh +++ b/contrib/devtools/gen-manpages.sh @@ -1,5 +1,5 @@ #!/bin/sh -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 TOPDIR=${TOPDIR:-$(git rev-parse --show-toplevel)} @@ -12,6 +12,15 @@ HUSHTX=${HUSHTX:-$SRCDIR/hush-tx} [ ! -x $HUSHD ] && echo "$HUSHD not found or not executable." && exit 1 +# Check if help2man is installed +# If not then display error to user and exit +if ! command -v help2man &> /dev/null +then + echo "help2man could not be found" + echo "Please install from your Linux package manager and try again" + exit +fi + # use this if hushd is not running #HUSHVER="v3.6.2" HUSHVER=$(./src/hushd --version|head -n1|cut -d' ' -f4|cut -d- -f1) From dd1453422ba94358ba8818c42b2c14803d852a26 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Mon, 1 Mar 2021 16:51:39 -0500 Subject: [PATCH 09/33] Add some p2p CLI options --- src/net.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/net.cpp b/src/net.cpp index e2e7e71a7..c03e2da05 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -76,10 +76,9 @@ using namespace hush; using namespace std; namespace { - //TODO: Make these CLI args - const int MAX_OUTBOUND_CONNECTIONS = 64; - const int MAX_FEELER_CONNECTIONS = 1; - const int MAX_INBOUND_FROMIP = 3; + int MAX_OUTBOUND_CONNECTIONS = GetArg("-maxoutboundconnections",64); + int MAX_FEELER_CONNECTIONS = GetArg("-maxfeelerconnections",1); + int MAX_INBOUND_FROMIP = GetArg("-maxinboundfromip",3); struct ListenSocket { SOCKET socket; From 8339b55df4a053245361af7ada2f913765206629 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Mon, 1 Mar 2021 17:30:46 -0500 Subject: [PATCH 10/33] Test-before-evict in addrman From BTC Core https://github.com/bitcoin/bitcoin/pull/9037/ with modifications to support our asmap. This has a small part of code commented out that depends feeler connection code. --- src/addrman.cpp | 98 ++++++++++++++++++++-- src/addrman.h | 57 ++++++++++--- src/net.cpp | 18 ++-- src/test/addrman_tests.cpp | 163 ++++++++++++++++++++++++++++++++++++- 4 files changed, 315 insertions(+), 21 deletions(-) diff --git a/src/addrman.cpp b/src/addrman.cpp index 1568deb9f..7016c1882 100644 --- a/src/addrman.cpp +++ b/src/addrman.cpp @@ -215,8 +215,7 @@ void CAddrMan::MakeTried(CAddrInfo& info, int nId) info.fInTried = true; } -void CAddrMan::Good_(const CService& addr, int64_t nTime) -{ +void CAddrMan::Good_(const CService& addr, bool test_before_evict, int64_t nTime) { int nId; CAddrInfo* pinfo = Find(addr, &nId); @@ -258,12 +257,101 @@ void CAddrMan::Good_(const CService& addr, int64_t nTime) if (nUBucket == -1) return; - LogPrint("addrman", "Moving %s to tried\n", addr.ToString()); + // which tried bucket to move the entry to + int tried_bucket = info.GetTriedBucket(nKey,m_asmap); + int tried_bucket_pos = info.GetBucketPosition(nKey, false, tried_bucket); - // move nId to the tried tables - MakeTried(info, nId); + // Will moving this address into tried evict another entry? + if (test_before_evict && (vvTried[tried_bucket][tried_bucket_pos] != -1)) { + LogPrint("addrman", "Collision inserting element into tried table, moving %s to m_tried_collisions=%d\n", addr.ToString(), m_tried_collisions.size()); + if (m_tried_collisions.size() < ADDRMAN_SET_TRIED_COLLISION_SIZE) { + m_tried_collisions.insert(nId); + } + } else { + LogPrint("addrman", "Moving %s to tried\n", addr.ToString()); + printf("%s: Moving %s to tried\n", __func__, addr.ToString().c_str() ); + + // move nId to the tried tables + MakeTried(info, nId); + } } +void CAddrMan::ResolveCollisions_() { + for (std::set::iterator it = m_tried_collisions.begin(); it != m_tried_collisions.end();) { + int id_new = *it; + bool erase_collision = false; + + // If id_new not found in mapInfo remove it from m_tried_collisions + if (mapInfo.count(id_new) != 1) { + erase_collision = true; + } else { + CAddrInfo& info_new = mapInfo[id_new]; + + // Which tried bucket to move the entry to. + int tried_bucket = info_new.GetTriedBucket(nKey,m_asmap); + int tried_bucket_pos = info_new.GetBucketPosition(nKey, false, tried_bucket); + if (!info_new.IsValid()) { // id_new may no longer map to a valid address + erase_collision = true; + } else if (vvTried[tried_bucket][tried_bucket_pos] != -1) { // The position in the tried bucket is not empty + + // Get the to-be-evicted address that is being tested + int id_old = vvTried[tried_bucket][tried_bucket_pos]; + CAddrInfo& info_old = mapInfo[id_old]; + + // Has successfully connected in last X hours + if (GetTime() - info_old.nLastSuccess < ADDRMAN_REPLACEMENT_HOURS*(60*60)) { + erase_collision = true; + } else if (GetTime() - info_old.nLastTry < ADDRMAN_REPLACEMENT_HOURS*(60*60)) { // attempted to connect and failed in last X hours + + // Give address at least 60 seconds to successfully connect + if (GetTime() - info_old.nLastTry > 60) { + LogPrint("addrman", "Swapping %s for %s in tried table\n", info_new.ToString(), info_old.ToString()); + + // Replaces an existing address already in the tried table with the new address + Good_(info_new, false, GetTime()); + erase_collision = true; + } + } + } else { // Collision is not actually a collision anymore + Good_(info_new, false, GetTime()); + erase_collision = true; + } + } + + if (erase_collision) { + m_tried_collisions.erase(it++); + } else { + it++; + } + } +} + +CAddrInfo CAddrMan::SelectTriedCollision_() { + if (m_tried_collisions.size() == 0) return CAddrInfo(); + + std::set::iterator it = m_tried_collisions.begin(); + + // Selects a random element from m_tried_collisions + std::advance(it, GetRandInt(m_tried_collisions.size())); + int id_new = *it; + + // If id_new not found in mapInfo remove it from m_tried_collisions + if (mapInfo.count(id_new) != 1) { + m_tried_collisions.erase(it); + return CAddrInfo(); + } + + CAddrInfo& newInfo = mapInfo[id_new]; + + // which tried bucket to move the entry to + int tried_bucket = newInfo.GetTriedBucket(nKey,m_asmap); + int tried_bucket_pos = newInfo.GetBucketPosition(nKey, false, tried_bucket); + int id_old = vvTried[tried_bucket][tried_bucket_pos]; + + return mapInfo[id_old]; +} + + bool CAddrMan::Add_(const CAddress& addr, const CNetAddr& source, int64_t nTimePenalty) { if (!addr.IsRoutable()) diff --git a/src/addrman.h b/src/addrman.h index eb2662536..68419ea61 100644 --- a/src/addrman.h +++ b/src/addrman.h @@ -1,8 +1,7 @@ // Copyright (c) 2012 Pieter Wuille -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html - /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * @@ -31,7 +30,6 @@ #include "clientversion.h" #include "hash.h" #include "netbase.h" - #include #include #include @@ -43,7 +41,6 @@ class CAddrInfo : public CAddress { - public: //! last try whatsoever by us (memory only) int64_t nLastTry; @@ -174,12 +171,18 @@ public: //! after how many failed attempts we give up on a new node #define ADDRMAN_RETRIES 3 +//! the maximum number of tried addr collisions to store +#define ADDRMAN_SET_TRIED_COLLISION_SIZE 10 + //! how many successive failures are allowed ... #define ADDRMAN_MAX_FAILURES 10 //! ... in at least this many days #define ADDRMAN_MIN_FAIL_DAYS 7 +//! how recent a successful connection should be before we allow an address to be evicted from tried +#define ADDRMAN_REPLACEMENT_HOURS 4 + //! the maximum percentage of nodes to return in a getaddr call #define ADDRMAN_GETADDR_MAX_PCT 23 @@ -220,6 +223,12 @@ private: //! list of "new" buckets int vvNew[ADDRMAN_NEW_BUCKET_COUNT][ADDRMAN_BUCKET_SIZE]; + //! last time Good was called (memory only) + int64_t nLastGood; + + //! Holds addrs inserted into tried table that collide with existing entries. Test-before-evict discpline used to resolve these collisions. + std::set m_tried_collisions; + protected: //! secret key to randomize bucket select with uint256 nKey; @@ -244,7 +253,14 @@ protected: void ClearNew(int nUBucket, int nUBucketPos); //! Mark an entry "good", possibly moving it from "new" to "tried". - void Good_(const CService &addr, int64_t nTime); + void Good_(const CService &addr, bool test_before_evict, int64_t time); + + + //! See if any to-be-evicted tried table entries have been tested and if so resolve the collisions. + void ResolveCollisions_(); + + //! Return a random to-be-evicted tried table address. + CAddrInfo SelectTriedCollision_(); //! Add an entry to the "new" table. bool Add_(const CAddress &addr, const CNetAddr& source, int64_t nTimePenalty); @@ -583,12 +599,12 @@ public: } //! Mark an entry as accessible. - void Good(const CService &addr, int64_t nTime = GetTime()) + void Good(const CService &addr, bool test_before_evict = true, int64_t nTime = GetTime()) { { LOCK(cs); Check(); - Good_(addr, nTime); + Good_(addr, test_before_evict, nTime); Check(); } } @@ -604,9 +620,30 @@ public: } } - /** - * Choose an address to connect to. - */ + //! See if any to-be-evicted tried table entries have been tested and if so resolve the collisions. + void ResolveCollisions() + { + LOCK(cs); + Check(); + ResolveCollisions_(); + Check(); + } + + //! Randomly select an address in tried that another address is attempting to evict. + CAddrInfo SelectTriedCollision() + { + CAddrInfo ret; + { + LOCK(cs); + Check(); + ret = SelectTriedCollision_(); + Check(); + } + return ret; + } + + + // Choose an address to connect to. CAddrInfo Select(bool newOnly = false) { CAddrInfo addrRet; diff --git a/src/net.cpp b/src/net.cpp index 67a9f6cbb..7fc9b59e0 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -1434,6 +1434,7 @@ void ThreadOpenConnections() } } + // Initiate network connections int64_t nStart = GetTime(); while (true) @@ -1476,12 +1477,19 @@ void ThreadOpenConnections() } } - int64_t nANow = GetTime(); + addrman.ResolveCollisions(); - int nTries = 0; - while (true) - { - CAddrInfo addr = addrman.Select(); + int64_t nANow = GetTime(); + int nTries = 0; + while (true) { + CAddrInfo addr = addrman.SelectTriedCollision(); + + // SelectTriedCollision returns an invalid address if it is empty. + /* TODO: Uncomment when merged with feeler connections + if (!fFeeler || !addr.IsValid()) { + addr = addrman.Select(fFeeler); + } + */ // if we selected an invalid address, restart if (!addr.IsValid() || setConnected.count(addr.GetGroup(addrman.m_asmap)) || IsLocal(addr)) diff --git a/src/test/addrman_tests.cpp b/src/test/addrman_tests.cpp index e50842afe..41e896627 100644 --- a/src/test/addrman_tests.cpp +++ b/src/test/addrman_tests.cpp @@ -6,7 +6,6 @@ #include "test/test_bitcoin.h" #include #include - #include "hash.h" #include "random.h" @@ -49,6 +48,17 @@ public: { CAddrMan::Delete(nId); } + + // Simulates connection failure so that we can test eviction of offline nodes + void SimConnFail(CService& addr) + { + int64_t nLastSuccess = 1; + Good_(addr, true, nLastSuccess); // Set last good connection in the deep past. + + bool count_failure = false; + int64_t nLastTry = GetAdjustedTime()-61; + Attempt(addr, count_failure, nLastTry); + } }; BOOST_FIXTURE_TEST_SUITE(addrman_tests, BasicTestingSetup) @@ -519,4 +529,155 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket) // than 64 buckets. BOOST_CHECK(buckets.size() > 64); } +BOOST_AUTO_TEST_CASE(addrman_selecttriedcollision) +{ + CAddrManTest addrman; + + // Set addrman addr placement to be deterministic. + addrman.MakeDeterministic(); + + BOOST_CHECK(addrman.size() == 0); + + // Empty addrman should return blank addrman info. + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + + // Add twenty two addresses. + CNetAddr source = ResolveIP("252.2.2.2"); + for (unsigned int i = 1; i < 23; i++) { + CService addr = ResolveService("250.1.1."+std::to_string(i)); + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + // No collisions yet. + BOOST_CHECK(addrman.size() == i); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + } + + // Ensure Good handles duplicates well. + for (unsigned int i = 1; i < 23; i++) { + CService addr = ResolveService("250.1.1."+std::to_string(i)); + addrman.Good(addr); + + BOOST_CHECK(addrman.size() == 22); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + } + +} + +BOOST_AUTO_TEST_CASE(addrman_noevict) +{ + CAddrManTest addrman; + + // Set addrman addr placement to be deterministic. + addrman.MakeDeterministic(); + + // Add twenty two addresses. + CNetAddr source = ResolveIP("252.2.2.2"); + for (unsigned int i = 1; i < 23; i++) { + CService addr = ResolveService("250.1.1."+std::to_string(i)); + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + // No collision yet. + BOOST_CHECK(addrman.size() == i); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + } + + // Collision between 23 and 19. + CService addr23 = ResolveService("250.1.1.23"); + addrman.Add(CAddress(addr23, NODE_NONE), source); + addrman.Good(addr23); + + BOOST_CHECK(addrman.size() == 23); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "250.1.1.19:0"); + + // 23 should be discarded and 19 not evicted. + addrman.ResolveCollisions(); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + + // Lets create two collisions. + for (unsigned int i = 24; i < 33; i++) { + CService addr = ResolveService("250.1.1."+std::to_string(i)); + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + BOOST_CHECK(addrman.size() == i); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + } + + // Cause a collision. + CService addr33 = ResolveService("250.1.1.33"); + addrman.Add(CAddress(addr33, NODE_NONE), source); + addrman.Good(addr33); + BOOST_CHECK(addrman.size() == 33); + + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "250.1.1.27:0"); + + // Cause a second collision. + addrman.Add(CAddress(addr23, NODE_NONE), source); + addrman.Good(addr23); + BOOST_CHECK(addrman.size() == 33); + + BOOST_CHECK(addrman.SelectTriedCollision().ToString() != "[::]:0"); + addrman.ResolveCollisions(); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); +} + +BOOST_AUTO_TEST_CASE(addrman_evictionworks) +{ + CAddrManTest addrman; + + // Set addrman addr placement to be deterministic. + addrman.MakeDeterministic(); + + BOOST_CHECK(addrman.size() == 0); + + // Empty addrman should return blank addrman info. + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + + // Add twenty two addresses. + CNetAddr source = ResolveIP("252.2.2.2"); + for (unsigned int i = 1; i < 23; i++) { + CService addr = ResolveService("250.1.1."+std::to_string(i)); + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + // No collision yet. + BOOST_CHECK(addrman.size() == i); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + } + + // Collision between 23 and 19. + CService addr = ResolveService("250.1.1.23"); + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + BOOST_CHECK(addrman.size() == 23); + CAddrInfo info = addrman.SelectTriedCollision(); + BOOST_CHECK(info.ToString() == "250.1.1.19:0"); + + // Ensure test of address fails, so that it is evicted. + addrman.SimConnFail(info); + + // Should swap 23 for 19. + addrman.ResolveCollisions(); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + + // If 23 was swapped for 19, then this should cause no collisions. + addrman.Add(CAddress(addr, NODE_NONE), source); + addrman.Good(addr); + + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); + + // If we insert 19 is should collide with 23. + CService addr19 = ResolveService("250.1.1.19"); + addrman.Add(CAddress(addr19, NODE_NONE), source); + addrman.Good(addr19); + + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "250.1.1.23:0"); + + addrman.ResolveCollisions(); + BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); +} + BOOST_AUTO_TEST_SUITE_END() From 7647ff3dead5129b039c025745b1c43f8f3dc76b Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Thu, 1 Apr 2021 11:04:04 -0400 Subject: [PATCH 11/33] Report work queue depth in errors and increase default rpcthreads to 8 --- src/httpserver.cpp | 12 +++++------- src/httpserver.h | 3 ++- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/httpserver.cpp b/src/httpserver.cpp index 45455825a..0e4e42c2b 100644 --- a/src/httpserver.cpp +++ b/src/httpserver.cpp @@ -1,9 +1,9 @@ // Copyright (c) 2015 The Bitcoin Core developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "httpserver.h" - #include "chainparamsbase.h" #include "compat.h" #include "util.h" @@ -12,15 +12,12 @@ #include "sync.h" #include "ui_interface.h" #include "utilstrencodings.h" - #include #include #include - #include #include #include - #include #include #include @@ -292,10 +289,11 @@ static void http_request_cb(struct evhttp_request* req, void* arg) if (i != iend) { std::unique_ptr item(new HTTPWorkItem(hreq.release(), path, i->handler)); assert(workQueue); - if (workQueue->Enqueue(item.get())) + if (workQueue->Enqueue(item.get())) { item.release(); /* if true, queue took ownership */ - else - item->req->WriteReply(HTTP_INTERNAL, "Work queue depth exceeded"); + } else { + item->req->WriteReply(HTTP_INTERNAL, strprintf("Work queue depth %d exceeded", workQueue->Depth() )); + } } else { hreq->WriteReply(HTTP_NOTFOUND); } diff --git a/src/httpserver.h b/src/httpserver.h index 41456ba6d..b903f91cd 100644 --- a/src/httpserver.h +++ b/src/httpserver.h @@ -1,4 +1,5 @@ // Copyright (c) 2015 The Bitcoin Core developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html @@ -14,7 +15,7 @@ #include #include -static const int DEFAULT_HTTP_THREADS=4; +static const int DEFAULT_HTTP_THREADS=8; static const int DEFAULT_HTTP_WORKQUEUE=16; static const int DEFAULT_HTTP_SERVER_TIMEOUT=30; From 0a72175d527f0e2c98e36f561429939457e0a99f Mon Sep 17 00:00:00 2001 From: PJ Your Heiness Date: Wed, 7 Apr 2021 22:04:09 +0000 Subject: [PATCH 12/33] Update 'CONTRIBUTING.md' --- CONTRIBUTING.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b5f687086..3a2b1e08a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,6 +22,8 @@ There are many ways you can directly contribute to Hush: * Extend our software * Perform a secure code review of Hush Full Node and other Hush-related software +We have a curated list of projects with details about difficulty level and languages involved: https://git.hush.is/hush/projects + Interested in making a contribution? Read on! ## Ground rules & expectations From 315ed51192994a4e32032c5f6c0c23b99a2b6103 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 9 Apr 2021 14:49:24 -0400 Subject: [PATCH 13/33] p2p privacy --- src/net.cpp | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/src/net.cpp b/src/net.cpp index 7fc9b59e0..1d2e14110 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -31,6 +31,7 @@ #include "ui_interface.h" #include "crypto/common.h" #include "hush/utiltls.h" +#include #ifdef _WIN32 #include #else @@ -1981,16 +1982,30 @@ void RelayTransaction(const CTransaction& tx, const CDataStream& ss) vRelayExpiration.push_back(std::make_pair(GetTime() + 15 * 60, inv)); } LOCK(cs_vNodes); - BOOST_FOREACH(CNode* pnode, vNodes) + + auto vRelayNodes = vNodes; + + // We always round down, except when we have only 1 connection + auto newSize = (vNodes.size() / 2) == 0 ? 1 : (vNodes.size() / 2); + + random_shuffle( vRelayNodes.begin(), vRelayNodes.end(), GetRandInt ); + + vRelayNodes.resize(newSize); + fprintf(stderr, "%s: Relaying to %lu peers\n", __func__, newSize); + + // Only relay to randomly chosen 50% of peers + BOOST_FOREACH(CNode* pnode, vRelayNodes) { if(!pnode->fRelayTxes) continue; LOCK(pnode->cs_filter); - if (pnode->pfilter) - { - if (pnode->pfilter->IsRelevantAndUpdate(tx)) + if (pnode->pfilter) { + if (pnode->pfilter->IsRelevantAndUpdate(tx)) { pnode->PushInventory(inv); - } else pnode->PushInventory(inv); + } + } else { + pnode->PushInventory(inv); + } } } @@ -2053,10 +2068,7 @@ void CNode::Fuzz(int nChance) Fuzz(2); } -// // CAddrDB -// - CAddrDB::CAddrDB() { pathAddr = GetDataDir() / "peers.dat"; From 4d252334bfe37e5f7f03dd5830a5bf76b047f9ed Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 9 Apr 2021 14:53:26 -0400 Subject: [PATCH 14/33] . --- src/net.h | 4 ---- src/test/sighash_tests.cpp | 4 +--- src/wallet/wallet.cpp | 4 +--- 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/net.h b/src/net.h index d4b042cde..f5f946b7d 100644 --- a/src/net.h +++ b/src/net.h @@ -272,10 +272,6 @@ public: int readData(const char *pch, unsigned int nBytes); }; - - - - /** Information about a peer */ class CNode { diff --git a/src/test/sighash_tests.cpp b/src/test/sighash_tests.cpp index 578c0cc21..dd5159259 100644 --- a/src/test/sighash_tests.cpp +++ b/src/test/sighash_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html @@ -15,10 +15,8 @@ #include "util.h" #include "version.h" #include "sodium.h" - #include #include - #include #include diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 7f49b9a3b..92779a402 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -3910,9 +3910,7 @@ bool CWallet::CreateTransaction(const vector& vecSend, CWalletTx& wt return true; } -/** - * Call after CreateTransaction unless you want to abort - */ +// Call after CreateTransaction unless you want to abort bool CWallet::CommitTransaction(CWalletTx& wtxNew, CReserveKey& reservekey) { { From 34c5278340d4d2b86f946c47f68568272b1ac6d5 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sat, 10 Apr 2021 00:10:37 -0400 Subject: [PATCH 15/33] No more JSDescription's --- src/wallet/rpcwallet.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 9690e1993..2e898e894 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -4533,8 +4533,6 @@ UniValue z_getoperationstatus_IMPL(const UniValue& params, bool fRemoveFinishedO } -// JSDescription size depends on the transaction version - // transaction.h comment: spending taddr output requires CTxIn >= 148 bytes and typical taddr txout is 34 bytes #define CTXIN_SPEND_DUST_SIZE 148 #define CTXOUT_REGULAR_SIZE 34 From 4f57858881fb059449ca9d53149dc354d73f8407 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 11 Apr 2021 23:37:21 -0400 Subject: [PATCH 16/33] Show z2z example in z_sendmany RPC docs --- src/wallet/rpcwallet.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 2e898e894..368fe6ed5 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -4565,6 +4565,8 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) "\nExamples:\n" + HelpExampleCli("z_sendmany", "\"RD6GgnrMpPaTSMn8vai6yiGA7mN4QGPV\" '[{\"address\": \"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\" ,\"amount\": 5.0}]'") + HelpExampleRpc("z_sendmany", "\"RD6GgnrMpPaTSMn8vai6yiGA7mN4QGPV\", [{\"address\": \"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\" ,\"amount\": 5.0}]") + + HelpExampleCli("z_sendmany", "\"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\" '[{\"address\": \"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\" ,\"amount\": 3.14}]'") + + HelpExampleRpc("z_sendmany", "\"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\", [{\"address\": \"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\" ,\"amount\": 3.14}]") ); LOCK2(cs_main, pwalletMain->cs_wallet); @@ -4802,7 +4804,7 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) if(fZdebug) LogPrintf("%s: Building the raw ztransaction\n", __FUNCTION__); - // Builder (used if Sapling addresses are involved) + // Sapling Tx Builder boost::optional builder; builder = TransactionBuilder(Params().GetConsensus(), nextBlockHeight, pwalletMain); From 52e14828c8366d28a47d16acff42f64e988669fe Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Tue, 13 Apr 2021 18:13:36 -0400 Subject: [PATCH 17/33] Basic z_getbalances working, but slow --- src/rpc/client.cpp | 2 + src/wallet/rpcwallet.cpp | 99 ++++++++++++++++++++++++++++++++++------ 2 files changed, 87 insertions(+), 14 deletions(-) diff --git a/src/rpc/client.cpp b/src/rpc/client.cpp index 0cc93d2d2..439c0ba51 100644 --- a/src/rpc/client.cpp +++ b/src/rpc/client.cpp @@ -138,6 +138,8 @@ static const CRPCConvertParam vRPCConvertParams[] = { "z_listunspent", 1 }, { "z_listunspent", 2 }, { "z_listunspent", 3 }, + { "z_getbalances", 0}, + { "z_getbalances", 1}, { "z_getbalance", 1}, { "z_getnotescount", 0}, { "z_gettotalbalance", 0}, diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 368fe6ed5..7a1d23eb0 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -170,6 +170,17 @@ char *hush_chainname() return(SMART_CHAIN_SYMBOL); } +CAmount getBalanceZaddr(std::string address, int minDepth = 1, bool ignoreUnspendable=true) { + CAmount balance = 0; + std::vector saplingEntries; + LOCK2(cs_main, pwalletMain->cs_wallet); + pwalletMain->GetFilteredNotes(saplingEntries, address, minDepth, true, ignoreUnspendable); + for (auto & entry : saplingEntries) { + balance += CAmount(entry.note.value()); + } + return balance; +} + void OS_randombytes(unsigned char *x,long xlen); UniValue getnewaddress(const UniValue& params, bool fHelp, const CPubKey& mypk) @@ -3620,6 +3631,64 @@ UniValue z_listsentbyaddress(const UniValue& params, bool fHelp,const CPubKey&) return ret; } +UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) +{ + if (!EnsureWalletIsAvailable(fHelp)) + return NullUniValue; + + if (fHelp || params.size() > 1) + throw runtime_error( + "z_getbalances ( minbal )\n" + "\nReturns array of addresses with their unspent shielded balances.\n" + "Optionally filter to only include addresses with at least minbal HUSH.\n" + "Results are an array of Objects, each of which has:\n" + "{address, balance}\n" + "\nArguments:\n" + "1. minbal (numeric, optional, default=0) The minimum balance addresses must contain\n" + "\nResult\n" + "[ (array of json object)\n" + " {\n" + " \"address\" : \"zs14d8tc0hl9q0vg5l28uec5vk6sk34fkj2n8s7jalvw5fxpy6v39yn4s2ga082lymrkjk0x2nqg37\", (string) the address \n" + " \"balance\" : 69.420 (numeric) the balance\n" + " }\n" + " ,...\n" + "]\n" + + "\nExamples\n" + + HelpExampleCli("z_getbalances", "") + + HelpExampleCli("z_getbalances", "0.1") + + HelpExampleRpc("z_getbalances", "555") + ); + + RPCTypeCheck(params, boost::assign::list_of(UniValue::VNUM)); + + LOCK2(cs_main, pwalletMain->cs_wallet); + + std::set zaddrs = {}; + std::set saplingzaddrs = {}; + pwalletMain->GetSaplingPaymentAddresses(saplingzaddrs); + + zaddrs.insert(saplingzaddrs.begin(), saplingzaddrs.end()); + + UniValue results(UniValue::VARR); + + //for(auto &entry : zaddrs) { + for(auto &entry : saplingzaddrs) { + UniValue obj(UniValue::VOBJ); + CAmount nBalance = 0; + int nMinDepth = 1; + //auto zaddr = DecodePaymentAddress(entry); + auto zaddr = EncodePaymentAddress(entry); + nBalance = getBalanceZaddr(zaddr, nMinDepth, false); + obj.push_back(Pair("address", zaddr)); + obj.push_back(Pair("balance", nBalance)); + results.push_back(obj); + } + + return results; +} + + UniValue z_listunspent(const UniValue& params, bool fHelp, const CPubKey& mypk) { if (!EnsureWalletIsAvailable(fHelp)) @@ -3646,7 +3715,6 @@ UniValue z_listunspent(const UniValue& params, bool fHelp, const CPubKey& mypk) "[ (array of json object)\n" " {\n" " \"txid\" : \"txid\", (string) the transaction id \n" - " \"jsindex\" : n (numeric) the joinsplit index\n" " \"outindex\" (sapling) : n (numeric) the output index\n" " \"confirmations\" : n (numeric) the number of confirmations\n" " \"spendable\" : true|false (boolean) true if note can be spent by wallet, false if note has zero confirmations, false if address is watchonly\n" @@ -3721,8 +3789,7 @@ UniValue z_listunspent(const UniValue& params, bool fHelp, const CPubKey& mypk) } setAddress.insert(address); } - } - else { + } else { // User did not provide zaddrs, so use default i.e. all addresses std::set saplingzaddrs = {}; pwalletMain->GetSaplingPaymentAddresses(saplingzaddrs); @@ -3996,17 +4063,6 @@ CAmount getBalanceTaddr(std::string transparentAddress, int minDepth=1, bool ign return balance; } -CAmount getBalanceZaddr(std::string address, int minDepth = 1, bool ignoreUnspendable=true) { - CAmount balance = 0; - std::vector saplingEntries; - LOCK2(cs_main, pwalletMain->cs_wallet); - pwalletMain->GetFilteredNotes(saplingEntries, address, minDepth, true, ignoreUnspendable); - for (auto & entry : saplingEntries) { - balance += CAmount(entry.note.value()); - } - return balance; -} - UniValue z_listreceivedbyaddress(const UniValue& params, bool fHelp, const CPubKey& mypk) { @@ -4582,6 +4638,20 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) uint32_t branchId = CurrentEpochBranchId(chainActive.Height(), Params().GetConsensus()); CTxDestination taddr = DecodeDestination(fromaddress); + // TODO: implement special symbolic fromaddrs + // TODO: list of (zaddr,amount) + // "z" => spend from any zaddr + // "t" => spend from any taddr + // "*" => spend from any addr, zaddrs first + if(fromaddress == "z") { + std::vector saplingEntries; + //pwalletMain->GetFilteredNotes(saplingEntries, zaddrs, nMinDepth, nMaxDepth, true, !fIncludeWatchonly, false); + for (auto & entry : saplingEntries) { + // EncodePaymentAddress(entry.address); + } + } else { + } + fromTaddr = IsValidDestination(taddr); if (!fromTaddr) { auto res = DecodePaymentAddress(fromaddress); @@ -8165,6 +8235,7 @@ static const CRPCCommand commands[] = { "wallet", "z_listreceivedbyaddress", &z_listreceivedbyaddress, false }, { "wallet", "z_listunspent", &z_listunspent, false }, { "wallet", "z_getbalance", &z_getbalance, false }, + { "wallet", "z_getbalances", &z_getbalances, false }, { "wallet", "z_gettotalbalance", &z_gettotalbalance, false }, { "wallet", "z_mergetoaddress", &z_mergetoaddress, false }, { "wallet", "z_sendmany", &z_sendmany, false }, From 1063b9090a739c6eca21f752fc3e1ff421a11014 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Tue, 13 Apr 2021 20:26:54 -0400 Subject: [PATCH 18/33] Clean up some sprout turdz --- src/wallet/wallet.h | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h index 0e03c4d6e..3c0d02e82 100644 --- a/src/wallet/wallet.h +++ b/src/wallet/wallet.h @@ -946,7 +946,7 @@ public: * * - GetFilteredNotes can't filter out spent notes. * - * - Per the comment in SproutNoteData, we assume that if we don't have a + * - Per the comment in SaplingNoteData, we assume that if we don't have a * cached nullifier, the note is not spent. * * Another more problematic implication is that the wallet can fail to @@ -964,7 +964,7 @@ public: * linked to us by the fact that they contain notes we spent. If it also * sends notes to us, or interacts with our transparent addresses, we will * detect the transaction and add it to the wallet (again without caching - * nullifiers for new notes). As by default JoinSplits send change back to + * nullifiers for new notes). Because SaplingSpends send change back to * the origin PaymentAddress, the wallet should rarely miss transactions. * * To work around these issues, whenever the wallet is unlocked, we scan all @@ -979,10 +979,7 @@ public: * - Restarting the node with -reindex (which operates on a locked wallet * but with the now-cached nullifiers). */ - std::map mapSproutNullifiersToNotes; - std::map mapSaplingNullifiersToNotes; - std::map mapWallet; int64_t nOrderPosNext; @@ -1196,7 +1193,6 @@ public: /** Saves witness caches and best block locator to disk. */ void SetBestChain(const CBlockLocator& loc); std::set> GetNullifiersForAddresses(const std::set & addresses); - bool IsNoteSproutChange(const std::set> & nullifierSet, const libzcash::PaymentAddress & address, const JSOutPoint & entry); bool IsNoteSaplingChange(const std::set> & nullifierSet, const libzcash::PaymentAddress & address, const SaplingOutPoint & entry); DBErrors LoadWallet(bool& fFirstRunRet); From ab934fd0947669ce8cfd90a1116b57bcaba4ae5c Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Tue, 13 Apr 2021 23:18:40 -0400 Subject: [PATCH 19/33] Much fast z_getbalances, such wow --- src/wallet/rpcwallet.cpp | 46 ++++++++++++++++++++++++++++------------ 1 file changed, 33 insertions(+), 13 deletions(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 7a1d23eb0..798c5399e 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -3636,9 +3636,9 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) if (!EnsureWalletIsAvailable(fHelp)) return NullUniValue; - if (fHelp || params.size() > 1) + if (fHelp || params.size() > 0) throw runtime_error( - "z_getbalances ( minbal )\n" + "z_getbalances\n" "\nReturns array of addresses with their unspent shielded balances.\n" "Optionally filter to only include addresses with at least minbal HUSH.\n" "Results are an array of Objects, each of which has:\n" @@ -3656,8 +3656,7 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) "\nExamples\n" + HelpExampleCli("z_getbalances", "") - + HelpExampleCli("z_getbalances", "0.1") - + HelpExampleRpc("z_getbalances", "555") + + HelpExampleRpc("z_getbalances", "") ); RPCTypeCheck(params, boost::assign::list_of(UniValue::VNUM)); @@ -3672,16 +3671,37 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) UniValue results(UniValue::VARR); - //for(auto &entry : zaddrs) { - for(auto &entry : saplingzaddrs) { + int nMinDepth = 1; + int nMaxDepth = 9999999; + std::vector saplingEntries; + pwalletMain->GetFilteredNotes(saplingEntries, zaddrs, nMinDepth); + + std::map mapBalances; + + for (auto & entry : saplingEntries) { + auto zaddr = EncodePaymentAddress(entry.address); + CAmount nBalance = CAmount(entry.note.value()); + if(mapBalances.count(zaddr)) { + mapBalances[zaddr] += nBalance; + } else { + mapBalances[zaddr] = nBalance; + } + } + std::vector> vec; + std::copy(mapBalances.begin(), mapBalances.end(), std::back_inserter>>(vec)); + + std::sort(vec.begin(), vec.end(), [](const std::pair &l, const std::pair &r) + { + if (l.second != r.second) { + return l.second > r.second; + } + return l.first > r.first; + }); + + for (auto & entry : vec) { UniValue obj(UniValue::VOBJ); - CAmount nBalance = 0; - int nMinDepth = 1; - //auto zaddr = DecodePaymentAddress(entry); - auto zaddr = EncodePaymentAddress(entry); - nBalance = getBalanceZaddr(zaddr, nMinDepth, false); - obj.push_back(Pair("address", zaddr)); - obj.push_back(Pair("balance", nBalance)); + obj.push_back(Pair("address", entry.first)); + obj.push_back(Pair("balance", (double) entry.second / (uint64_t) 100000000L )); results.push_back(obj); } From 07931668cfddfc1cdbd6882e00f4527e62388a49 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Wed, 14 Apr 2021 20:15:11 -0400 Subject: [PATCH 20/33] Optionally filter balances by min value in z_getbalances --- src/rpc/client.cpp | 5 ----- src/wallet/rpcwallet.cpp | 23 +++++++++++++++-------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/rpc/client.cpp b/src/rpc/client.cpp index 439c0ba51..c824b75c8 100644 --- a/src/rpc/client.cpp +++ b/src/rpc/client.cpp @@ -3,7 +3,6 @@ // Copyright (c) 2016-2020 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html - /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * @@ -22,10 +21,8 @@ #include "rpc/client.h" #include "rpc/protocol.h" #include "util.h" - #include #include - #include using namespace std; @@ -138,8 +135,6 @@ static const CRPCConvertParam vRPCConvertParams[] = { "z_listunspent", 1 }, { "z_listunspent", 2 }, { "z_listunspent", 3 }, - { "z_getbalances", 0}, - { "z_getbalances", 1}, { "z_getbalance", 1}, { "z_getnotescount", 0}, { "z_gettotalbalance", 0}, diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 798c5399e..8297e5dff 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -3636,7 +3636,7 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) if (!EnsureWalletIsAvailable(fHelp)) return NullUniValue; - if (fHelp || params.size() > 0) + if (fHelp || params.size() > 1) throw runtime_error( "z_getbalances\n" "\nReturns array of addresses with their unspent shielded balances.\n" @@ -3656,28 +3656,31 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) "\nExamples\n" + HelpExampleCli("z_getbalances", "") + + HelpExampleCli("z_getbalances", "0.01") + HelpExampleRpc("z_getbalances", "") + + HelpExampleRpc("z_getbalances", "0.42069") ); - RPCTypeCheck(params, boost::assign::list_of(UniValue::VNUM)); + //RPCTypeCheck(params, boost::assign::list_of(UniValue::VNUM)); LOCK2(cs_main, pwalletMain->cs_wallet); + // ignore amount=0 zaddrs by default + CAmount nMinBal = 1; // puposhis + if (params.size() > 0) + nMinBal = AmountFromValue(params[0]); + std::set zaddrs = {}; std::set saplingzaddrs = {}; pwalletMain->GetSaplingPaymentAddresses(saplingzaddrs); zaddrs.insert(saplingzaddrs.begin(), saplingzaddrs.end()); - UniValue results(UniValue::VARR); - int nMinDepth = 1; - int nMaxDepth = 9999999; std::vector saplingEntries; pwalletMain->GetFilteredNotes(saplingEntries, zaddrs, nMinDepth); std::map mapBalances; - for (auto & entry : saplingEntries) { auto zaddr = EncodePaymentAddress(entry.address); CAmount nBalance = CAmount(entry.note.value()); @@ -3698,11 +3701,15 @@ UniValue z_getbalances(const UniValue& params, bool fHelp, const CPubKey& mypk) return l.first > r.first; }); + UniValue results(UniValue::VARR); for (auto & entry : vec) { UniValue obj(UniValue::VOBJ); obj.push_back(Pair("address", entry.first)); - obj.push_back(Pair("balance", (double) entry.second / (uint64_t) 100000000L )); - results.push_back(obj); + auto balance = (double) entry.second / (uint64_t) 100000000L; + obj.push_back(Pair("balance", balance)); + if(entry.second >= nMinBal) { + results.push_back(obj); + } } return results; From 5686f0c691127a497a55e16960bbc0e125797447 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Wed, 14 Apr 2021 21:00:28 -0400 Subject: [PATCH 21/33] Clean up sprout turdz --- qa/rpc-tests/zkey_import_export.py | 6 +----- src/coins.cpp | 8 +++++--- src/main.cpp | 16 +++++++--------- src/script/interpreter.cpp | 6 +----- src/wallet/rpcwallet.cpp | 17 +++-------------- 5 files changed, 17 insertions(+), 36 deletions(-) diff --git a/qa/rpc-tests/zkey_import_export.py b/qa/rpc-tests/zkey_import_export.py index 643497d58..cab6084fa 100755 --- a/qa/rpc-tests/zkey_import_export.py +++ b/qa/rpc-tests/zkey_import_export.py @@ -58,11 +58,7 @@ class ZkeyImportExportTest (BitcoinTestFramework): try: assert_equal(amts, [tx["amount"] for tx in txs]) for tx in txs: - # make sure JoinSplit keys exist and have valid values - assert_equal("jsindex" in tx, True) - assert_equal("jsoutindex" in tx, True) - assert_greater_than(tx["jsindex"], -1) - assert_greater_than(tx["jsoutindex"], -1) + # TODO: make sure spend keys exist and have valid values except AssertionError: logging.error( 'Expected amounts: %r; txs: %r', diff --git a/src/coins.cpp b/src/coins.cpp index 30f3b5e41..1c303a398 100644 --- a/src/coins.cpp +++ b/src/coins.cpp @@ -191,7 +191,7 @@ void CCoinsViewCache::AbstractPushAnchor( // We don't want to overwrite an anchor we already have. // This occurs when a block doesn't modify mapAnchors at all, - // because there are no joinsplits. We could get around this a + // because there are no ShieldedSpends. We could get around this a // different way (make all blocks modify mapAnchors somehow) // but this is simpler to reason about. if (currentRoot != newrt) { @@ -212,6 +212,7 @@ void CCoinsViewCache::AbstractPushAnchor( } //TODO: delete +/* template<> void CCoinsViewCache::PushAnchor(const SproutMerkleTree &tree) { AbstractPushAnchor( @@ -221,6 +222,7 @@ template<> void CCoinsViewCache::PushAnchor(const SproutMerkleTree &tree) hashSproutAnchor ); } +*/ template<> void CCoinsViewCache::PushAnchor(const SaplingMerkleTree &tree) { @@ -614,9 +616,9 @@ double CCoinsViewCache::GetPriority(const CTransaction &tx, int nHeight) const // Shielded transfers do not reveal any information about the value or age of a note, so we // cannot apply the priority algorithm used for transparent utxos. Instead, we just // use the maximum priority for all (partially or fully) shielded transactions. - // (Note that coinbase transactions cannot contain JoinSplits, or Sapling shielded Spends or Outputs.) + // (Note that coinbase transactions cannot contain Sapling shielded Spends or Outputs.) - if (tx.vjoinsplit.size() > 0 || tx.vShieldedSpend.size() > 0 || tx.vShieldedOutput.size() > 0 || tx.IsCoinImport() || tx.IsPegsImport()) { + if (tx.vShieldedSpend.size() > 0 || tx.vShieldedOutput.size() > 0 || tx.IsCoinImport() || tx.IsPegsImport()) { return MAX_PRIORITY; } diff --git a/src/main.cpp b/src/main.cpp index ef4605ba4..d38b44377 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1405,8 +1405,7 @@ bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransactio if (!tx.fOverwintered && tx.nVersion < SPROUT_MIN_TX_VERSION) { return state.DoS(100, error("CheckTransaction(): version too low"), REJECT_INVALID, "bad-txns-version-too-low"); - } - else if (tx.fOverwintered) { + } else if (tx.fOverwintered) { if (tx.nVersion < OVERWINTER_MIN_TX_VERSION) { return state.DoS(100, error("CheckTransaction(): overwinter version too low"), REJECT_INVALID, "bad-tx-overwinter-version-too-low"); @@ -1422,16 +1421,13 @@ bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransactio } } - //TODO: desprout - // Transactions containing empty `vin` must have either non-empty - // `vjoinsplit` or non-empty `vShieldedSpend`. - if (tx.vin.empty() && tx.vjoinsplit.empty() && tx.vShieldedSpend.empty()) + // Transactions containing empty `vin` must have non-empty `vShieldedSpend`. + if (tx.vin.empty() && tx.vShieldedSpend.empty()) return state.DoS(10, error("CheckTransaction(): vin empty"), REJECT_INVALID, "bad-txns-vin-empty"); - // Transactions containing empty `vout` must have either non-empty - // `vjoinsplit` or non-empty `vShieldedOutput`. - if (tx.vout.empty() && tx.vjoinsplit.empty() && tx.vShieldedOutput.empty()) + // Transactions containing empty `vout` must have non-empty `vShieldedOutput`. + if (tx.vout.empty() && tx.vShieldedOutput.empty()) return state.DoS(10, error("CheckTransaction(): vout empty"), REJECT_INVALID, "bad-txns-vout-empty"); @@ -4434,10 +4430,12 @@ bool ReceivedBlockTransactions(const CBlock &block, CValidationState& state, CBl // pool. So we invert the sign here. saplingValue += -tx.valueBalance; + /* for (auto js : tx.vjoinsplit) { sproutValue += js.vpub_old; sproutValue -= js.vpub_new; } + */ // Ignore following stats unless -zindex enabled if (!fZindex) diff --git a/src/script/interpreter.cpp b/src/script/interpreter.cpp index d33e3703e..fc8b8f6f9 100644 --- a/src/script/interpreter.cpp +++ b/src/script/interpreter.cpp @@ -1,8 +1,8 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html - /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * @@ -19,9 +19,7 @@ ******************************************************************************/ #include - #include "interpreter.h" - #include "consensus/upgrades.h" #include "primitives/transaction.h" #include "cc/eval.h" @@ -32,8 +30,6 @@ #include "script/script.h" #include "uint256.h" - - using namespace std; typedef vector valtype; diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 8297e5dff..8ac7f6521 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -2234,7 +2234,7 @@ UniValue gettransaction(const UniValue& params, bool fHelp, const CPubKey& mypk) if (fHelp || params.size() < 1 || params.size() > 2) throw runtime_error( "gettransaction \"txid\" ( includeWatchonly )\n" - "\nGet detailed information about in-wallet transaction \n" + "\nGet detailed information about in-wallet transaction . Also see z_viewtransaction for ztx details\n" "\nArguments:\n" "1. \"txid\" (string, required) The transaction id\n" "2. \"includeWatchonly\" (bool, optional, default=false) Whether to include watchonly addresses in balance calculation and details[]\n" @@ -2258,17 +2258,6 @@ UniValue gettransaction(const UniValue& params, bool fHelp, const CPubKey& mypk) " }\n" " ,...\n" " ],\n" - " \"vjoinsplit\" : [\n" - " {\n" - " \"anchor\" : \"treestateref\", (string) Merkle root of note commitment tree\n" - " \"nullifiers\" : [ string, ... ] (string) Nullifiers of input notes\n" - " \"commitments\" : [ string, ... ] (string) Note commitments for note outputs\n" - " \"macs\" : [ string, ... ] (string) Message authentication tags\n" - " \"vpub_old\" : x.xxx (numeric) The amount removed from the transparent value pool\n" - " \"vpub_new\" : x.xxx, (numeric) The amount added to the transparent value pool\n" - " }\n" - " ,...\n" - " ],\n" " \"hex\" : \"data\" (string) Raw data for transaction\n" "}\n" @@ -4842,7 +4831,7 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) if (toSapling) { mtx.vShieldedOutput.push_back(OutputDescription()); } else { - throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, sprout zaddr not valid"); + throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, not a Sapling zaddr!"); } } CTransaction tx(mtx); @@ -5123,7 +5112,7 @@ UniValue z_shieldcoinbase(const UniValue& params, bool fHelp, const CPubKey& myp contextualTx.nLockTime = chainActive.LastTip()->GetHeight(); if (contextualTx.nVersion == 1) { - contextualTx.nVersion = 2; // Tx format should support vjoinsplits + contextualTx.nVersion = 2; // Tx format should support ztx's } // Create operation and add to global queue From e48ffbe4552138c7d09331040aec96fad6bfe36c Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Thu, 15 Apr 2021 12:44:23 -0400 Subject: [PATCH 22/33] This error is user-facing in GUI wallets, so try to confuse them less --- src/wallet/rpcwallet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 8ac7f6521..63b11d40a 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -83,7 +83,7 @@ UniValue z_getoperationstatus_IMPL(const UniValue&, bool); #define PLAN_NAME_MAX 8 #define VALID_PLAN_NAME(x) (strlen(x) <= PLAN_NAME_MAX) -#define THROW_IF_SYNCING(INSYNC) if (INSYNC == 0) { throw runtime_error(strprintf("%s: Extreme Privacy! Chain still syncing at height %d, aborting to prevent linkability analysis",__FUNCTION__,chainActive.Tip()->GetHeight())); } +#define THROW_IF_SYNCING(INSYNC) if (INSYNC == 0) { throw runtime_error(strprintf("%s: Extreme Privacy! Chain still syncing at height %d, aborting to prevent linkability analysis. Please wait until FULLY SYNCED and try again.",__FUNCTION__,chainActive.Tip()->GetHeight())); } int tx_height( const uint256 &hash ); From 2ea5dcb048dfc4ea95f40b8bcdb0de4969ecc34b Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 16 Apr 2021 01:16:40 -0400 Subject: [PATCH 23/33] Anti p2p fingerprinting via nTime --- src/main.cpp | 1 + src/net.cpp | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index d38b44377..7e1d506e0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6979,6 +6979,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, BOOST_FOREACH(CAddress& addr, vAddr) { boost::this_thread::interruption_point(); + fprintf(stderr,"%s: %s.nTime=%d\n", __func__, pfrom->addr.ToString().c_str(), addr.nTime); if (addr.nTime <= 100000000 || addr.nTime > nNow + 10 * 60) addr.nTime = nNow - 5 * 24 * 60 * 60; diff --git a/src/net.cpp b/src/net.cpp index 25ee6dc3f..808df788c 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -212,8 +212,10 @@ CAddress GetLocalAddress(const CNetAddr *paddrPeer) { ret = CAddress(addr); } + //TODO: option to set custom services ret.nServices = nLocalServices; - ret.nTime = GetTime(); + // Round to the nearest 5 min window to avoid fingerprinting -- Duke + ret.nTime = GetTime() - (GetTime() % 300); return ret; } From c4bd394369e271eb67a4edea27471fda69ba042c Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 16 Apr 2021 01:16:58 -0400 Subject: [PATCH 24/33] Add missing copyright --- src/protocol.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/protocol.h b/src/protocol.h index ed76d0616..d21139d35 100644 --- a/src/protocol.h +++ b/src/protocol.h @@ -1,8 +1,8 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html - /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * @@ -17,7 +17,6 @@ * Removal or modification of this copyright notice is prohibited. * * * ******************************************************************************/ - #ifndef __cplusplus #error This header can only be compiled as C++. #endif From 631a63a4e2e67a576ddd9e6a68eefe49f9a2f02c Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 16 Apr 2021 12:28:16 -0400 Subject: [PATCH 25/33] Automagic z_sendmany --- src/wallet/rpcwallet.cpp | 114 +++++++++++++++++++++++++++++---------- 1 file changed, 87 insertions(+), 27 deletions(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 63b11d40a..9379295c3 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -4647,49 +4647,109 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) THROW_IF_SYNCING(HUSH_INSYNC); // Check that the from address is valid. - auto fromaddress = params[0].get_str(); - bool fromTaddr = false; - bool fromSapling = false; - + auto fromaddress = params[0].get_str(); + bool fromTaddr = false; + bool fromSapling = false; uint32_t branchId = CurrentEpochBranchId(chainActive.Height(), Params().GetConsensus()); + UniValue outputs = params[1].get_array(); + + if (outputs.size()==0) + throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, amounts array is empty."); - CTxDestination taddr = DecodeDestination(fromaddress); // TODO: implement special symbolic fromaddrs // TODO: list of (zaddr,amount) // "z" => spend from any zaddr // "t" => spend from any taddr // "*" => spend from any addr, zaddrs first if(fromaddress == "z") { + // TODO: refactor this and z_getbalances to use common code + std::set zaddrs = {}; + std::set saplingzaddrs = {}; + pwalletMain->GetSaplingPaymentAddresses(saplingzaddrs); + + zaddrs.insert(saplingzaddrs.begin(), saplingzaddrs.end()); + + int nMinDepth = 1; std::vector saplingEntries; - //pwalletMain->GetFilteredNotes(saplingEntries, zaddrs, nMinDepth, nMaxDepth, true, !fIncludeWatchonly, false); + pwalletMain->GetFilteredNotes(saplingEntries, zaddrs, nMinDepth); + + std::map mapBalances; for (auto & entry : saplingEntries) { - // EncodePaymentAddress(entry.address); + auto zaddr = EncodePaymentAddress(entry.address); + CAmount nBalance = CAmount(entry.note.value()); + if(mapBalances.count(zaddr)) { + mapBalances[zaddr] += nBalance; + } else { + mapBalances[zaddr] = nBalance; + } } + std::vector> vec; + std::copy(mapBalances.begin(), mapBalances.end(), std::back_inserter>>(vec)); + + std::sort(vec.begin(), vec.end(), [](const std::pair &l, const std::pair &r) + { + if (l.second != r.second) { + return l.second > r.second; + } + return l.first > r.first; + }); + + //TODO: avoid calculating nTotalOut twice + CAmount nTotalOut = 0; + for (const UniValue& o : outputs.getValues()) { + if (!o.isObject()) + throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, expected object"); + + UniValue av = find_value(o, "amount"); + CAmount nAmount = AmountFromValue( av ); + if (nAmount < 0) + throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, amount must be positive"); + + nTotalOut += nAmount; + } + + //TODO: choose one random address with enough funds + CAmount nFee; + if (params.size() > 3) { + if (params[3].get_real() == 0.0) { + nFee = 0; + } else { + nFee = AmountFromValue( params[3] ); + } + } + + // the total amount needed in a single zaddr to use as fromaddress + CAmount nMinBal = nTotalOut + nFee; + + std::vector vPotentialAddresses; + for (auto & entry : vec) { + if(entry.second >= nMinBal) { + vPotentialAddresses.push_back(entry.first); + } + } + + // select a random address with enough confirmed balance + fromaddress = vPotentialAddresses[ GetRandInt(vPotentialAddresses.size()) ]; } else { - } + CTxDestination taddr = DecodeDestination(fromaddress); + fromTaddr = IsValidDestination(taddr); + if (!fromTaddr) { + auto res = DecodePaymentAddress(fromaddress); + if (!IsValidPaymentAddress(res, branchId)) { + // invalid + throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid from address, should be a taddr or zaddr."); + } - fromTaddr = IsValidDestination(taddr); - if (!fromTaddr) { - auto res = DecodePaymentAddress(fromaddress); - if (!IsValidPaymentAddress(res, branchId)) { - // invalid - throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid from address, should be a taddr or zaddr."); + // Check that we have the spending key + if (!boost::apply_visitor(HaveSpendingKeyForPaymentAddress(pwalletMain), res)) { + throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "From address does not belong to this node, zaddr spending key not found."); + } + + // Remember whether this is a Sapling address + fromSapling = boost::get(&res) != nullptr; } - - // Check that we have the spending key - if (!boost::apply_visitor(HaveSpendingKeyForPaymentAddress(pwalletMain), res)) { - throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "From address does not belong to this node, zaddr spending key not found."); - } - - // Remember whether this is a Sapling address - fromSapling = boost::get(&res) != nullptr; } - UniValue outputs = params[1].get_array(); - - if (outputs.size()==0) - throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, amounts array is empty."); - // Keep track of addresses to spot duplicates set setAddress; From 2f2c0cee17b618e2c458ceabd65c07945e456869 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 16 Apr 2021 15:17:00 -0400 Subject: [PATCH 26/33] Do not process alert p2p messages and give DoS penalty --- src/main.cpp | 49 ++++++++++++++----------------------------------- 1 file changed, 14 insertions(+), 35 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 7e1d506e0..c37d98e7b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6962,6 +6962,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "addr") { vector vAddr; vRecv >> vAddr; + fprintf(stderr,"%s: processing add with vAddr.size=%lu\n", __func__, vAddr.size() ); // Don't want addr from older versions unless seeding if (pfrom->nVersion < CADDR_TIME_VERSION && addrman.size() > 1000) @@ -6979,7 +6980,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, BOOST_FOREACH(CAddress& addr, vAddr) { boost::this_thread::interruption_point(); - fprintf(stderr,"%s: %s.nTime=%d\n", __func__, pfrom->addr.ToString().c_str(), addr.nTime); + fprintf(stderr,"%s: %s.nTime=%d\n", __func__, addr.ToString().c_str(), addr.nTime); if (addr.nTime <= 100000000 || addr.nTime > nNow + 10 * 60) addr.nTime = nNow - 5 * 24 * 60 * 60; @@ -7015,17 +7016,18 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } } // Do not store addresses outside our network - if (fReachable) + if (fReachable) { vAddrOk.push_back(addr); + } else { + fprintf(stderr,"%s: %s with nTime=%d is not reachable\n",__func__,addr.ToString().c_str(), addr.nTime); + } } addrman.Add(vAddrOk, pfrom->addr, 2 * 60 * 60); if (vAddr.size() < 1000) pfrom->fGetAddr = false; if (pfrom->fOneShot) pfrom->fDisconnect = true; - } - else if (strCommand == "ping") - { + } else if (strCommand == "ping") { if (pfrom->nVersion > BIP0031_VERSION) { uint64_t nonce = 0; @@ -7043,11 +7045,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, // return very quickly. pfrom->PushMessage("pong", nonce); } - } - - - else if (strCommand == "pong") - { + } else if (strCommand == "pong") { int64_t pingUsecEnd = nTimeReceived; uint64_t nonce = 0; size_t nAvail = vRecv.in_avail(); @@ -7102,7 +7100,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, pfrom->nPingNonceSent = 0; } } - // This asymmetric behavior for inbound and outbound connections was introduced // to prevent a fingerprinting attack: an attacker can send specific fake addresses // to users' AddrMan and later request them by sending getaddr messages. @@ -7144,6 +7141,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, else if (strCommand == "inv") { vector vInv; vRecv >> vInv; + fprintf(stderr,"%s: processing inv with vInv.size=%lu\n", __func__, vInv.size() ); if (vInv.size() > MAX_INV_SZ) { Misbehaving(pfrom->GetId(), 20); @@ -7205,6 +7203,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "getdata") { vector vInv; vRecv >> vInv; + fprintf(stderr,"%s: getdata vInv.size=%lu\n", __func__, vInv.size() ); if (vInv.size() > MAX_INV_SZ) { Misbehaving(pfrom->GetId(), 20); @@ -7535,6 +7534,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "mempool") { LOCK2(cs_main, pfrom->cs_filter); + fprintf(stderr,"%s: mempool\n",__func__); + // TODO: limit mempool requests per time and per peer std::vector vtxid; mempool.queryHashes(vtxid); @@ -7556,30 +7557,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, if (vInv.size() > 0) pfrom->PushMessage("inv", vInv); } else if (fAlerts && strCommand == "alert") { - //TODO: probably completely ignore this - CAlert alert; - vRecv >> alert; - - uint256 alertHash = alert.GetHash(); - if (pfrom->setKnown.count(alertHash) == 0) { - if (alert.ProcessAlert(Params().AlertKey())) { - // Relay - pfrom->setKnown.insert(alertHash); - { - LOCK(cs_vNodes); - BOOST_FOREACH(CNode* pnode, vNodes) - alert.RelayTo(pnode); - } - } else { - // Small DoS penalty so peers that send us lots of - // duplicate/expired/invalid-signature/whatever alerts - // eventually get banned. - // This isn't a Misbehaving(100) (immediate ban) because the - // peer might be an older or different implementation with - // a different signature key, etc. - Misbehaving(pfrom->GetId(), 10); - } - } + // Do not process alert p2p messages and give DoS penalty + Misbehaving(pfrom->GetId(), 10); } else if (!(nLocalServices & NODE_BLOOM) && (strCommand == "filterload" || strCommand == "filteradd")) { From 1123ccf7bbf9dfcbb29067dc12d1dc1a571c8750 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Fri, 16 Apr 2021 15:17:29 -0400 Subject: [PATCH 27/33] Show actual zaddr in z_getoperationstatus output if it was automagic --- src/wallet/rpcwallet.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 9379295c3..a7f8658ae 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -4942,7 +4942,7 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) // Use input parameters as the optional context info to be returned by z_getoperationstatus and z_getoperationresult. UniValue o(UniValue::VOBJ); - o.push_back(Pair("fromaddress", params[0])); + o.push_back(Pair("fromaddress", fromaddress)); o.push_back(Pair("amounts", params[1])); o.push_back(Pair("minconf", nMinDepth)); o.push_back(Pair("fee", std::stod(FormatMoney(nFee)))); From d654df7c293de44070cc4d0b1d60ae299cf70ad7 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sat, 17 Apr 2021 12:46:33 -0400 Subject: [PATCH 28/33] Better error handling when there is no zaddr with enough balance --- src/wallet/rpcwallet.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index a7f8658ae..1b90c56a5 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -4708,7 +4708,7 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) nTotalOut += nAmount; } - //TODO: choose one random address with enough funds + //GOAL: choose one random zaddress with enough funds CAmount nFee; if (params.size() > 3) { if (params[3].get_real() == 0.0) { @@ -4729,7 +4729,14 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) } // select a random address with enough confirmed balance - fromaddress = vPotentialAddresses[ GetRandInt(vPotentialAddresses.size()) ]; + auto nPotentials = vPotentialAddresses.size(); + if (nPotentials > 0) { + fprintf(stderr,"%s: Selecting one of %lu potential source zaddrs\n", __func__, nPotentials); + fromaddress = vPotentialAddresses[ GetRandInt(nPotentials) ]; + } else { + // Automagic zaddr source election failed, exit honorably + throw JSONRPCError(RPC_INVALID_PARAMETER, "No single zaddr currently has enough funds to make that transaction, you may need to wait for confirmations."); + } } else { CTxDestination taddr = DecodeDestination(fromaddress); fromTaddr = IsValidDestination(taddr); @@ -4898,6 +4905,8 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) txsize += GetSerializeSize(tx, SER_NETWORK, tx.nVersion); if (fromTaddr) { txsize += CTXIN_SPEND_DUST_SIZE; + //TODO: On HUSH since block 340k there can no longer be taddr change, + // so we can likely make a better estimation of max txsize txsize += CTXOUT_REGULAR_SIZE; // There will probably be taddr change } txsize += CTXOUT_REGULAR_SIZE * taddrRecipients.size(); @@ -4968,7 +4977,6 @@ UniValue z_sendmany(const UniValue& params, bool fHelp, const CPubKey& mypk) return operationId; } - /** When estimating the number of coinbase utxos we can shield in a single transaction: 1. Joinsplit description is 1802 bytes. @@ -5066,7 +5074,7 @@ UniValue z_shieldcoinbase(const UniValue& params, bool fHelp, const CPubKey& myp std::vector inputs; CAmount shieldedValue = 0; CAmount remainingValue = 0; - //TODO: update these estimates + //TODO: update these estimates for Sapling SpendDescriptions size_t estimatedTxSize = 2000; // 1802 joinsplit description + tx overhead + wiggle room #ifdef __LP64__ From 4a536d62dcb8da6725479c7eefc392c55cae58c5 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sat, 17 Apr 2021 13:03:22 -0400 Subject: [PATCH 29/33] Update copyrights --- Dockerfile | 2 +- build.sh | 2 +- contrib/block_time.pl | 2 +- contrib/checkpoints.pl | 3 +-- contrib/fresh_clone_compile_and_run.sh | 2 +- contrib/hush_halvings | 2 +- contrib/hush_scanner | 2 +- contrib/hush_supply | 2 +- contrib/verify-commits/gpg.sh | 2 +- contrib/verify-commits/pre-push-hook.sh | 2 +- contrib/verify-commits/verify-commits.sh | 2 +- contrib/zmq/zmq_sub.py | 2 +- depends/funcs.mk | 2 +- migratecoin.sh | 2 +- qa/hush/create_benchmark_archive.py | 2 +- qa/hush/create_wallet_200k_utxos.py | 2 +- qa/hush/full-test-suite.sh | 2 +- qa/hush/full_test_suite.py | 2 +- qa/pull-tester/rpc-tests.sh | 2 +- qa/pull-tester/run-bitcoin-cli | 2 +- qa/pull-tester/run-bitcoind-for-test.sh.in | 2 +- qa/pull-tester/tests-config.sh.in | 2 +- qa/rpc-tests/ac_private.py | 2 +- qa/rpc-tests/addressindex.py | 2 +- qa/rpc-tests/bip65-cltv-p2p.py | 2 +- qa/rpc-tests/bipdersig-p2p.py | 2 +- qa/rpc-tests/blockchain.py | 2 +- qa/rpc-tests/cryptoconditions.py | 2 +- qa/rpc-tests/cryptoconditions_channels.py | 2 +- qa/rpc-tests/cryptoconditions_dice.py | 2 +- qa/rpc-tests/cryptoconditions_faucet.py | 2 +- qa/rpc-tests/cryptoconditions_gateways.py | 2 +- qa/rpc-tests/cryptoconditions_heir.py | 2 +- qa/rpc-tests/cryptoconditions_oracles.py | 2 +- qa/rpc-tests/cryptoconditions_rewards.py | 2 +- qa/rpc-tests/cryptoconditions_token.py | 2 +- qa/rpc-tests/decodescript.py | 2 +- qa/rpc-tests/disablewallet.py | 2 +- qa/rpc-tests/dpowconfs.py | 2 +- qa/rpc-tests/feature_walletfile.py | 2 +- qa/rpc-tests/finalsaplingroot.py | 2 +- qa/rpc-tests/forknotify.py | 2 +- qa/rpc-tests/fundrawtransaction.py | 2 +- qa/rpc-tests/getblocktemplate.py | 2 +- qa/rpc-tests/getblocktemplate_longpoll.py | 2 +- qa/rpc-tests/getblocktemplate_proposals.py | 2 +- qa/rpc-tests/getchaintips.py | 2 +- qa/rpc-tests/hardforkdetection.py | 2 +- qa/rpc-tests/httpbasics.py | 2 +- qa/rpc-tests/invalidateblock.py | 2 +- qa/rpc-tests/invalidblockrequest.py | 2 +- qa/rpc-tests/ivk_import_export.py | 2 +- qa/rpc-tests/key_import_export.py | 2 +- qa/rpc-tests/keypool.py | 2 +- qa/rpc-tests/listtransactions.py | 2 +- qa/rpc-tests/maxblocksinflight.py | 2 +- qa/rpc-tests/mempool_nu_activation.py | 2 +- qa/rpc-tests/mempool_reorg.py | 2 +- qa/rpc-tests/mempool_resurrect_test.py | 2 +- qa/rpc-tests/mempool_spendcoinbase.py | 2 +- qa/rpc-tests/mempool_tx_expiry.py | 2 +- qa/rpc-tests/mempool_tx_input_limit.py | 2 +- qa/rpc-tests/merkle_blocks.py | 2 +- qa/rpc-tests/nodehandling.py | 2 +- qa/rpc-tests/nspv_client_test.py | 2 +- qa/rpc-tests/p2p-acceptblock.py | 2 +- qa/rpc-tests/p2p_node_bloom.py | 2 +- qa/rpc-tests/p2p_txexpiry_dos.py | 2 +- qa/rpc-tests/prioritisetransaction.py | 2 +- qa/rpc-tests/proxy_test.py | 2 +- qa/rpc-tests/pruning.py | 2 +- qa/rpc-tests/rawtransactions.py | 2 +- qa/rpc-tests/receivedby.py | 2 +- qa/rpc-tests/regtest_signrawtransaction.py | 2 +- qa/rpc-tests/reindex.py | 2 +- qa/rpc-tests/rest.py | 2 +- qa/rpc-tests/rewind_index.py | 2 +- qa/rpc-tests/rpcbind_test.py | 2 +- qa/rpc-tests/script_test.py | 2 +- qa/rpc-tests/signrawtransaction_offline.py | 2 +- qa/rpc-tests/signrawtransactions.py | 2 +- qa/rpc-tests/smartfees.py | 2 +- qa/rpc-tests/spentindex.py | 2 +- qa/rpc-tests/test_framework/authproxy.py | 2 +- qa/rpc-tests/test_framework/bignum.py | 2 +- qa/rpc-tests/test_framework/blockstore.py | 2 +- qa/rpc-tests/test_framework/blocktools.py | 2 +- qa/rpc-tests/test_framework/comptool.py | 2 +- qa/rpc-tests/test_framework/equihash.py | 2 +- qa/rpc-tests/test_framework/mininode.py | 2 +- qa/rpc-tests/test_framework/netutil.py | 2 +- qa/rpc-tests/test_framework/script.py | 2 +- qa/rpc-tests/test_framework/socks5.py | 2 +- qa/rpc-tests/test_framework/test_framework.py | 2 +- qa/rpc-tests/timestampindex.py | 2 +- qa/rpc-tests/txindex.py | 2 +- qa/rpc-tests/txn_doublespend.py | 2 +- qa/rpc-tests/wallet.py | 2 +- qa/rpc-tests/wallet_1941.py | 2 +- qa/rpc-tests/wallet_addresses.py | 2 +- qa/rpc-tests/wallet_anchorfork.py | 2 +- qa/rpc-tests/wallet_changeindicator.py | 2 +- qa/rpc-tests/wallet_import_export.py | 2 +- qa/rpc-tests/wallet_listnotes.py | 2 +- qa/rpc-tests/wallet_listreceived.py | 2 +- qa/rpc-tests/wallet_mergetoaddress.py | 2 +- qa/rpc-tests/wallet_nullifiers.py | 2 +- qa/rpc-tests/wallet_overwintertx.py | 2 +- qa/rpc-tests/wallet_persistence.py | 2 +- qa/rpc-tests/wallet_protectcoinbase.py | 2 +- qa/rpc-tests/wallet_sapling.py | 2 +- qa/rpc-tests/wallet_shieldcoinbase.py | 2 +- qa/rpc-tests/wallet_shieldcoinbase_sapling.py | 2 +- qa/rpc-tests/wallet_treestate.py | 2 +- qa/rpc-tests/walletbackup.py | 2 +- qa/rpc-tests/zapwallettxes.py | 2 +- qa/rpc-tests/zkey_import_export.py | 2 +- qa/rpc-tests/zmq_test.py | 2 +- src/Makefile.gtest.include | 2 +- src/Makefile.test-hush.include | 2 +- src/addressindex.h | 2 +- src/addrman.cpp | 2 +- src/alert.cpp | 2 +- src/alert.h | 2 +- src/alertkeys.h | 2 +- src/amount.cpp | 2 +- src/amount.h | 2 +- src/arith_uint256.cpp | 2 +- src/arith_uint256.h | 2 +- src/asyncrpcoperation.cpp | 2 +- src/asyncrpcoperation.h | 2 +- src/asyncrpcqueue.cpp | 2 +- src/asyncrpcqueue.h | 2 +- src/bech32.cpp | 2 +- src/bech32.h | 2 +- src/bitcoind.cpp | 2 +- src/bloom.cpp | 2 +- src/cc/CCGateways.h | 2 +- src/cc/CCHeir.h | 2 +- src/cc/CCImportGateway.h | 2 +- src/cc/CCMarmara.h | 2 +- src/cc/CCOracles.h | 2 +- src/cc/CCPayments.h | 2 +- src/cc/CCPegs.h | 2 +- src/cc/CCPrices.h | 2 +- src/cc/CCassets.h | 2 +- src/cc/CCassetsCore.cpp | 2 +- src/cc/CCassetstx.cpp | 2 +- src/cc/CCauction.h | 2 +- src/cc/CCchannels.h | 2 +- src/cc/CCcustom.cpp | 2 +- src/cc/CCdice.h | 2 +- src/cc/CCfaucet.h | 2 +- src/cc/CCfsm.h | 2 +- src/cc/CCinclude.h | 2 +- src/cc/CClotto.h | 2 +- src/cc/CCrewards.h | 2 +- src/cc/CCtokens.cpp | 2 +- src/cc/CCtokens.h | 2 +- src/cc/CCtokenutils.cpp | 2 +- src/cc/CCtx.cpp | 2 +- src/cc/CCutilbits.cpp | 2 +- src/cc/CCutils.cpp | 2 +- src/cc/assets.cpp | 2 +- src/cc/auction.cpp | 2 +- src/cc/betprotocol.cpp | 2 +- src/cc/betprotocol.h | 2 +- src/cc/cclib.cpp | 2 +- src/cc/channels.cpp | 2 +- src/cc/crypto777/OS_portable.h | 2 +- src/cc/customcc.cpp | 2 +- src/cc/customcc.h | 2 +- src/cc/dapps/Makefile | 2 +- src/cc/dapps/cJSON.c | 2 +- src/cc/dapps/dappinc.h | 2 +- src/cc/dapps/dappstd.c | 2 +- src/cc/dapps/hushdex.c | 2 +- src/cc/dapps/zmigrate.c | 2 +- src/cc/dice.cpp | 2 +- src/cc/dilithium.c | 2 +- src/cc/dilithium.h | 2 +- src/cc/disputepayout.cpp | 2 +- src/cc/eval.cpp | 2 +- src/cc/eval.h | 2 +- src/cc/faucet.cpp | 2 +- src/cc/fsm.cpp | 2 +- src/cc/games/prices.c | 2 +- src/cc/games/prices.cpp | 2 +- src/cc/games/prices.h | 2 +- src/cc/games/tetris.c | 2 +- src/cc/games/tetris.h | 2 +- src/cc/gamescc.cpp | 2 +- src/cc/gamescc.h | 2 +- src/cc/gateways.cpp | 2 +- src/cc/heir.cpp | 2 +- src/cc/heir_validate.h | 2 +- src/cc/import.cpp | 2 +- src/cc/importgateway.cpp | 2 +- src/cc/importpayout.cpp | 2 +- src/cc/includes/cJSON.h | 2 +- src/cc/includes/curve25519.h | 2 +- src/cc/includes/libgfshare.h | 2 +- src/cc/includes/tweetnacl.h | 2 +- src/cc/includes/uthash.h | 2 +- src/cc/includes/utlist.h | 2 +- src/cc/lotto.cpp | 2 +- src/cc/makecclib | 2 +- src/cc/musig.cpp | 2 +- src/cc/oracles.cpp | 2 +- src/cc/payments.cpp | 2 +- src/cc/pegs.cpp | 2 +- src/cc/prices.cpp | 2 +- src/cc/rewards.cpp | 2 +- src/cc/rogue/Makefile.in | 2 +- src/cc/rogue/armor.c | 2 +- src/cc/rogue/chase.c | 2 +- src/cc/rogue/command.c | 2 +- src/cc/rogue/cursesd.c | 2 +- src/cc/rogue/cursesd.h | 2 +- src/cc/rogue/daemon.c | 2 +- src/cc/rogue/daemons.c | 2 +- src/cc/rogue/extern.c | 2 +- src/cc/rogue/extern.h | 2 +- src/cc/rogue/fight.c | 2 +- src/cc/rogue/init.c | 2 +- src/cc/rogue/io.c | 2 +- src/cc/rogue/list.c | 2 +- src/cc/rogue/mach_dep.c | 2 +- src/cc/rogue/main.c | 2 +- src/cc/rogue/mdport.c | 2 +- src/cc/rogue/misc.c | 2 +- src/cc/rogue/monsters.c | 2 +- src/cc/rogue/move.c | 2 +- src/cc/rogue/new_level.c | 2 +- src/cc/rogue/options.c | 2 +- src/cc/rogue/pack.c | 2 +- src/cc/rogue/passages.c | 2 +- src/cc/rogue/potions.c | 2 +- src/cc/rogue/rings.c | 2 +- src/cc/rogue/rip.c | 2 +- src/cc/rogue/rogue.c | 2 +- src/cc/rogue/rogue.h | 2 +- src/cc/rogue/rogue_player.h | 2 +- src/cc/rogue/rooms.c | 2 +- src/cc/rogue/save.c | 2 +- src/cc/rogue/score.h | 2 +- src/cc/rogue/scrolls.c | 2 +- src/cc/rogue/state.c | 2 +- src/cc/rogue/sticks.c | 2 +- src/cc/rogue/things.c | 2 +- src/cc/rogue/vers.c | 2 +- src/cc/rogue/weapons.c | 2 +- src/cc/rogue/wizard.c | 2 +- src/cc/rogue/xcrypt.c | 2 +- src/cc/rogue_rpc.cpp | 2 +- src/cc/sudoku.cpp | 2 +- src/cc/utils.h | 2 +- src/chain.cpp | 2 +- src/chain.h | 2 +- src/chainparams.cpp | 2 +- src/chainparams.h | 2 +- src/checkpoints.cpp | 2 +- src/checkpoints.h | 2 +- src/checkqueue.h | 2 +- src/clientversion.cpp | 2 +- src/coincontrol.h | 2 +- src/coins.cpp | 2 +- src/coins.h | 2 +- src/consensus/params.h | 2 +- src/consensus/upgrades.cpp | 2 +- src/core_memusage.h | 2 +- src/crosschain.cpp | 2 +- src/crosschain.h | 2 +- src/crosschain_authority.cpp | 2 +- src/crypto/common.h | 2 +- src/crypto/equihash.h | 2 +- src/cryptoconditions/AUTHORS | 2 +- src/cryptoconditions/src/anon.c | 2 +- src/cryptoconditions/src/asn/BIT_STRING.c | 2 +- src/cryptoconditions/src/asn/BIT_STRING.h | 2 +- src/cryptoconditions/src/asn/CompoundSha256Condition.c | 2 +- src/cryptoconditions/src/asn/CompoundSha256Condition.h | 2 +- src/cryptoconditions/src/asn/Condition.c | 2 +- src/cryptoconditions/src/asn/Condition.h | 2 +- src/cryptoconditions/src/asn/ConditionTypes.c | 2 +- src/cryptoconditions/src/asn/ConditionTypes.h | 2 +- src/cryptoconditions/src/asn/Ed25519FingerprintContents.c | 2 +- src/cryptoconditions/src/asn/Ed25519FingerprintContents.h | 2 +- src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.c | 2 +- src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.h | 2 +- src/cryptoconditions/src/asn/EvalFulfillment.c | 2 +- src/cryptoconditions/src/asn/EvalFulfillment.h | 2 +- src/cryptoconditions/src/asn/Fulfillment.c | 2 +- src/cryptoconditions/src/asn/Fulfillment.h | 2 +- src/cryptoconditions/src/asn/INTEGER.c | 2 +- src/cryptoconditions/src/asn/INTEGER.h | 2 +- src/cryptoconditions/src/asn/NativeEnumerated.c | 2 +- src/cryptoconditions/src/asn/NativeEnumerated.h | 2 +- src/cryptoconditions/src/asn/NativeInteger.c | 2 +- src/cryptoconditions/src/asn/NativeInteger.h | 2 +- src/cryptoconditions/src/asn/OCTET_STRING.c | 2 +- src/cryptoconditions/src/asn/OCTET_STRING.h | 2 +- src/cryptoconditions/src/asn/PrefixFingerprintContents.c | 2 +- src/cryptoconditions/src/asn/PrefixFingerprintContents.h | 2 +- src/cryptoconditions/src/asn/PrefixFulfillment.c | 2 +- src/cryptoconditions/src/asn/PrefixFulfillment.h | 2 +- src/cryptoconditions/src/asn/PreimageFulfillment.c | 2 +- src/cryptoconditions/src/asn/PreimageFulfillment.h | 2 +- src/cryptoconditions/src/asn/RsaFingerprintContents.c | 2 +- src/cryptoconditions/src/asn/RsaFingerprintContents.h | 2 +- src/cryptoconditions/src/asn/RsaSha256Fulfillment.c | 2 +- src/cryptoconditions/src/asn/RsaSha256Fulfillment.h | 2 +- src/cryptoconditions/src/asn/Secp256k1FingerprintContents.c | 2 +- src/cryptoconditions/src/asn/Secp256k1FingerprintContents.h | 2 +- src/cryptoconditions/src/asn/Secp256k1Fulfillment.c | 2 +- src/cryptoconditions/src/asn/Secp256k1Fulfillment.h | 2 +- src/cryptoconditions/src/asn/SimpleSha256Condition.c | 2 +- src/cryptoconditions/src/asn/SimpleSha256Condition.h | 2 +- src/cryptoconditions/src/asn/ThresholdFingerprintContents.c | 2 +- src/cryptoconditions/src/asn/ThresholdFingerprintContents.h | 2 +- src/cryptoconditions/src/asn/ThresholdFulfillment.c | 2 +- src/cryptoconditions/src/asn/ThresholdFulfillment.h | 2 +- src/cryptoconditions/src/asn/asn_SET_OF.c | 2 +- src/cryptoconditions/src/asn/asn_SET_OF.h | 2 +- src/cryptoconditions/src/asn/asn_application.h | 2 +- src/cryptoconditions/src/asn/asn_codecs.h | 2 +- src/cryptoconditions/src/asn/asn_codecs_prim.c | 2 +- src/cryptoconditions/src/asn/asn_codecs_prim.h | 2 +- src/cryptoconditions/src/asn/asn_internal.h | 2 +- src/cryptoconditions/src/asn/asn_system.h | 2 +- src/cryptoconditions/src/asn/ber_decoder.c | 2 +- src/cryptoconditions/src/asn/ber_decoder.h | 2 +- src/cryptoconditions/src/asn/ber_tlv_length.c | 2 +- src/cryptoconditions/src/asn/ber_tlv_length.h | 2 +- src/cryptoconditions/src/asn/ber_tlv_tag.c | 2 +- src/cryptoconditions/src/asn/ber_tlv_tag.h | 2 +- src/cryptoconditions/src/asn/constr_CHOICE.c | 2 +- src/cryptoconditions/src/asn/constr_CHOICE.h | 2 +- src/cryptoconditions/src/asn/constr_SEQUENCE.c | 2 +- src/cryptoconditions/src/asn/constr_SEQUENCE.h | 2 +- src/cryptoconditions/src/asn/constr_SET_OF.c | 2 +- src/cryptoconditions/src/asn/constr_SET_OF.h | 2 +- src/cryptoconditions/src/asn/constr_TYPE.c | 2 +- src/cryptoconditions/src/asn/constr_TYPE.h | 2 +- src/cryptoconditions/src/asn/constraints.c | 2 +- src/cryptoconditions/src/asn/constraints.h | 2 +- src/cryptoconditions/src/asn/der_encoder.c | 2 +- src/cryptoconditions/src/asn/der_encoder.h | 2 +- src/cryptoconditions/src/asn/per_decoder.c | 2 +- src/cryptoconditions/src/asn/per_decoder.h | 2 +- src/cryptoconditions/src/asn/per_encoder.c | 2 +- src/cryptoconditions/src/asn/per_encoder.h | 2 +- src/cryptoconditions/src/asn/per_opentype.c | 2 +- src/cryptoconditions/src/asn/per_opentype.h | 2 +- src/cryptoconditions/src/asn/per_support.c | 2 +- src/cryptoconditions/src/asn/per_support.h | 2 +- src/cryptoconditions/src/asn/xer_decoder.c | 2 +- src/cryptoconditions/src/asn/xer_decoder.h | 2 +- src/cryptoconditions/src/asn/xer_encoder.c | 2 +- src/cryptoconditions/src/asn/xer_encoder.h | 2 +- src/cryptoconditions/src/asn/xer_support.c | 2 +- src/cryptoconditions/src/asn/xer_support.h | 2 +- src/cryptoconditions/src/cryptoconditions.c | 2 +- src/cryptoconditions/src/ed25519.c | 2 +- src/cryptoconditions/src/eval.c | 2 +- src/cryptoconditions/src/include/cJSON.c | 2 +- src/cryptoconditions/src/include/cJSON.h | 2 +- src/cryptoconditions/src/include/libbase58.h | 2 +- src/cryptoconditions/src/include/sha256.c | 2 +- src/cryptoconditions/src/include/sha256.h | 2 +- src/cryptoconditions/src/include/tweetnacl.c | 2 +- src/cryptoconditions/src/include/tweetnacl.h | 2 +- src/cryptoconditions/src/internal.h | 2 +- src/cryptoconditions/src/json_rpc.c | 2 +- src/cryptoconditions/src/prefix.c | 2 +- src/cryptoconditions/src/preimage.c | 2 +- src/cryptoconditions/src/secp256k1.c | 2 +- src/cryptoconditions/src/threshold.c | 2 +- src/cryptoconditions/src/utils.c | 2 +- src/dbwrapper.cpp | 2 +- src/dbwrapper.h | 2 +- src/deprecation.cpp | 2 +- src/deprecation.h | 2 +- src/fs.h | 2 +- src/gtest/json_test_vectors.cpp | 2 +- src/gtest/json_test_vectors.h | 2 +- src/gtest/main.cpp | 2 +- src/gtest/test_block.cpp | 2 +- src/gtest/test_checkblock.cpp | 2 +- src/gtest/test_checktransaction.cpp | 2 +- src/gtest/test_deprecation.cpp | 2 +- src/gtest/test_equihash.cpp | 2 +- src/gtest/test_httprpc.cpp | 2 +- src/gtest/test_keys.cpp | 2 +- src/gtest/test_keystore.cpp | 2 +- src/gtest/test_libzcash_utils.cpp | 2 +- src/gtest/test_mempool.cpp | 2 +- src/gtest/test_merkletree.cpp | 2 +- src/gtest/test_metrics.cpp | 2 +- src/gtest/test_miner.cpp | 2 +- src/gtest/test_noteencryption.cpp | 2 +- src/gtest/test_pedersen_hash.cpp | 2 +- src/gtest/test_pow.cpp | 2 +- src/gtest/test_random.cpp | 2 +- src/gtest/test_rpc.cpp | 2 +- src/gtest/test_sapling_note.cpp | 2 +- src/gtest/test_tautology.cpp | 2 +- src/gtest/test_transaction_builder.cpp | 2 +- src/gtest/test_txid.cpp | 2 +- src/gtest/test_upgrades.cpp | 2 +- src/gtest/test_validation.cpp | 2 +- src/gtest/test_zip32.cpp | 2 +- src/gtest/utils.cpp | 2 +- src/hash.cpp | 2 +- src/hash.h | 2 +- src/hush-cli | 2 +- src/hush-cli-testnet | 2 +- src/hush-smart-chain | 2 +- src/hush-tx | 2 +- src/hush.h | 2 +- src/hush/tlsenums.h | 2 +- src/hush/tlsmanager.cpp | 2 +- src/hush/tlsmanager.h | 2 +- src/hush/utiltls.cpp | 2 +- src/hush/utiltls.h | 2 +- src/hush_bitcoind.h | 2 +- src/hush_cJSON.h | 2 +- src/hush_ccdata.h | 2 +- src/hush_curve25519.h | 2 +- src/hush_events.h | 2 +- src/hush_gateway.h | 2 +- src/hush_globals.h | 4 ++-- src/hush_kv.h | 2 +- src/hush_nSPV.h | 2 +- src/hush_nSPV_fullnode.h | 2 +- src/hush_nSPV_wallet.h | 2 +- src/hush_notary.h | 3 +-- src/hush_pax.h | 2 +- src/hush_structs.h | 2 +- src/hush_utils.h | 4 ++-- src/hushd | 2 +- src/hushd-testnet | 2 +- src/importcoin.h | 2 +- src/init.h | 2 +- src/key.h | 2 +- src/key_io.cpp | 2 +- src/key_io.h | 2 +- src/keystore.cpp | 2 +- src/keystore.h | 2 +- src/komodo-tx.cpp | 2 +- src/main.cpp | 4 ++-- src/main.h | 2 +- src/metrics.cpp | 2 +- src/metrics.h | 2 +- src/miner.cpp | 2 +- src/miner.h | 2 +- src/net.h | 2 +- src/notarizationdb.cpp | 2 +- src/notarizationdb.h | 2 +- src/pow.cpp | 2 +- src/pow.h | 2 +- src/pow/tromp/equi_miner.h | 2 +- src/pow/tromp/osx_barrier.h | 2 +- src/prevector.h | 2 +- src/primitives/block.cpp | 2 +- src/primitives/block.h | 2 +- src/primitives/transaction.cpp | 2 +- src/primitives/transaction.h | 2 +- src/protocol.cpp | 2 +- src/pubkey.cpp | 2 +- src/pubkey.h | 2 +- src/purge | 2 +- src/random.cpp | 2 +- src/rest.cpp | 2 +- src/rpc/blockchain.cpp | 2 +- src/rpc/client.cpp | 2 +- src/rpc/crosschain.cpp | 2 +- src/rpc/mining.cpp | 2 +- src/rpc/misc.cpp | 2 +- src/rpc/server.cpp | 2 +- src/rpc/server.h | 4 +--- src/script/standard.cpp | 2 +- src/script/standard.h | 2 +- src/sendalert.cpp | 4 ++-- src/support/allocators/secure.h | 2 +- src/support/allocators/zeroafterfree.h | 2 +- src/sync.cpp | 2 +- src/test-hush/main.cpp | 2 +- src/test-hush/test_addrman.cpp | 2 +- src/test-hush/test_coinimport.cpp | 2 +- src/test-hush/test_cryptoconditions.cpp | 2 +- src/test-hush/test_eval_bet.cpp | 2 +- src/test-hush/test_eval_notarization.cpp | 2 +- src/test-hush/test_netbase_tests.cpp | 2 +- src/test-hush/test_parse_notarization.cpp | 2 +- src/test-hush/testutils.cpp | 2 +- src/test-hush/testutils.h | 2 +- src/test/Checkpoints_tests.cpp | 2 +- src/test/DoS_tests.cpp | 2 +- src/test/accounting_tests.cpp | 2 +- src/test/addrman_tests.cpp | 2 +- src/test/allocator_tests.cpp | 2 +- src/test/arith_uint256_tests.cpp | 2 +- src/test/base32_tests.cpp | 2 +- src/test/base58_tests.cpp | 2 +- src/test/base64_tests.cpp | 2 +- src/test/bctest.py | 2 +- src/test/bech32_tests.cpp | 2 +- src/test/bip32_tests.cpp | 2 +- src/test/bitcoin-util-test.py | 2 +- src/test/bloom_tests.cpp | 2 +- src/test/checkblock_tests.cpp | 2 +- src/test/coins_tests.cpp | 2 +- src/test/compress_tests.cpp | 2 +- src/test/convertbits_tests.cpp | 2 +- src/test/crypto_tests.cpp | 2 +- src/test/dbwrapper_tests.cpp | 2 +- src/test/equihash_tests.cpp | 2 +- src/test/getarg_tests.cpp | 2 +- src/test/hash_tests.cpp | 2 +- src/test/key_tests.cpp | 2 +- src/test/main_tests.cpp | 2 +- src/test/mempool_tests.cpp | 2 +- src/test/miner_tests.cpp | 2 +- src/test/mruset_tests.cpp | 2 +- src/test/multisig_tests.cpp | 2 +- src/test/netbase_tests.cpp | 2 +- src/test/pmt_tests.cpp | 2 +- src/test/policyestimator_tests.cpp | 2 +- src/test/pow_tests.cpp | 2 +- src/test/prevector_tests.cpp | 2 +- src/test/raii_event_tests.cpp | 2 +- src/test/reverselock_tests.cpp | 2 +- src/test/rpc_tests.cpp | 2 +- src/test/rpc_wallet_tests.cpp | 2 +- src/test/sanity_tests.cpp | 2 +- src/test/scheduler_tests.cpp | 2 +- src/test/script_P2PKH_tests.cpp | 2 +- src/test/script_P2SH_tests.cpp | 2 +- src/test/script_tests.cpp | 2 +- src/test/scriptnum_tests.cpp | 2 +- src/test/serialize_tests.cpp | 2 +- src/test/sha256compress_tests.cpp | 2 +- src/test/sigopcount_tests.cpp | 2 +- src/test/skiplist_tests.cpp | 2 +- src/test/test_bitcoin.cpp | 2 +- src/test/timedata_tests.cpp | 2 +- src/test/torcontrol_tests.cpp | 2 +- src/test/transaction_tests.cpp | 2 +- src/test/uint256_tests.cpp | 2 +- src/test/univalue_tests.cpp | 2 +- src/test/util_tests.cpp | 2 +- src/test/wallet-utility.py | 2 +- src/timedata.cpp | 2 +- src/timedata.h | 2 +- src/torcontrol.cpp | 2 +- src/torcontrol.h | 2 +- src/transaction_builder.cpp | 2 +- src/transaction_builder.h | 2 +- src/txdb.cpp | 2 +- src/txdb.h | 2 +- src/txmempool.cpp | 2 +- src/txmempool.h | 2 +- src/util.cpp | 2 +- src/util.h | 2 +- src/utilmoneystr.cpp | 2 +- src/validationinterface.cpp | 2 +- src/wallet-utility.cpp | 2 +- src/wallet/asyncrpcoperation_mergetoaddress.cpp | 2 +- src/wallet/asyncrpcoperation_mergetoaddress.h | 2 +- src/wallet/asyncrpcoperation_saplingconsolidation.cpp | 2 +- src/wallet/asyncrpcoperation_sendmany.cpp | 2 +- src/wallet/asyncrpcoperation_sendmany.h | 2 +- src/wallet/asyncrpcoperation_shieldcoinbase.cpp | 2 +- src/wallet/asyncrpcoperation_shieldcoinbase.h | 2 +- src/wallet/crypter.cpp | 2 +- src/wallet/crypter.h | 2 +- src/wallet/gtest/test_transaction.cpp | 2 +- src/wallet/gtest/test_wallet.cpp | 2 +- src/wallet/gtest/test_wallet_zkeys.cpp | 2 +- src/wallet/rpcdump.cpp | 2 +- src/wallet/rpchushwallet.cpp | 2 +- src/wallet/test/wallet_tests.cpp | 2 +- src/wallet/wallet.cpp | 6 +++--- src/wallet/wallet.h | 2 +- src/wallet/walletdb.cpp | 2 +- src/zcash/Address.cpp | 2 +- src/zcash/Address.hpp | 2 +- src/zcash/IncrementalMerkleTree.cpp | 2 +- src/zcash/IncrementalMerkleTree.hpp | 2 +- src/zcash/JoinSplit.cpp | 2 +- src/zcash/JoinSplit.hpp | 2 +- src/zcash/Note.cpp | 2 +- src/zcash/Note.hpp | 2 +- src/zcash/NoteEncryption.cpp | 2 +- src/zcash/NoteEncryption.hpp | 2 +- src/zcash/Proof.cpp | 2 +- src/zcash/Proof.hpp | 2 +- src/zcash/Zcash.h | 2 +- src/zcash/prf.cpp | 2 +- src/zcash/prf.h | 2 +- src/zcash/util.cpp | 2 +- src/zcash/util.h | 2 +- src/zcash/zip32.cpp | 2 +- src/zcash/zip32.h | 2 +- src/zcbenchmarks.cpp | 2 +- src/zcbenchmarks.h | 2 +- src/zush | 2 +- toolchain-info.sh | 2 +- zcutil/afl/afl-build.sh | 2 +- zcutil/afl/afl-get.sh | 2 +- zcutil/afl/afl-getbuildrun.sh | 2 +- zcutil/afl/afl-run.sh | 2 +- zcutil/build-arm.sh | 2 +- zcutil/build-debian-package.sh | 2 +- zcutil/build-mac.sh | 2 +- zcutil/build-win.sh | 2 +- zcutil/build.sh | 2 +- zcutil/docker-entrypoint.sh | 2 +- 619 files changed, 625 insertions(+), 629 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3ee058477..7b33f6bae 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html FROM ubuntu:16.04 diff --git a/build.sh b/build.sh index 1367218b6..864a20548 100755 --- a/build.sh +++ b/build.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/contrib/block_time.pl b/contrib/block_time.pl index a97a742aa..1b8c13351 100755 --- a/contrib/block_time.pl +++ b/contrib/block_time.pl @@ -1,5 +1,5 @@ #!/usr/bin/perl -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html use warnings; diff --git a/contrib/checkpoints.pl b/contrib/checkpoints.pl index 673c0d007..1a6524820 100755 --- a/contrib/checkpoints.pl +++ b/contrib/checkpoints.pl @@ -1,6 +1,5 @@ #!/usr/bin/perl -# Copyright 2016-2020 The Hush developers -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html use warnings; diff --git a/contrib/fresh_clone_compile_and_run.sh b/contrib/fresh_clone_compile_and_run.sh index 95c89c5fb..54fc69ed6 100644 --- a/contrib/fresh_clone_compile_and_run.sh +++ b/contrib/fresh_clone_compile_and_run.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html # OPEN BOUNTY diff --git a/contrib/hush_halvings b/contrib/hush_halvings index 4352cf875..80bb24b04 100755 --- a/contrib/hush_halvings +++ b/contrib/hush_halvings @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 use strict; diff --git a/contrib/hush_scanner b/contrib/hush_scanner index 7905cce97..6ec4300b9 100755 --- a/contrib/hush_scanner +++ b/contrib/hush_scanner @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html use strict; diff --git a/contrib/hush_supply b/contrib/hush_supply index 89bb91f87..e12770f84 100755 --- a/contrib/hush_supply +++ b/contrib/hush_supply @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 use warnings; use strict; diff --git a/contrib/verify-commits/gpg.sh b/contrib/verify-commits/gpg.sh index 947dca43c..dc6eb9c61 100755 --- a/contrib/verify-commits/gpg.sh +++ b/contrib/verify-commits/gpg.sh @@ -1,5 +1,5 @@ #!/bin/sh -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html INPUT=$( diff --git a/src/cc/disputepayout.cpp b/src/cc/disputepayout.cpp index 9e2015d2b..24ab02b74 100644 --- a/src/cc/disputepayout.cpp +++ b/src/cc/disputepayout.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/eval.cpp b/src/cc/eval.cpp index c24bc612f..9f362db6c 100644 --- a/src/cc/eval.cpp +++ b/src/cc/eval.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/eval.h b/src/cc/eval.h index 3bd3baef4..b1049e7cd 100644 --- a/src/cc/eval.h +++ b/src/cc/eval.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/faucet.cpp b/src/cc/faucet.cpp index dd468697a..c7cf29fc4 100644 --- a/src/cc/faucet.cpp +++ b/src/cc/faucet.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/fsm.cpp b/src/cc/fsm.cpp index a73695cb9..64c71405c 100644 --- a/src/cc/fsm.cpp +++ b/src/cc/fsm.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/games/prices.c b/src/cc/games/prices.c index 152768e67..f23a4ccea 100644 --- a/src/cc/games/prices.c +++ b/src/cc/games/prices.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/games/prices.cpp b/src/cc/games/prices.cpp index 940900834..287960830 100644 --- a/src/cc/games/prices.cpp +++ b/src/cc/games/prices.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/games/prices.h b/src/cc/games/prices.h index deb0948d7..258385651 100644 --- a/src/cc/games/prices.h +++ b/src/cc/games/prices.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/games/tetris.c b/src/cc/games/tetris.c index 73bd649d9..c0a3633f2 100644 --- a/src/cc/games/tetris.c +++ b/src/cc/games/tetris.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/games/tetris.h b/src/cc/games/tetris.h index 27117822a..7ef7a9aec 100644 --- a/src/cc/games/tetris.h +++ b/src/cc/games/tetris.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/gamescc.cpp b/src/cc/gamescc.cpp index 99cdcb128..810907c89 100644 --- a/src/cc/gamescc.cpp +++ b/src/cc/gamescc.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/gamescc.h b/src/cc/gamescc.h index 3633e0feb..1e70b8647 100644 --- a/src/cc/gamescc.h +++ b/src/cc/gamescc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef H_GAMESCC_H diff --git a/src/cc/gateways.cpp b/src/cc/gateways.cpp index 3962b0b84..fe70b4625 100644 --- a/src/cc/gateways.cpp +++ b/src/cc/gateways.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/heir.cpp b/src/cc/heir.cpp index 98fe18c71..c0ac21b0b 100644 --- a/src/cc/heir.cpp +++ b/src/cc/heir.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/heir_validate.h b/src/cc/heir_validate.h index 0668dfdaa..9e0afa0cb 100644 --- a/src/cc/heir_validate.h +++ b/src/cc/heir_validate.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef HEIR_VALIDATE_H diff --git a/src/cc/import.cpp b/src/cc/import.cpp index 8f41d0cde..06fc75dff 100644 --- a/src/cc/import.cpp +++ b/src/cc/import.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/importgateway.cpp b/src/cc/importgateway.cpp index 901621535..b2cd169f7 100644 --- a/src/cc/importgateway.cpp +++ b/src/cc/importgateway.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/importpayout.cpp b/src/cc/importpayout.cpp index bc7e19a4e..2740d8ef2 100644 --- a/src/cc/importpayout.cpp +++ b/src/cc/importpayout.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/includes/cJSON.h b/src/cc/includes/cJSON.h index 8a3fb9d49..47c24b8e9 100644 --- a/src/cc/includes/cJSON.h +++ b/src/cc/includes/cJSON.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/includes/curve25519.h b/src/cc/includes/curve25519.h index 5fed9c9e5..f55f0b785 100644 --- a/src/cc/includes/curve25519.h +++ b/src/cc/includes/curve25519.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/includes/libgfshare.h b/src/cc/includes/libgfshare.h index 6dc5c74e2..113fd77ec 100644 --- a/src/cc/includes/libgfshare.h +++ b/src/cc/includes/libgfshare.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/includes/tweetnacl.h b/src/cc/includes/tweetnacl.h index cd0eec7c2..2539eb8d0 100644 --- a/src/cc/includes/tweetnacl.h +++ b/src/cc/includes/tweetnacl.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef TWEETNACL_H diff --git a/src/cc/includes/uthash.h b/src/cc/includes/uthash.h index 8f5ef34da..accf4edf2 100644 --- a/src/cc/includes/uthash.h +++ b/src/cc/includes/uthash.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/includes/utlist.h b/src/cc/includes/utlist.h index bf0d1176e..c4d8f900a 100644 --- a/src/cc/includes/utlist.h +++ b/src/cc/includes/utlist.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/lotto.cpp b/src/cc/lotto.cpp index 9aaa273ef..5d1ac148b 100644 --- a/src/cc/lotto.cpp +++ b/src/cc/lotto.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/makecclib b/src/cc/makecclib index 29ac3dc99..c7815ccde 100755 --- a/src/cc/makecclib +++ b/src/cc/makecclib @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/musig.cpp b/src/cc/musig.cpp index 4b266e44c..4019f2962 100644 --- a/src/cc/musig.cpp +++ b/src/cc/musig.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/oracles.cpp b/src/cc/oracles.cpp index b33751b03..fc3a0be41 100644 --- a/src/cc/oracles.cpp +++ b/src/cc/oracles.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/payments.cpp b/src/cc/payments.cpp index 405455ee1..5f541a95e 100644 --- a/src/cc/payments.cpp +++ b/src/cc/payments.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/pegs.cpp b/src/cc/pegs.cpp index a05e827a0..7ee5c815b 100644 --- a/src/cc/pegs.cpp +++ b/src/cc/pegs.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/prices.cpp b/src/cc/prices.cpp index 0f74b1a6f..a96e1ea8d 100644 --- a/src/cc/prices.cpp +++ b/src/cc/prices.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rewards.cpp b/src/cc/rewards.cpp index b5c23f3f6..76ce0b8dd 100644 --- a/src/cc/rewards.cpp +++ b/src/cc/rewards.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rogue/Makefile.in b/src/cc/rogue/Makefile.in index 34bafbdd7..c215fbcb1 100644 --- a/src/cc/rogue/Makefile.in +++ b/src/cc/rogue/Makefile.in @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html ############################################################################### diff --git a/src/cc/rogue/armor.c b/src/cc/rogue/armor.c index bf7d84566..33bc628cc 100644 --- a/src/cc/rogue/armor.c +++ b/src/cc/rogue/armor.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/chase.c b/src/cc/rogue/chase.c index abc19e3d4..f0d6e6841 100644 --- a/src/cc/rogue/chase.c +++ b/src/cc/rogue/chase.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/command.c b/src/cc/rogue/command.c index 65bc324ff..dd12d2e25 100644 --- a/src/cc/rogue/command.c +++ b/src/cc/rogue/command.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/cursesd.c b/src/cc/rogue/cursesd.c index 27c42ce39..84ba3387f 100644 --- a/src/cc/rogue/cursesd.c +++ b/src/cc/rogue/cursesd.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rogue/cursesd.h b/src/cc/rogue/cursesd.h index cfaa6bbc5..748e594ff 100644 --- a/src/cc/rogue/cursesd.h +++ b/src/cc/rogue/cursesd.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rogue/daemon.c b/src/cc/rogue/daemon.c index ad931451d..20ca53e94 100644 --- a/src/cc/rogue/daemon.c +++ b/src/cc/rogue/daemon.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/daemons.c b/src/cc/rogue/daemons.c index 13d951500..80a9e8549 100644 --- a/src/cc/rogue/daemons.c +++ b/src/cc/rogue/daemons.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/extern.c b/src/cc/rogue/extern.c index fa7462825..bf904006b 100644 --- a/src/cc/rogue/extern.c +++ b/src/cc/rogue/extern.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/extern.h b/src/cc/rogue/extern.h index 92bfbcec5..a0ce9dd37 100644 --- a/src/cc/rogue/extern.h +++ b/src/cc/rogue/extern.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/fight.c b/src/cc/rogue/fight.c index 6b5225981..8c8d65c3f 100644 --- a/src/cc/rogue/fight.c +++ b/src/cc/rogue/fight.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/init.c b/src/cc/rogue/init.c index b6e023e4b..7169ff117 100644 --- a/src/cc/rogue/init.c +++ b/src/cc/rogue/init.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/io.c b/src/cc/rogue/io.c index 6d5ced070..bdb449351 100644 --- a/src/cc/rogue/io.c +++ b/src/cc/rogue/io.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/list.c b/src/cc/rogue/list.c index 458ae99f5..6f12a0795 100644 --- a/src/cc/rogue/list.c +++ b/src/cc/rogue/list.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/mach_dep.c b/src/cc/rogue/mach_dep.c index 995338766..5d12fb0ac 100644 --- a/src/cc/rogue/mach_dep.c +++ b/src/cc/rogue/mach_dep.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/main.c b/src/cc/rogue/main.c index 792a32f59..3052b72ee 100644 --- a/src/cc/rogue/main.c +++ b/src/cc/rogue/main.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rogue/mdport.c b/src/cc/rogue/mdport.c index fe7e695dc..d6c6b019e 100644 --- a/src/cc/rogue/mdport.c +++ b/src/cc/rogue/mdport.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/misc.c b/src/cc/rogue/misc.c index b9db42ed2..0cc3b23c7 100644 --- a/src/cc/rogue/misc.c +++ b/src/cc/rogue/misc.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/monsters.c b/src/cc/rogue/monsters.c index 3bf81c166..433fa89ea 100644 --- a/src/cc/rogue/monsters.c +++ b/src/cc/rogue/monsters.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/move.c b/src/cc/rogue/move.c index 10156ec07..e3e265119 100644 --- a/src/cc/rogue/move.c +++ b/src/cc/rogue/move.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/new_level.c b/src/cc/rogue/new_level.c index 37b9418b0..47453ef92 100644 --- a/src/cc/rogue/new_level.c +++ b/src/cc/rogue/new_level.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/options.c b/src/cc/rogue/options.c index 17338ec0f..dfecdcb89 100644 --- a/src/cc/rogue/options.c +++ b/src/cc/rogue/options.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/pack.c b/src/cc/rogue/pack.c index 0671ee0e8..72ee6031c 100644 --- a/src/cc/rogue/pack.c +++ b/src/cc/rogue/pack.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/passages.c b/src/cc/rogue/passages.c index ac13790e7..099193269 100644 --- a/src/cc/rogue/passages.c +++ b/src/cc/rogue/passages.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/potions.c b/src/cc/rogue/potions.c index 333a136f2..314f91916 100644 --- a/src/cc/rogue/potions.c +++ b/src/cc/rogue/potions.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/rings.c b/src/cc/rogue/rings.c index 84785f1bc..5812f9421 100644 --- a/src/cc/rogue/rings.c +++ b/src/cc/rogue/rings.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/rip.c b/src/cc/rogue/rip.c index 5f8672525..29c3e1566 100644 --- a/src/cc/rogue/rip.c +++ b/src/cc/rogue/rip.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/rogue.c b/src/cc/rogue/rogue.c index 46433c742..d1d42f449 100644 --- a/src/cc/rogue/rogue.c +++ b/src/cc/rogue/rogue.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/rogue.h b/src/cc/rogue/rogue.h index 95dc99b0f..94a72d636 100644 --- a/src/cc/rogue/rogue.h +++ b/src/cc/rogue/rogue.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/rogue_player.h b/src/cc/rogue/rogue_player.h index 67e4ecc70..8aa7ae755 100644 --- a/src/cc/rogue/rogue_player.h +++ b/src/cc/rogue/rogue_player.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cc/rogue/rooms.c b/src/cc/rogue/rooms.c index 3419c6f2e..9ad2c8cfe 100644 --- a/src/cc/rogue/rooms.c +++ b/src/cc/rogue/rooms.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/save.c b/src/cc/rogue/save.c index 36221e228..ab01d49c5 100644 --- a/src/cc/rogue/save.c +++ b/src/cc/rogue/save.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/score.h b/src/cc/rogue/score.h index 9e3ff8398..4905e8a5e 100644 --- a/src/cc/rogue/score.h +++ b/src/cc/rogue/score.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/scrolls.c b/src/cc/rogue/scrolls.c index fcb17b1fc..7fe34a05c 100644 --- a/src/cc/rogue/scrolls.c +++ b/src/cc/rogue/scrolls.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/state.c b/src/cc/rogue/state.c index 7d838b022..cf140dc19 100644 --- a/src/cc/rogue/state.c +++ b/src/cc/rogue/state.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/sticks.c b/src/cc/rogue/sticks.c index d956eb7af..8dc119b3d 100644 --- a/src/cc/rogue/sticks.c +++ b/src/cc/rogue/sticks.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/things.c b/src/cc/rogue/things.c index cccbc8436..fc076b112 100644 --- a/src/cc/rogue/things.c +++ b/src/cc/rogue/things.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/vers.c b/src/cc/rogue/vers.c index 1c4350a77..d733e9e81 100644 --- a/src/cc/rogue/vers.c +++ b/src/cc/rogue/vers.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/weapons.c b/src/cc/rogue/weapons.c index 75ca41f44..2df9faf65 100644 --- a/src/cc/rogue/weapons.c +++ b/src/cc/rogue/weapons.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/wizard.c b/src/cc/rogue/wizard.c index 456207523..d36e8a3b3 100644 --- a/src/cc/rogue/wizard.c +++ b/src/cc/rogue/wizard.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue/xcrypt.c b/src/cc/rogue/xcrypt.c index 77c8f2f86..9a2b7fd39 100644 --- a/src/cc/rogue/xcrypt.c +++ b/src/cc/rogue/xcrypt.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cc/rogue_rpc.cpp b/src/cc/rogue_rpc.cpp index dd60ef1a7..1caedbe45 100644 --- a/src/cc/rogue_rpc.cpp +++ b/src/cc/rogue_rpc.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/cc/sudoku.cpp b/src/cc/sudoku.cpp index 893f14083..6edd868b2 100644 --- a/src/cc/sudoku.cpp +++ b/src/cc/sudoku.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html // From https://github.com/attractivechaos/plb/blob/master/sudoku/incoming/sudoku_solver.c diff --git a/src/cc/utils.h b/src/cc/utils.h index bbb771936..5422b92a3 100644 --- a/src/cc/utils.h +++ b/src/cc/utils.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/chain.cpp b/src/chain.cpp index b1c07097c..e90466a62 100644 --- a/src/chain.cpp +++ b/src/chain.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/chain.h b/src/chain.h index 8647b0e81..1d8f2a462 100644 --- a/src/chain.h +++ b/src/chain.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 955996a6f..be2216d17 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html ///////////////////////////////////////////////////////////////////////////////// diff --git a/src/chainparams.h b/src/chainparams.h index e2e837f48..350aeb4de 100644 --- a/src/chainparams.h +++ b/src/chainparams.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/checkpoints.cpp b/src/checkpoints.cpp index c90479120..9a0b7a67d 100644 --- a/src/checkpoints.cpp +++ b/src/checkpoints.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/checkpoints.h b/src/checkpoints.h index 7f124a47c..8a6cbb015 100644 --- a/src/checkpoints.h +++ b/src/checkpoints.h @@ -1,5 +1,5 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/checkqueue.h b/src/checkqueue.h index ad4bb067b..9cbf25cf2 100644 --- a/src/checkqueue.h +++ b/src/checkqueue.h @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/clientversion.cpp b/src/clientversion.cpp index 30bc7fb43..dd52311bb 100644 --- a/src/clientversion.cpp +++ b/src/clientversion.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/coincontrol.h b/src/coincontrol.h index dcc954510..3f8d0539d 100644 --- a/src/coincontrol.h +++ b/src/coincontrol.h @@ -1,5 +1,5 @@ // Copyright (c) 2011-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/coins.cpp b/src/coins.cpp index 1c303a398..a83731e35 100644 --- a/src/coins.cpp +++ b/src/coins.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/coins.h b/src/coins.h index 868bc63da..282fe816c 100644 --- a/src/coins.h +++ b/src/coins.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/consensus/params.h b/src/consensus/params.h index 5aa7ad531..f3484e6e9 100644 --- a/src/consensus/params.h +++ b/src/consensus/params.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/consensus/upgrades.cpp b/src/consensus/upgrades.cpp index 2d1a29835..a24e74658 100644 --- a/src/consensus/upgrades.cpp +++ b/src/consensus/upgrades.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2018 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/core_memusage.h b/src/core_memusage.h index 38d8de876..9e680cbe4 100644 --- a/src/core_memusage.h +++ b/src/core_memusage.h @@ -1,5 +1,5 @@ // Copyright (c) 2015 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/crosschain.cpp b/src/crosschain.cpp index 82199d2c7..7968b7292 100644 --- a/src/crosschain.cpp +++ b/src/crosschain.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/crosschain.h b/src/crosschain.h index bb15b3305..f20a1c6f1 100644 --- a/src/crosschain.h +++ b/src/crosschain.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/crosschain_authority.cpp b/src/crosschain_authority.cpp index 477191731..2a63998a1 100644 --- a/src/crosschain_authority.cpp +++ b/src/crosschain_authority.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "cc/eval.h" diff --git a/src/crypto/common.h b/src/crypto/common.h index 6ebb351b1..e299f4098 100644 --- a/src/crypto/common.h +++ b/src/crypto/common.h @@ -1,5 +1,5 @@ // Copyright (c) 2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Released under the GPLv3 // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/crypto/equihash.h b/src/crypto/equihash.h index 8c1a228d8..3b977dffc 100644 --- a/src/crypto/equihash.h +++ b/src/crypto/equihash.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2016 Jack Grigg // Copyright (c) 2016 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying diff --git a/src/cryptoconditions/AUTHORS b/src/cryptoconditions/AUTHORS index 08114b0f4..bf0bcc88b 100644 --- a/src/cryptoconditions/AUTHORS +++ b/src/cryptoconditions/AUTHORS @@ -4,6 +4,6 @@ Copyright 2017 Scott Sadler # Current Authors -Copyright 2016-2020 The Hush Developers +Copyright (c) 2016-2021 The Hush Developers Relicensed to GPLv3 on Nov 21st 2020. diff --git a/src/cryptoconditions/src/anon.c b/src/cryptoconditions/src/anon.c index 9eb30325e..57c5cac45 100644 --- a/src/cryptoconditions/src/anon.c +++ b/src/cryptoconditions/src/anon.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * diff --git a/src/cryptoconditions/src/asn/BIT_STRING.c b/src/cryptoconditions/src/asn/BIT_STRING.c index 129bad968..6db8df17c 100644 --- a/src/cryptoconditions/src/asn/BIT_STRING.c +++ b/src/cryptoconditions/src/asn/BIT_STRING.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/BIT_STRING.h b/src/cryptoconditions/src/asn/BIT_STRING.h index dfe0180de..6ce2b9091 100644 --- a/src/cryptoconditions/src/asn/BIT_STRING.h +++ b/src/cryptoconditions/src/asn/BIT_STRING.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/CompoundSha256Condition.c b/src/cryptoconditions/src/asn/CompoundSha256Condition.c index 4449a7470..a14b50a5b 100644 --- a/src/cryptoconditions/src/asn/CompoundSha256Condition.c +++ b/src/cryptoconditions/src/asn/CompoundSha256Condition.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/CompoundSha256Condition.h b/src/cryptoconditions/src/asn/CompoundSha256Condition.h index 9a22243f3..b8604c113 100644 --- a/src/cryptoconditions/src/asn/CompoundSha256Condition.h +++ b/src/cryptoconditions/src/asn/CompoundSha256Condition.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Condition.c b/src/cryptoconditions/src/asn/Condition.c index c6783c5f5..d48d14433 100644 --- a/src/cryptoconditions/src/asn/Condition.c +++ b/src/cryptoconditions/src/asn/Condition.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Condition.h b/src/cryptoconditions/src/asn/Condition.h index aa64624d8..a67d6f617 100644 --- a/src/cryptoconditions/src/asn/Condition.h +++ b/src/cryptoconditions/src/asn/Condition.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ConditionTypes.c b/src/cryptoconditions/src/asn/ConditionTypes.c index bc45b5650..28368b87c 100644 --- a/src/cryptoconditions/src/asn/ConditionTypes.c +++ b/src/cryptoconditions/src/asn/ConditionTypes.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ConditionTypes.h b/src/cryptoconditions/src/asn/ConditionTypes.h index d2681a6bb..4ef2a745c 100644 --- a/src/cryptoconditions/src/asn/ConditionTypes.h +++ b/src/cryptoconditions/src/asn/ConditionTypes.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Ed25519FingerprintContents.c b/src/cryptoconditions/src/asn/Ed25519FingerprintContents.c index c1320a218..52fc23f72 100644 --- a/src/cryptoconditions/src/asn/Ed25519FingerprintContents.c +++ b/src/cryptoconditions/src/asn/Ed25519FingerprintContents.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Ed25519FingerprintContents.h b/src/cryptoconditions/src/asn/Ed25519FingerprintContents.h index a3466a392..fbebcbd69 100644 --- a/src/cryptoconditions/src/asn/Ed25519FingerprintContents.h +++ b/src/cryptoconditions/src/asn/Ed25519FingerprintContents.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.c b/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.c index 636f4c37f..24c74e786 100644 --- a/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.c +++ b/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.h b/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.h index c1633694e..cf41cadc0 100644 --- a/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.h +++ b/src/cryptoconditions/src/asn/Ed25519Sha512Fulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/EvalFulfillment.c b/src/cryptoconditions/src/asn/EvalFulfillment.c index 5b56f4400..c020697be 100644 --- a/src/cryptoconditions/src/asn/EvalFulfillment.c +++ b/src/cryptoconditions/src/asn/EvalFulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/EvalFulfillment.h b/src/cryptoconditions/src/asn/EvalFulfillment.h index 3161ed96a..3c7e0f7de 100644 --- a/src/cryptoconditions/src/asn/EvalFulfillment.h +++ b/src/cryptoconditions/src/asn/EvalFulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Fulfillment.c b/src/cryptoconditions/src/asn/Fulfillment.c index 15c734763..d0fb00481 100644 --- a/src/cryptoconditions/src/asn/Fulfillment.c +++ b/src/cryptoconditions/src/asn/Fulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Fulfillment.h b/src/cryptoconditions/src/asn/Fulfillment.h index 04f140b2a..7df390cb8 100644 --- a/src/cryptoconditions/src/asn/Fulfillment.h +++ b/src/cryptoconditions/src/asn/Fulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/INTEGER.c b/src/cryptoconditions/src/asn/INTEGER.c index 1911e8d61..8e4da42ee 100644 --- a/src/cryptoconditions/src/asn/INTEGER.c +++ b/src/cryptoconditions/src/asn/INTEGER.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/INTEGER.h b/src/cryptoconditions/src/asn/INTEGER.h index d9d9e9705..a0affd22c 100644 --- a/src/cryptoconditions/src/asn/INTEGER.h +++ b/src/cryptoconditions/src/asn/INTEGER.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/NativeEnumerated.c b/src/cryptoconditions/src/asn/NativeEnumerated.c index 9794d3e7c..9e8402ab0 100644 --- a/src/cryptoconditions/src/asn/NativeEnumerated.c +++ b/src/cryptoconditions/src/asn/NativeEnumerated.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/NativeEnumerated.h b/src/cryptoconditions/src/asn/NativeEnumerated.h index de4e0d8bc..aa7106a74 100644 --- a/src/cryptoconditions/src/asn/NativeEnumerated.h +++ b/src/cryptoconditions/src/asn/NativeEnumerated.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/NativeInteger.c b/src/cryptoconditions/src/asn/NativeInteger.c index 9b3bd42b7..c856754ff 100644 --- a/src/cryptoconditions/src/asn/NativeInteger.c +++ b/src/cryptoconditions/src/asn/NativeInteger.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/NativeInteger.h b/src/cryptoconditions/src/asn/NativeInteger.h index dd22777c1..2eff4adbd 100644 --- a/src/cryptoconditions/src/asn/NativeInteger.h +++ b/src/cryptoconditions/src/asn/NativeInteger.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/OCTET_STRING.c b/src/cryptoconditions/src/asn/OCTET_STRING.c index 95dc3eca3..1ef107d85 100644 --- a/src/cryptoconditions/src/asn/OCTET_STRING.c +++ b/src/cryptoconditions/src/asn/OCTET_STRING.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/OCTET_STRING.h b/src/cryptoconditions/src/asn/OCTET_STRING.h index d4d7d826c..41f024dac 100644 --- a/src/cryptoconditions/src/asn/OCTET_STRING.h +++ b/src/cryptoconditions/src/asn/OCTET_STRING.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/PrefixFingerprintContents.c b/src/cryptoconditions/src/asn/PrefixFingerprintContents.c index d8e8c0af4..43717477f 100644 --- a/src/cryptoconditions/src/asn/PrefixFingerprintContents.c +++ b/src/cryptoconditions/src/asn/PrefixFingerprintContents.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/PrefixFingerprintContents.h b/src/cryptoconditions/src/asn/PrefixFingerprintContents.h index dd3575b3e..4e2993220 100644 --- a/src/cryptoconditions/src/asn/PrefixFingerprintContents.h +++ b/src/cryptoconditions/src/asn/PrefixFingerprintContents.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/PrefixFulfillment.c b/src/cryptoconditions/src/asn/PrefixFulfillment.c index c2ab68212..8e196e0a8 100644 --- a/src/cryptoconditions/src/asn/PrefixFulfillment.c +++ b/src/cryptoconditions/src/asn/PrefixFulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/PrefixFulfillment.h b/src/cryptoconditions/src/asn/PrefixFulfillment.h index f9229d27b..2452db17c 100644 --- a/src/cryptoconditions/src/asn/PrefixFulfillment.h +++ b/src/cryptoconditions/src/asn/PrefixFulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/PreimageFulfillment.c b/src/cryptoconditions/src/asn/PreimageFulfillment.c index 86bcdb04a..b1b18bcd3 100644 --- a/src/cryptoconditions/src/asn/PreimageFulfillment.c +++ b/src/cryptoconditions/src/asn/PreimageFulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/PreimageFulfillment.h b/src/cryptoconditions/src/asn/PreimageFulfillment.h index c13ca564e..8a46bef28 100644 --- a/src/cryptoconditions/src/asn/PreimageFulfillment.h +++ b/src/cryptoconditions/src/asn/PreimageFulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/RsaFingerprintContents.c b/src/cryptoconditions/src/asn/RsaFingerprintContents.c index 462aac97f..2a7e9a83a 100644 --- a/src/cryptoconditions/src/asn/RsaFingerprintContents.c +++ b/src/cryptoconditions/src/asn/RsaFingerprintContents.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/RsaFingerprintContents.h b/src/cryptoconditions/src/asn/RsaFingerprintContents.h index 9d63a472b..456555c30 100644 --- a/src/cryptoconditions/src/asn/RsaFingerprintContents.h +++ b/src/cryptoconditions/src/asn/RsaFingerprintContents.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/RsaSha256Fulfillment.c b/src/cryptoconditions/src/asn/RsaSha256Fulfillment.c index d4948073f..d2a88e72c 100644 --- a/src/cryptoconditions/src/asn/RsaSha256Fulfillment.c +++ b/src/cryptoconditions/src/asn/RsaSha256Fulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/RsaSha256Fulfillment.h b/src/cryptoconditions/src/asn/RsaSha256Fulfillment.h index ca8dd32a9..cd1d51be8 100644 --- a/src/cryptoconditions/src/asn/RsaSha256Fulfillment.h +++ b/src/cryptoconditions/src/asn/RsaSha256Fulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.c b/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.c index 903ad4ca5..4d04257b1 100644 --- a/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.c +++ b/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.h b/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.h index 46370abec..716dbb754 100644 --- a/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.h +++ b/src/cryptoconditions/src/asn/Secp256k1FingerprintContents.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Secp256k1Fulfillment.c b/src/cryptoconditions/src/asn/Secp256k1Fulfillment.c index a02366a22..6980e62b4 100644 --- a/src/cryptoconditions/src/asn/Secp256k1Fulfillment.c +++ b/src/cryptoconditions/src/asn/Secp256k1Fulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/Secp256k1Fulfillment.h b/src/cryptoconditions/src/asn/Secp256k1Fulfillment.h index 16c4641e4..398820556 100644 --- a/src/cryptoconditions/src/asn/Secp256k1Fulfillment.h +++ b/src/cryptoconditions/src/asn/Secp256k1Fulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/SimpleSha256Condition.c b/src/cryptoconditions/src/asn/SimpleSha256Condition.c index 35faf4bc7..aaaaa5e69 100644 --- a/src/cryptoconditions/src/asn/SimpleSha256Condition.c +++ b/src/cryptoconditions/src/asn/SimpleSha256Condition.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/SimpleSha256Condition.h b/src/cryptoconditions/src/asn/SimpleSha256Condition.h index be94c496d..8dc40fec8 100644 --- a/src/cryptoconditions/src/asn/SimpleSha256Condition.h +++ b/src/cryptoconditions/src/asn/SimpleSha256Condition.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ThresholdFingerprintContents.c b/src/cryptoconditions/src/asn/ThresholdFingerprintContents.c index 2d4f335a1..e42b6b4d0 100644 --- a/src/cryptoconditions/src/asn/ThresholdFingerprintContents.c +++ b/src/cryptoconditions/src/asn/ThresholdFingerprintContents.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ThresholdFingerprintContents.h b/src/cryptoconditions/src/asn/ThresholdFingerprintContents.h index 876297100..77fdd272b 100644 --- a/src/cryptoconditions/src/asn/ThresholdFingerprintContents.h +++ b/src/cryptoconditions/src/asn/ThresholdFingerprintContents.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ThresholdFulfillment.c b/src/cryptoconditions/src/asn/ThresholdFulfillment.c index 6a995e645..c060fd38a 100644 --- a/src/cryptoconditions/src/asn/ThresholdFulfillment.c +++ b/src/cryptoconditions/src/asn/ThresholdFulfillment.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/ThresholdFulfillment.h b/src/cryptoconditions/src/asn/ThresholdFulfillment.h index 77b6a6425..2bc145aef 100644 --- a/src/cryptoconditions/src/asn/ThresholdFulfillment.h +++ b/src/cryptoconditions/src/asn/ThresholdFulfillment.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/asn_SET_OF.c b/src/cryptoconditions/src/asn/asn_SET_OF.c index c8cd940dd..cc2bd5c1a 100644 --- a/src/cryptoconditions/src/asn/asn_SET_OF.c +++ b/src/cryptoconditions/src/asn/asn_SET_OF.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_SET_OF.h b/src/cryptoconditions/src/asn/asn_SET_OF.h index 3718dea46..1beb19090 100644 --- a/src/cryptoconditions/src/asn/asn_SET_OF.h +++ b/src/cryptoconditions/src/asn/asn_SET_OF.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_application.h b/src/cryptoconditions/src/asn/asn_application.h index 9945a5927..2e03c0973 100644 --- a/src/cryptoconditions/src/asn/asn_application.h +++ b/src/cryptoconditions/src/asn/asn_application.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_codecs.h b/src/cryptoconditions/src/asn/asn_codecs.h index 6a4a981c6..22fe3a130 100644 --- a/src/cryptoconditions/src/asn/asn_codecs.h +++ b/src/cryptoconditions/src/asn/asn_codecs.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_codecs_prim.c b/src/cryptoconditions/src/asn/asn_codecs_prim.c index d0adab97b..0cecf9201 100644 --- a/src/cryptoconditions/src/asn/asn_codecs_prim.c +++ b/src/cryptoconditions/src/asn/asn_codecs_prim.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_codecs_prim.h b/src/cryptoconditions/src/asn/asn_codecs_prim.h index 5170db831..853e9ded6 100644 --- a/src/cryptoconditions/src/asn/asn_codecs_prim.h +++ b/src/cryptoconditions/src/asn/asn_codecs_prim.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_internal.h b/src/cryptoconditions/src/asn/asn_internal.h index ce224eac5..f5996bbed 100644 --- a/src/cryptoconditions/src/asn/asn_internal.h +++ b/src/cryptoconditions/src/asn/asn_internal.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/asn_system.h b/src/cryptoconditions/src/asn/asn_system.h index 124bd2c11..1190cc94a 100644 --- a/src/cryptoconditions/src/asn/asn_system.h +++ b/src/cryptoconditions/src/asn/asn_system.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_decoder.c b/src/cryptoconditions/src/asn/ber_decoder.c index 5c876e542..693df71f3 100644 --- a/src/cryptoconditions/src/asn/ber_decoder.c +++ b/src/cryptoconditions/src/asn/ber_decoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_decoder.h b/src/cryptoconditions/src/asn/ber_decoder.h index 623d3f8db..ecffc78bf 100644 --- a/src/cryptoconditions/src/asn/ber_decoder.h +++ b/src/cryptoconditions/src/asn/ber_decoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_tlv_length.c b/src/cryptoconditions/src/asn/ber_tlv_length.c index f5e28941c..880d4f106 100644 --- a/src/cryptoconditions/src/asn/ber_tlv_length.c +++ b/src/cryptoconditions/src/asn/ber_tlv_length.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_tlv_length.h b/src/cryptoconditions/src/asn/ber_tlv_length.h index 42b3e30e2..db678bd0d 100644 --- a/src/cryptoconditions/src/asn/ber_tlv_length.h +++ b/src/cryptoconditions/src/asn/ber_tlv_length.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_tlv_tag.c b/src/cryptoconditions/src/asn/ber_tlv_tag.c index 7c0bef647..e0c5729e9 100644 --- a/src/cryptoconditions/src/asn/ber_tlv_tag.c +++ b/src/cryptoconditions/src/asn/ber_tlv_tag.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/ber_tlv_tag.h b/src/cryptoconditions/src/asn/ber_tlv_tag.h index e0f5a38ec..649ff07ae 100644 --- a/src/cryptoconditions/src/asn/ber_tlv_tag.h +++ b/src/cryptoconditions/src/asn/ber_tlv_tag.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_CHOICE.c b/src/cryptoconditions/src/asn/constr_CHOICE.c index a8cd0e19d..100b50273 100644 --- a/src/cryptoconditions/src/asn/constr_CHOICE.c +++ b/src/cryptoconditions/src/asn/constr_CHOICE.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/constr_CHOICE.h b/src/cryptoconditions/src/asn/constr_CHOICE.h index 2a7a99bc5..a397c82e5 100644 --- a/src/cryptoconditions/src/asn/constr_CHOICE.h +++ b/src/cryptoconditions/src/asn/constr_CHOICE.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_SEQUENCE.c b/src/cryptoconditions/src/asn/constr_SEQUENCE.c index 10e9a0cd5..dbe4585d6 100644 --- a/src/cryptoconditions/src/asn/constr_SEQUENCE.c +++ b/src/cryptoconditions/src/asn/constr_SEQUENCE.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_SEQUENCE.h b/src/cryptoconditions/src/asn/constr_SEQUENCE.h index 0b20eab85..170a2e65c 100644 --- a/src/cryptoconditions/src/asn/constr_SEQUENCE.h +++ b/src/cryptoconditions/src/asn/constr_SEQUENCE.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_SET_OF.c b/src/cryptoconditions/src/asn/constr_SET_OF.c index c3671a8ca..acb570453 100644 --- a/src/cryptoconditions/src/asn/constr_SET_OF.c +++ b/src/cryptoconditions/src/asn/constr_SET_OF.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_SET_OF.h b/src/cryptoconditions/src/asn/constr_SET_OF.h index 19fe763cd..e3f5903fb 100644 --- a/src/cryptoconditions/src/asn/constr_SET_OF.h +++ b/src/cryptoconditions/src/asn/constr_SET_OF.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_TYPE.c b/src/cryptoconditions/src/asn/constr_TYPE.c index 3fdee6819..2f20284d7 100644 --- a/src/cryptoconditions/src/asn/constr_TYPE.c +++ b/src/cryptoconditions/src/asn/constr_TYPE.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constr_TYPE.h b/src/cryptoconditions/src/asn/constr_TYPE.h index 6cfc68a3a..cb170366b 100644 --- a/src/cryptoconditions/src/asn/constr_TYPE.h +++ b/src/cryptoconditions/src/asn/constr_TYPE.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/constraints.c b/src/cryptoconditions/src/asn/constraints.c index c6901a78f..423c98de4 100644 --- a/src/cryptoconditions/src/asn/constraints.c +++ b/src/cryptoconditions/src/asn/constraints.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "asn_internal.h" diff --git a/src/cryptoconditions/src/asn/constraints.h b/src/cryptoconditions/src/asn/constraints.h index 86dedfd6f..081ad0664 100644 --- a/src/cryptoconditions/src/asn/constraints.h +++ b/src/cryptoconditions/src/asn/constraints.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/der_encoder.c b/src/cryptoconditions/src/asn/der_encoder.c index c1e744396..88cefa9eb 100644 --- a/src/cryptoconditions/src/asn/der_encoder.c +++ b/src/cryptoconditions/src/asn/der_encoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/der_encoder.h b/src/cryptoconditions/src/asn/der_encoder.h index d0d1d5057..e16d2d153 100644 --- a/src/cryptoconditions/src/asn/der_encoder.h +++ b/src/cryptoconditions/src/asn/der_encoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/per_decoder.c b/src/cryptoconditions/src/asn/per_decoder.c index b026f7241..39615d05b 100644 --- a/src/cryptoconditions/src/asn/per_decoder.c +++ b/src/cryptoconditions/src/asn/per_decoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "asn_application.h" diff --git a/src/cryptoconditions/src/asn/per_decoder.h b/src/cryptoconditions/src/asn/per_decoder.h index 89370b140..3d13859d7 100644 --- a/src/cryptoconditions/src/asn/per_decoder.h +++ b/src/cryptoconditions/src/asn/per_decoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/per_encoder.c b/src/cryptoconditions/src/asn/per_encoder.c index bc8da9a62..d0ff9139b 100644 --- a/src/cryptoconditions/src/asn/per_encoder.c +++ b/src/cryptoconditions/src/asn/per_encoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "asn_application.h" diff --git a/src/cryptoconditions/src/asn/per_encoder.h b/src/cryptoconditions/src/asn/per_encoder.h index 95a7bf2d6..da255b556 100644 --- a/src/cryptoconditions/src/asn/per_encoder.h +++ b/src/cryptoconditions/src/asn/per_encoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/per_opentype.c b/src/cryptoconditions/src/asn/per_opentype.c index b33468ecf..7f7ee61d9 100644 --- a/src/cryptoconditions/src/asn/per_opentype.c +++ b/src/cryptoconditions/src/asn/per_opentype.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/per_opentype.h b/src/cryptoconditions/src/asn/per_opentype.h index eefc3a8c8..43b16552f 100644 --- a/src/cryptoconditions/src/asn/per_opentype.h +++ b/src/cryptoconditions/src/asn/per_opentype.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/per_support.c b/src/cryptoconditions/src/asn/per_support.c index 92aa42b66..ad898484d 100644 --- a/src/cryptoconditions/src/asn/per_support.c +++ b/src/cryptoconditions/src/asn/per_support.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/per_support.h b/src/cryptoconditions/src/asn/per_support.h index 636e8380c..75a72744f 100644 --- a/src/cryptoconditions/src/asn/per_support.h +++ b/src/cryptoconditions/src/asn/per_support.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/xer_decoder.c b/src/cryptoconditions/src/asn/xer_decoder.c index 19155981d..585ad847c 100644 --- a/src/cryptoconditions/src/asn/xer_decoder.c +++ b/src/cryptoconditions/src/asn/xer_decoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/xer_decoder.h b/src/cryptoconditions/src/asn/xer_decoder.h index a081921fe..2893e323e 100644 --- a/src/cryptoconditions/src/asn/xer_decoder.h +++ b/src/cryptoconditions/src/asn/xer_decoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/xer_encoder.c b/src/cryptoconditions/src/asn/xer_encoder.c index ce42c8469..c187de5b3 100644 --- a/src/cryptoconditions/src/asn/xer_encoder.c +++ b/src/cryptoconditions/src/asn/xer_encoder.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/xer_encoder.h b/src/cryptoconditions/src/asn/xer_encoder.h index ef6c0f5b7..470808a1c 100644 --- a/src/cryptoconditions/src/asn/xer_encoder.h +++ b/src/cryptoconditions/src/asn/xer_encoder.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/asn/xer_support.c b/src/cryptoconditions/src/asn/xer_support.c index 07892d091..0826eed81 100644 --- a/src/cryptoconditions/src/asn/xer_support.c +++ b/src/cryptoconditions/src/asn/xer_support.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/asn/xer_support.h b/src/cryptoconditions/src/asn/xer_support.h index b830008bd..91657bf43 100644 --- a/src/cryptoconditions/src/asn/xer_support.h +++ b/src/cryptoconditions/src/asn/xer_support.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/cryptoconditions.c b/src/cryptoconditions/src/cryptoconditions.c index e9795dedf..e891fca30 100644 --- a/src/cryptoconditions/src/cryptoconditions.c +++ b/src/cryptoconditions/src/cryptoconditions.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/ed25519.c b/src/cryptoconditions/src/ed25519.c index ac92e00c3..9ec8f591b 100644 --- a/src/cryptoconditions/src/ed25519.c +++ b/src/cryptoconditions/src/ed25519.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/eval.c b/src/cryptoconditions/src/eval.c index d2f843972..d32e380ba 100644 --- a/src/cryptoconditions/src/eval.c +++ b/src/cryptoconditions/src/eval.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/include/cJSON.c b/src/cryptoconditions/src/include/cJSON.c index 5a6c15058..19d4a3607 100644 --- a/src/cryptoconditions/src/include/cJSON.c +++ b/src/cryptoconditions/src/include/cJSON.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/include/cJSON.h b/src/cryptoconditions/src/include/cJSON.h index b2fa212e9..492d61e36 100644 --- a/src/cryptoconditions/src/include/cJSON.h +++ b/src/cryptoconditions/src/include/cJSON.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/cryptoconditions/src/include/libbase58.h b/src/cryptoconditions/src/include/libbase58.h index e5c4215ce..91ce97465 100644 --- a/src/cryptoconditions/src/include/libbase58.h +++ b/src/cryptoconditions/src/include/libbase58.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/include/sha256.c b/src/cryptoconditions/src/include/sha256.c index 5e4079afe..ce23e0814 100644 --- a/src/cryptoconditions/src/include/sha256.c +++ b/src/cryptoconditions/src/include/sha256.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/include/sha256.h b/src/cryptoconditions/src/include/sha256.h index 97a5a548e..7c952b0ea 100644 --- a/src/cryptoconditions/src/include/sha256.h +++ b/src/cryptoconditions/src/include/sha256.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /*- diff --git a/src/cryptoconditions/src/include/tweetnacl.c b/src/cryptoconditions/src/include/tweetnacl.c index 2c23f2800..d07f81066 100644 --- a/src/cryptoconditions/src/include/tweetnacl.c +++ b/src/cryptoconditions/src/include/tweetnacl.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "tweetnacl.h" diff --git a/src/cryptoconditions/src/include/tweetnacl.h b/src/cryptoconditions/src/include/tweetnacl.h index 5aa5a830f..89a7de1d5 100644 --- a/src/cryptoconditions/src/include/tweetnacl.h +++ b/src/cryptoconditions/src/include/tweetnacl.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef TWEETNACL_H diff --git a/src/cryptoconditions/src/internal.h b/src/cryptoconditions/src/internal.h index a57e06c66..e7950c2ea 100644 --- a/src/cryptoconditions/src/internal.h +++ b/src/cryptoconditions/src/internal.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * diff --git a/src/cryptoconditions/src/json_rpc.c b/src/cryptoconditions/src/json_rpc.c index 4b930db9e..1ab57d0cc 100644 --- a/src/cryptoconditions/src/json_rpc.c +++ b/src/cryptoconditions/src/json_rpc.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/prefix.c b/src/cryptoconditions/src/prefix.c index f3eb14695..fc784dca5 100644 --- a/src/cryptoconditions/src/prefix.c +++ b/src/cryptoconditions/src/prefix.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/preimage.c b/src/cryptoconditions/src/preimage.c index 4032c57e5..765677902 100644 --- a/src/cryptoconditions/src/preimage.c +++ b/src/cryptoconditions/src/preimage.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/secp256k1.c b/src/cryptoconditions/src/secp256k1.c index ebec5c1c5..af46ad5dc 100644 --- a/src/cryptoconditions/src/secp256k1.c +++ b/src/cryptoconditions/src/secp256k1.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/threshold.c b/src/cryptoconditions/src/threshold.c index 2e20a6faf..323066e54 100644 --- a/src/cryptoconditions/src/threshold.c +++ b/src/cryptoconditions/src/threshold.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/cryptoconditions/src/utils.c b/src/cryptoconditions/src/utils.c index 62779ae7e..39b8d0566 100644 --- a/src/cryptoconditions/src/utils.c +++ b/src/cryptoconditions/src/utils.c @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/dbwrapper.cpp b/src/dbwrapper.cpp index 302e1136c..c4ee678e9 100644 --- a/src/dbwrapper.cpp +++ b/src/dbwrapper.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/dbwrapper.h b/src/dbwrapper.h index f16397003..113bc0b41 100644 --- a/src/dbwrapper.h +++ b/src/dbwrapper.h @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/deprecation.cpp b/src/deprecation.cpp index 4223c93b4..bdbda95cf 100644 --- a/src/deprecation.cpp +++ b/src/deprecation.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/deprecation.h b/src/deprecation.h index 6e6bf4586..b98cf3ec6 100644 --- a/src/deprecation.h +++ b/src/deprecation.h @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/fs.h b/src/fs.h index a0326946a..5152d5071 100644 --- a/src/fs.h +++ b/src/fs.h @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/gtest/json_test_vectors.cpp b/src/gtest/json_test_vectors.cpp index 0ac243b9c..81143df49 100644 --- a/src/gtest/json_test_vectors.cpp +++ b/src/gtest/json_test_vectors.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "json_test_vectors.h" diff --git a/src/gtest/json_test_vectors.h b/src/gtest/json_test_vectors.h index d92d5d47a..ca8d7726e 100644 --- a/src/gtest/json_test_vectors.h +++ b/src/gtest/json_test_vectors.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/main.cpp b/src/gtest/main.cpp index 9e4ecc81a..be474239b 100644 --- a/src/gtest/main.cpp +++ b/src/gtest/main.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "gmock/gmock.h" diff --git a/src/gtest/test_block.cpp b/src/gtest/test_block.cpp index 109c1cdf6..85a04dfea 100644 --- a/src/gtest/test_block.cpp +++ b/src/gtest/test_block.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_checkblock.cpp b/src/gtest/test_checkblock.cpp index 63ac7b5ca..a93de7527 100644 --- a/src/gtest/test_checkblock.cpp +++ b/src/gtest/test_checkblock.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_checktransaction.cpp b/src/gtest/test_checktransaction.cpp index d4ddd6026..581315934 100644 --- a/src/gtest/test_checktransaction.cpp +++ b/src/gtest/test_checktransaction.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_deprecation.cpp b/src/gtest/test_deprecation.cpp index e3eb8536a..86359b706 100644 --- a/src/gtest/test_deprecation.cpp +++ b/src/gtest/test_deprecation.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // Released under the GPLv3 diff --git a/src/gtest/test_equihash.cpp b/src/gtest/test_equihash.cpp index 3b3f2cc61..e3f950ff5 100644 --- a/src/gtest/test_equihash.cpp +++ b/src/gtest/test_equihash.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #if defined(HAVE_CONFIG_H) diff --git a/src/gtest/test_httprpc.cpp b/src/gtest/test_httprpc.cpp index 7c0daeacd..e362a0cc7 100644 --- a/src/gtest/test_httprpc.cpp +++ b/src/gtest/test_httprpc.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_keys.cpp b/src/gtest/test_keys.cpp index 02389522a..18e4f2d78 100644 --- a/src/gtest/test_keys.cpp +++ b/src/gtest/test_keys.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_keystore.cpp b/src/gtest/test_keystore.cpp index 28da20305..e0d57c64f 100644 --- a/src/gtest/test_keystore.cpp +++ b/src/gtest/test_keystore.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_libzcash_utils.cpp b/src/gtest/test_libzcash_utils.cpp index 02344875b..137aa7825 100644 --- a/src/gtest/test_libzcash_utils.cpp +++ b/src/gtest/test_libzcash_utils.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_mempool.cpp b/src/gtest/test_mempool.cpp index a237e5609..a5c5c4b6c 100644 --- a/src/gtest/test_mempool.cpp +++ b/src/gtest/test_mempool.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_merkletree.cpp b/src/gtest/test_merkletree.cpp index 394231974..8f8c0bd24 100644 --- a/src/gtest/test_merkletree.cpp +++ b/src/gtest/test_merkletree.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_metrics.cpp b/src/gtest/test_metrics.cpp index ba428bc82..a14e06527 100644 --- a/src/gtest/test_metrics.cpp +++ b/src/gtest/test_metrics.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_miner.cpp b/src/gtest/test_miner.cpp index 02ff4740a..d12ffb3d8 100644 --- a/src/gtest/test_miner.cpp +++ b/src/gtest/test_miner.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_noteencryption.cpp b/src/gtest/test_noteencryption.cpp index 0e187c3ff..dc58903ae 100644 --- a/src/gtest/test_noteencryption.cpp +++ b/src/gtest/test_noteencryption.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_pedersen_hash.cpp b/src/gtest/test_pedersen_hash.cpp index 389f23c04..3a7d80406 100644 --- a/src/gtest/test_pedersen_hash.cpp +++ b/src/gtest/test_pedersen_hash.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_pow.cpp b/src/gtest/test_pow.cpp index 193e3ecde..bbda2854e 100644 --- a/src/gtest/test_pow.cpp +++ b/src/gtest/test_pow.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_random.cpp b/src/gtest/test_random.cpp index 75463ff35..12dbe020e 100644 --- a/src/gtest/test_random.cpp +++ b/src/gtest/test_random.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_rpc.cpp b/src/gtest/test_rpc.cpp index 2c99e8ab3..1a2caff19 100644 --- a/src/gtest/test_rpc.cpp +++ b/src/gtest/test_rpc.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_sapling_note.cpp b/src/gtest/test_sapling_note.cpp index 04261149d..ee313dbc5 100644 --- a/src/gtest/test_sapling_note.cpp +++ b/src/gtest/test_sapling_note.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_tautology.cpp b/src/gtest/test_tautology.cpp index b470b0579..b7cbc9d73 100644 --- a/src/gtest/test_tautology.cpp +++ b/src/gtest/test_tautology.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_transaction_builder.cpp b/src/gtest/test_transaction_builder.cpp index a7cdea3d4..a6ec68e5a 100644 --- a/src/gtest/test_transaction_builder.cpp +++ b/src/gtest/test_transaction_builder.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "chainparams.h" diff --git a/src/gtest/test_txid.cpp b/src/gtest/test_txid.cpp index 35d9c1fc9..3d553c021 100644 --- a/src/gtest/test_txid.cpp +++ b/src/gtest/test_txid.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_upgrades.cpp b/src/gtest/test_upgrades.cpp index 433b97c31..affc4c47d 100644 --- a/src/gtest/test_upgrades.cpp +++ b/src/gtest/test_upgrades.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_validation.cpp b/src/gtest/test_validation.cpp index c77499819..1f80e608e 100644 --- a/src/gtest/test_validation.cpp +++ b/src/gtest/test_validation.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/test_zip32.cpp b/src/gtest/test_zip32.cpp index fb04af576..0c27b01c4 100644 --- a/src/gtest/test_zip32.cpp +++ b/src/gtest/test_zip32.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/gtest/utils.cpp b/src/gtest/utils.cpp index c28db1435..c19a2ad21 100644 --- a/src/gtest/utils.cpp +++ b/src/gtest/utils.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html int GenZero(int n) diff --git a/src/hash.cpp b/src/hash.cpp index 0991536a8..1a9b34050 100644 --- a/src/hash.cpp +++ b/src/hash.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2013-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hash.h b/src/hash.h index db7f84f27..f5f6560f2 100644 --- a/src/hash.h +++ b/src/hash.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hush-cli b/src/hush-cli index 785583a2b..ecd45bd74 100755 --- a/src/hush-cli +++ b/src/hush-cli @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 # set working directory to the location of this script diff --git a/src/hush-cli-testnet b/src/hush-cli-testnet index aab54cfa3..eb98bc2ea 100755 --- a/src/hush-cli-testnet +++ b/src/hush-cli-testnet @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # set working directory to the location of this script DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" diff --git a/src/hush-smart-chain b/src/hush-smart-chain index f98a8309d..537fdc9a3 100755 --- a/src/hush-smart-chain +++ b/src/hush-smart-chain @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # set working directory to the location of this script # readlink -f does not always exist DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" diff --git a/src/hush-tx b/src/hush-tx index a4af3a726..cbad82fc7 100755 --- a/src/hush-tx +++ b/src/hush-tx @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 # set working directory to the location of this script diff --git a/src/hush.h b/src/hush.h index 2c802f50b..14e8fd2f7 100644 --- a/src/hush.h +++ b/src/hush.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush/tlsenums.h b/src/hush/tlsenums.h index 414127c5a..e75e1993a 100644 --- a/src/hush/tlsenums.h +++ b/src/hush/tlsenums.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hush/tlsmanager.cpp b/src/hush/tlsmanager.cpp index 75fb17b1f..c0c280a42 100644 --- a/src/hush/tlsmanager.cpp +++ b/src/hush/tlsmanager.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/hush/tlsmanager.h b/src/hush/tlsmanager.h index 8d46f372c..5dd7f89e2 100644 --- a/src/hush/tlsmanager.h +++ b/src/hush/tlsmanager.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/hush/utiltls.cpp b/src/hush/utiltls.cpp index bfddb3724..e06b28ee1 100644 --- a/src/hush/utiltls.cpp +++ b/src/hush/utiltls.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zen Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hush/utiltls.h b/src/hush/utiltls.h index c69c82c41..206f6bdf0 100644 --- a/src/hush/utiltls.h +++ b/src/hush/utiltls.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2017 The Zen Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hush_bitcoind.h b/src/hush_bitcoind.h index 256bd2e15..4b6af7e53 100644 --- a/src/hush_bitcoind.h +++ b/src/hush_bitcoind.h @@ -1,4 +1,4 @@ -// Copyright 2016-2020 The Hush Developers +// Copyright (c) 2016-2021 The Hush Developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_cJSON.h b/src/hush_cJSON.h index a08957499..f83e1896d 100644 --- a/src/hush_cJSON.h +++ b/src/hush_cJSON.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /* diff --git a/src/hush_ccdata.h b/src/hush_ccdata.h index b7941f61e..c45cd3c62 100644 --- a/src/hush_ccdata.h +++ b/src/hush_ccdata.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_curve25519.h b/src/hush_curve25519.h index 0cc66f43d..5094719e7 100644 --- a/src/hush_curve25519.h +++ b/src/hush_curve25519.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_events.h b/src/hush_events.h index a1c7c3513..d3a0ffb21 100644 --- a/src/hush_events.h +++ b/src/hush_events.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_gateway.h b/src/hush_gateway.h index 0c0b56942..9beabb6fb 100644 --- a/src/hush_gateway.h +++ b/src/hush_gateway.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_globals.h b/src/hush_globals.h index 7b42f4cca..7bd1222b8 100644 --- a/src/hush_globals.h +++ b/src/hush_globals.h @@ -1,4 +1,4 @@ -// Copyright 2016-2020 The Hush Developers +// Copyright 2016-2021 The Hush Developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -17,7 +17,7 @@ ******************************************************************************/ #include "hush_defs.h" -void komodo_prefetch(FILE *fp); +void hush_prefetch(FILE *fp); uint32_t hush_heightstamp(int32_t height); void hush_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 kheight,uint32_t ktime,uint64_t opretvalue,uint8_t *opretbuf,uint16_t opretlen,uint16_t vout,uint256 MoM,int32_t MoMdepth); void komodo_init(int32_t height); diff --git a/src/hush_kv.h b/src/hush_kv.h index c4cd51e73..3fdde30ff 100644 --- a/src/hush_kv.h +++ b/src/hush_kv.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_nSPV.h b/src/hush_nSPV.h index 7a9f61802..b2576f7ea 100644 --- a/src/hush_nSPV.h +++ b/src/hush_nSPV.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_nSPV_fullnode.h b/src/hush_nSPV_fullnode.h index e67640025..53770f430 100644 --- a/src/hush_nSPV_fullnode.h +++ b/src/hush_nSPV_fullnode.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_nSPV_wallet.h b/src/hush_nSPV_wallet.h index a4fa01765..05c5d489f 100644 --- a/src/hush_nSPV_wallet.h +++ b/src/hush_nSPV_wallet.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_notary.h b/src/hush_notary.h index 8a748937b..53a4c0a33 100644 --- a/src/hush_notary.h +++ b/src/hush_notary.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -19,7 +19,6 @@ #include "hush_defs.h" #include "hush_cJSON.h" -#define KOMODO_MAINNET_START 178999 #define HUSH_NOTARIES_HEIGHT1 814000 const char *Notaries_genesis[][2] = diff --git a/src/hush_pax.h b/src/hush_pax.h index d2984e18c..0290749d4 100644 --- a/src/hush_pax.h +++ b/src/hush_pax.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_structs.h b/src/hush_structs.h index 6d872a7d1..1dda55a08 100644 --- a/src/hush_structs.h +++ b/src/hush_structs.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/hush_utils.h b/src/hush_utils.h index 23a7d39f2..439d85eab 100644 --- a/src/hush_utils.h +++ b/src/hush_utils.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -2475,7 +2475,7 @@ struct hush_state *hush_stateptr(char *symbol,char *dest) return(hush_stateptrget(symbol)); } -void komodo_prefetch(FILE *fp) +void hush_prefetch(FILE *fp) { long fsize,fpos; int32_t incr = 16*1024*1024; fpos = ftell(fp); diff --git a/src/hushd b/src/hushd index 477477d49..7aa99aeb0 100755 --- a/src/hushd +++ b/src/hushd @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/hushd-testnet b/src/hushd-testnet index 4612e7563..3e36b81f7 100755 --- a/src/hushd-testnet +++ b/src/hushd-testnet @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/importcoin.h b/src/importcoin.h index e82dc400c..f903d2e03 100644 --- a/src/importcoin.h +++ b/src/importcoin.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/init.h b/src/init.h index 4bdcc52a4..d87c862a0 100644 --- a/src/init.h +++ b/src/init.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/key.h b/src/key.h index 57b5d7aa4..80d0a643d 100644 --- a/src/key.h +++ b/src/key.h @@ -1,7 +1,7 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/key_io.cpp b/src/key_io.cpp index 23168435b..d575d97df 100644 --- a/src/key_io.cpp +++ b/src/key_io.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2014-2016 The Bitcoin Core developers // Copyright (c) 2016-2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/key_io.h b/src/key_io.h index 3955de511..f4647ee9f 100644 --- a/src/key_io.h +++ b/src/key_io.h @@ -1,7 +1,7 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2015 The Bitcoin Core developers // Copyright (c) 2016-2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/keystore.cpp b/src/keystore.cpp index 8b11a6d66..072b29ef9 100644 --- a/src/keystore.cpp +++ b/src/keystore.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/keystore.h b/src/keystore.h index c5409cfbf..27486d583 100644 --- a/src/keystore.h +++ b/src/keystore.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/komodo-tx.cpp b/src/komodo-tx.cpp index 38cada6f5..2d9814aa2 100644 --- a/src/komodo-tx.cpp +++ b/src/komodo-tx.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/main.cpp b/src/main.cpp index c37d98e7b..7d477d6cb 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** @@ -5575,7 +5575,7 @@ FILE* OpenDiskFile(const CDiskBlockPos &pos, const char *prefix, bool fReadOnly) } if ( pos.nFile < sizeof(didinit)/sizeof(*didinit) && didinit[pos.nFile] == 0 && strcmp(prefix,(char *)"blk") == 0 ) { - komodo_prefetch(file); + hush_prefetch(file); didinit[pos.nFile] = 1; } if (pos.nPos) { diff --git a/src/main.h b/src/main.h index a624fbd18..078e48cef 100644 --- a/src/main.h +++ b/src/main.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/metrics.cpp b/src/metrics.cpp index ee0b8847a..c6022cb95 100644 --- a/src/metrics.cpp +++ b/src/metrics.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2016 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/metrics.h b/src/metrics.h index 534e68f70..274f3ab95 100644 --- a/src/metrics.h +++ b/src/metrics.h @@ -1,5 +1,5 @@ // Copyright (c) 2016 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/miner.cpp b/src/miner.cpp index 28426e413..159682f32 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/miner.h b/src/miner.h index 5fc515dab..2cdd5106b 100644 --- a/src/miner.h +++ b/src/miner.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/net.h b/src/net.h index c84013f4f..bdc56de1b 100644 --- a/src/net.h +++ b/src/net.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/notarizationdb.cpp b/src/notarizationdb.cpp index 470513fa4..9ff61a8ed 100644 --- a/src/notarizationdb.cpp +++ b/src/notarizationdb.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "dbwrapper.h" diff --git a/src/notarizationdb.h b/src/notarizationdb.h index 9c34cf112..53d4f7318 100644 --- a/src/notarizationdb.h +++ b/src/notarizationdb.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef HUSH_NOTARISATIONDB_H diff --git a/src/pow.cpp b/src/pow.cpp index ab38f1174..703deb765 100644 --- a/src/pow.cpp +++ b/src/pow.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/pow.h b/src/pow.h index 6c692b432..0d6fd7f93 100644 --- a/src/pow.h +++ b/src/pow.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/pow/tromp/equi_miner.h b/src/pow/tromp/equi_miner.h index 0a2d6b132..74311018e 100644 --- a/src/pow/tromp/equi_miner.h +++ b/src/pow/tromp/equi_miner.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html // Copyright (c) 2016 John Tromp, The Zcash developers diff --git a/src/pow/tromp/osx_barrier.h b/src/pow/tromp/osx_barrier.h index 900fb2a49..16a365aeb 100644 --- a/src/pow/tromp/osx_barrier.h +++ b/src/pow/tromp/osx_barrier.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifdef __APPLE__ diff --git a/src/prevector.h b/src/prevector.h index 0e9fa232a..5d71e298b 100644 --- a/src/prevector.h +++ b/src/prevector.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef _HUSH_PREVECTOR_H_ diff --git a/src/primitives/block.cpp b/src/primitives/block.cpp index ed633326c..adf62f2d1 100644 --- a/src/primitives/block.cpp +++ b/src/primitives/block.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/primitives/block.h b/src/primitives/block.h index 25d036840..a3751dc48 100644 --- a/src/primitives/block.h +++ b/src/primitives/block.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/primitives/transaction.cpp b/src/primitives/transaction.cpp index aa02f867f..7e2580149 100644 --- a/src/primitives/transaction.cpp +++ b/src/primitives/transaction.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/primitives/transaction.h b/src/primitives/transaction.h index 9beaeda4a..3c6df21b2 100644 --- a/src/primitives/transaction.h +++ b/src/primitives/transaction.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/protocol.cpp b/src/protocol.cpp index 2dcb1d7d6..9da8265c3 100644 --- a/src/protocol.cpp +++ b/src/protocol.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/pubkey.cpp b/src/pubkey.cpp index a9197acf8..28e2595f3 100644 --- a/src/pubkey.cpp +++ b/src/pubkey.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/pubkey.h b/src/pubkey.h index 88a76ccd7..fd56c62d2 100644 --- a/src/pubkey.h +++ b/src/pubkey.h @@ -1,7 +1,7 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/purge b/src/purge index bf7807004..1480c40a8 100755 --- a/src/purge +++ b/src/purge @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Released under the GPLv3 echo "Purging $1" diff --git a/src/random.cpp b/src/random.cpp index 00bde4f94..8259118b3 100644 --- a/src/random.cpp +++ b/src/random.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/rest.cpp b/src/rest.cpp index 75705aff4..2a2dd5238 100644 --- a/src/rest.cpp +++ b/src/rest.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/blockchain.cpp b/src/rpc/blockchain.cpp index 54a4ab830..7c38ef1eb 100644 --- a/src/rpc/blockchain.cpp +++ b/src/rpc/blockchain.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/client.cpp b/src/rpc/client.cpp index c824b75c8..4da0e3744 100644 --- a/src/rpc/client.cpp +++ b/src/rpc/client.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/crosschain.cpp b/src/rpc/crosschain.cpp index 4112e54cf..0ac6fd46b 100644 --- a/src/rpc/crosschain.cpp +++ b/src/rpc/crosschain.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/mining.cpp b/src/rpc/mining.cpp index 810380929..d179bd590 100644 --- a/src/rpc/mining.cpp +++ b/src/rpc/mining.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/misc.cpp b/src/rpc/misc.cpp index 1a65565b7..d4f797b0e 100644 --- a/src/rpc/misc.cpp +++ b/src/rpc/misc.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/server.cpp b/src/rpc/server.cpp index 924eb8b55..5ae2c88e1 100644 --- a/src/rpc/server.cpp +++ b/src/rpc/server.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/rpc/server.h b/src/rpc/server.h index bcbaedcda..d809597f1 100644 --- a/src/rpc/server.h +++ b/src/rpc/server.h @@ -1,9 +1,8 @@ // Copyright (c) 2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush Developers +// Copyright (c) 2016-2021 The Hush Developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html - /****************************************************************************** * Copyright © 2014-2019 The SuperNET Developers. * * * @@ -18,7 +17,6 @@ * Removal or modification of this copyright notice is prohibited. * * * ******************************************************************************/ - #ifndef HUSH_RPCSERVER_H #define HUSH_RPCSERVER_H diff --git a/src/script/standard.cpp b/src/script/standard.cpp index 1213814e5..6a845499d 100644 --- a/src/script/standard.cpp +++ b/src/script/standard.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/script/standard.h b/src/script/standard.h index 2dc6a3d91..601b9e5cd 100644 --- a/src/script/standard.h +++ b/src/script/standard.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/sendalert.cpp b/src/sendalert.cpp index 0078d6858..e426cc09f 100644 --- a/src/sendalert.cpp +++ b/src/sendalert.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2016 The Zcash developers // Original code from: https://gist.github.com/laanwj/0e689cfa37b52bcbbb44 // Distributed under the GPLv3 software license, see the accompanying @@ -56,7 +56,7 @@ the bad alert. */ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "main.h" diff --git a/src/support/allocators/secure.h b/src/support/allocators/secure.h index 771eecaf3..90b9105ce 100644 --- a/src/support/allocators/secure.h +++ b/src/support/allocators/secure.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/support/allocators/zeroafterfree.h b/src/support/allocators/zeroafterfree.h index 2c4796570..e72715f6a 100644 --- a/src/support/allocators/zeroafterfree.h +++ b/src/support/allocators/zeroafterfree.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/sync.cpp b/src/sync.cpp index 691aed52f..6b8fd38f9 100644 --- a/src/sync.cpp +++ b/src/sync.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2011-2012 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/test-hush/main.cpp b/src/test-hush/main.cpp index db0cff3de..1a75d4196 100644 --- a/src/test-hush/main.cpp +++ b/src/test-hush/main.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "key.h" diff --git a/src/test-hush/test_addrman.cpp b/src/test-hush/test_addrman.cpp index b38fca4ed..afded7393 100644 --- a/src/test-hush/test_addrman.cpp +++ b/src/test-hush/test_addrman.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/test_coinimport.cpp b/src/test-hush/test_coinimport.cpp index 90f10fe1c..f4a4de578 100644 --- a/src/test-hush/test_coinimport.cpp +++ b/src/test-hush/test_coinimport.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test-hush/test_cryptoconditions.cpp b/src/test-hush/test_cryptoconditions.cpp index 66e7c7a51..09cf5de1d 100644 --- a/src/test-hush/test_cryptoconditions.cpp +++ b/src/test-hush/test_cryptoconditions.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/test_eval_bet.cpp b/src/test-hush/test_eval_bet.cpp index 9b87ad72c..5ff210393 100644 --- a/src/test-hush/test_eval_bet.cpp +++ b/src/test-hush/test_eval_bet.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/test_eval_notarization.cpp b/src/test-hush/test_eval_notarization.cpp index 1edb5e408..c0c1c6751 100644 --- a/src/test-hush/test_eval_notarization.cpp +++ b/src/test-hush/test_eval_notarization.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/test_netbase_tests.cpp b/src/test-hush/test_netbase_tests.cpp index b1b5871fa..fdd8605fb 100644 --- a/src/test-hush/test_netbase_tests.cpp +++ b/src/test-hush/test_netbase_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/test_parse_notarization.cpp b/src/test-hush/test_parse_notarization.cpp index c303eab61..5f7549071 100644 --- a/src/test-hush/test_parse_notarization.cpp +++ b/src/test-hush/test_parse_notarization.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/testutils.cpp b/src/test-hush/testutils.cpp index 6f04130f5..e68491f3b 100644 --- a/src/test-hush/testutils.cpp +++ b/src/test-hush/testutils.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/test-hush/testutils.h b/src/test-hush/testutils.h index a56ea7a45..4ac099606 100644 --- a/src/test-hush/testutils.h +++ b/src/test-hush/testutils.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef HUSH_TESTUTILS_H diff --git a/src/test/Checkpoints_tests.cpp b/src/test/Checkpoints_tests.cpp index af75ce0ed..12c9fdb30 100644 --- a/src/test/Checkpoints_tests.cpp +++ b/src/test/Checkpoints_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2011-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/DoS_tests.cpp b/src/test/DoS_tests.cpp index 787f09529..dff34f154 100644 --- a/src/test/DoS_tests.cpp +++ b/src/test/DoS_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/accounting_tests.cpp b/src/test/accounting_tests.cpp index 4432f5c15..3878b0bcd 100644 --- a/src/test/accounting_tests.cpp +++ b/src/test/accounting_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/addrman_tests.cpp b/src/test/addrman_tests.cpp index 41e896627..713a177ee 100644 --- a/src/test/addrman_tests.cpp +++ b/src/test/addrman_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "addrman.h" diff --git a/src/test/allocator_tests.cpp b/src/test/allocator_tests.cpp index c183613f8..57910903f 100644 --- a/src/test/allocator_tests.cpp +++ b/src/test/allocator_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/arith_uint256_tests.cpp b/src/test/arith_uint256_tests.cpp index 510b7421a..a9dc387a4 100644 --- a/src/test/arith_uint256_tests.cpp +++ b/src/test/arith_uint256_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2011-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/base32_tests.cpp b/src/test/base32_tests.cpp index dd2f9df91..2268aaf67 100644 --- a/src/test/base32_tests.cpp +++ b/src/test/base32_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/base58_tests.cpp b/src/test/base58_tests.cpp index 550ed6a95..2d7c1fd63 100644 --- a/src/test/base58_tests.cpp +++ b/src/test/base58_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2011-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/base64_tests.cpp b/src/test/base64_tests.cpp index 7654eb9b2..443350ded 100644 --- a/src/test/base64_tests.cpp +++ b/src/test/base64_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2011-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/bctest.py b/src/test/bctest.py index 0370e580f..77a0d821b 100644 --- a/src/test/bctest.py +++ b/src/test/bctest.py @@ -1,5 +1,5 @@ # Copyright 2014 BitPay, Inc. -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/bech32_tests.cpp b/src/test/bech32_tests.cpp index b190027e8..0e1168f61 100644 --- a/src/test/bech32_tests.cpp +++ b/src/test/bech32_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2017 Pieter Wuille -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/bip32_tests.cpp b/src/test/bip32_tests.cpp index a27800322..4708be5a2 100644 --- a/src/test/bip32_tests.cpp +++ b/src/test/bip32_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/bitcoin-util-test.py b/src/test/bitcoin-util-test.py index 3727e8c0a..a5bbba3bd 100755 --- a/src/test/bitcoin-util-test.py +++ b/src/test/bitcoin-util-test.py @@ -1,5 +1,5 @@ #!/usr/bin/env python -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Copyright 2014 BitPay, Inc. # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/bloom_tests.cpp b/src/test/bloom_tests.cpp index a261b7dbb..95a5788a7 100644 --- a/src/test/bloom_tests.cpp +++ b/src/test/bloom_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/checkblock_tests.cpp b/src/test/checkblock_tests.cpp index 3cb8ad09a..af9476a7c 100644 --- a/src/test/checkblock_tests.cpp +++ b/src/test/checkblock_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2013-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/coins_tests.cpp b/src/test/coins_tests.cpp index bafb87290..28f437715 100644 --- a/src/test/coins_tests.cpp +++ b/src/test/coins_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/compress_tests.cpp b/src/test/compress_tests.cpp index 3889f846c..89ab20e9e 100644 --- a/src/test/compress_tests.cpp +++ b/src/test/compress_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/convertbits_tests.cpp b/src/test/convertbits_tests.cpp index 656f8054c..59da44a7f 100644 --- a/src/test/convertbits_tests.cpp +++ b/src/test/convertbits_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2018 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/crypto_tests.cpp b/src/test/crypto_tests.cpp index f43f904a6..72cdd961c 100644 --- a/src/test/crypto_tests.cpp +++ b/src/test/crypto_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/dbwrapper_tests.cpp b/src/test/dbwrapper_tests.cpp index 758cab9c5..8ccb44bb1 100644 --- a/src/test/dbwrapper_tests.cpp +++ b/src/test/dbwrapper_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2018 The Zcash developers // Copyright (c) 2012-2017 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying diff --git a/src/test/equihash_tests.cpp b/src/test/equihash_tests.cpp index 23f9f2406..781281610 100644 --- a/src/test/equihash_tests.cpp +++ b/src/test/equihash_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2016 Jack Grigg // Copyright (c) 2016 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying diff --git a/src/test/getarg_tests.cpp b/src/test/getarg_tests.cpp index 5f23995ae..17755b807 100644 --- a/src/test/getarg_tests.cpp +++ b/src/test/getarg_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/hash_tests.cpp b/src/test/hash_tests.cpp index 945f34694..c074add74 100644 --- a/src/test/hash_tests.cpp +++ b/src/test/hash_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/key_tests.cpp b/src/test/key_tests.cpp index 3d553fafa..7f188e0ae 100644 --- a/src/test/key_tests.cpp +++ b/src/test/key_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/main_tests.cpp b/src/test/main_tests.cpp index a0eb5418f..92f952968 100644 --- a/src/test/main_tests.cpp +++ b/src/test/main_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/mempool_tests.cpp b/src/test/mempool_tests.cpp index 4a4f2ca8a..553867c66 100644 --- a/src/test/mempool_tests.cpp +++ b/src/test/mempool_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/miner_tests.cpp b/src/test/miner_tests.cpp index 58f2e53e5..ed2777c6d 100644 --- a/src/test/miner_tests.cpp +++ b/src/test/miner_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/mruset_tests.cpp b/src/test/mruset_tests.cpp index 0b6cd9dc1..9eef2896c 100644 --- a/src/test/mruset_tests.cpp +++ b/src/test/mruset_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/multisig_tests.cpp b/src/test/multisig_tests.cpp index a21f06223..b4a512210 100644 --- a/src/test/multisig_tests.cpp +++ b/src/test/multisig_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/netbase_tests.cpp b/src/test/netbase_tests.cpp index 694e8a3a8..db157164e 100644 --- a/src/test/netbase_tests.cpp +++ b/src/test/netbase_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/pmt_tests.cpp b/src/test/pmt_tests.cpp index 3b6fce9b0..61f85defb 100644 --- a/src/test/pmt_tests.cpp +++ b/src/test/pmt_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/policyestimator_tests.cpp b/src/test/policyestimator_tests.cpp index b44d022eb..a878a55cf 100644 --- a/src/test/policyestimator_tests.cpp +++ b/src/test/policyestimator_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2015 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/pow_tests.cpp b/src/test/pow_tests.cpp index 54181b989..d12f47468 100644 --- a/src/test/pow_tests.cpp +++ b/src/test/pow_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2015 The Bitcoin Core developers // Distributed under the GPLv3/X11 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/prevector_tests.cpp b/src/test/prevector_tests.cpp index d5ccafd33..a4e688154 100644 --- a/src/test/prevector_tests.cpp +++ b/src/test/prevector_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2015 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/raii_event_tests.cpp b/src/test/raii_event_tests.cpp index 23ea02307..450d11228 100644 --- a/src/test/raii_event_tests.cpp +++ b/src/test/raii_event_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2016 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/reverselock_tests.cpp b/src/test/reverselock_tests.cpp index c5484ce96..f5701ec38 100644 --- a/src/test/reverselock_tests.cpp +++ b/src/test/reverselock_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2015 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/rpc_tests.cpp b/src/test/rpc_tests.cpp index 0f9f4b1d3..74d303785 100644 --- a/src/test/rpc_tests.cpp +++ b/src/test/rpc_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/rpc_wallet_tests.cpp b/src/test/rpc_wallet_tests.cpp index 563ef18bd..f2b614a84 100644 --- a/src/test/rpc_wallet_tests.cpp +++ b/src/test/rpc_wallet_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2013-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/sanity_tests.cpp b/src/test/sanity_tests.cpp index 9b6e5a905..6d7df75e8 100644 --- a/src/test/sanity_tests.cpp +++ b/src/test/sanity_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/scheduler_tests.cpp b/src/test/scheduler_tests.cpp index b547045f4..1c4018ad9 100644 --- a/src/test/scheduler_tests.cpp +++ b/src/test/scheduler_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/script_P2PKH_tests.cpp b/src/test/script_P2PKH_tests.cpp index 5c99dd32e..70729446e 100644 --- a/src/test/script_P2PKH_tests.cpp +++ b/src/test/script_P2PKH_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2015 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/script_P2SH_tests.cpp b/src/test/script_P2SH_tests.cpp index a48fe5343..295e03ef8 100644 --- a/src/test/script_P2SH_tests.cpp +++ b/src/test/script_P2SH_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/script_tests.cpp b/src/test/script_tests.cpp index 173e7ff2c..f031787a8 100644 --- a/src/test/script_tests.cpp +++ b/src/test/script_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/scriptnum_tests.cpp b/src/test/scriptnum_tests.cpp index 41210eb7c..84538a968 100644 --- a/src/test/scriptnum_tests.cpp +++ b/src/test/scriptnum_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/serialize_tests.cpp b/src/test/serialize_tests.cpp index 6688f3988..ec7d69649 100644 --- a/src/test/serialize_tests.cpp +++ b/src/test/serialize_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/sha256compress_tests.cpp b/src/test/sha256compress_tests.cpp index 49646049a..fcf6ffabb 100644 --- a/src/test/sha256compress_tests.cpp +++ b/src/test/sha256compress_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "test/test_bitcoin.h" diff --git a/src/test/sigopcount_tests.cpp b/src/test/sigopcount_tests.cpp index b62262894..b40213d60 100644 --- a/src/test/sigopcount_tests.cpp +++ b/src/test/sigopcount_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2012-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/skiplist_tests.cpp b/src/test/skiplist_tests.cpp index 9efee8147..460ef4f10 100644 --- a/src/test/skiplist_tests.cpp +++ b/src/test/skiplist_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/test_bitcoin.cpp b/src/test/test_bitcoin.cpp index 79adfee2a..6d4d91485 100644 --- a/src/test/test_bitcoin.cpp +++ b/src/test/test_bitcoin.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/timedata_tests.cpp b/src/test/timedata_tests.cpp index a7de77c44..992419adb 100644 --- a/src/test/timedata_tests.cpp +++ b/src/test/timedata_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/torcontrol_tests.cpp b/src/test/torcontrol_tests.cpp index a14639c8d..fc4054d35 100644 --- a/src/test/torcontrol_tests.cpp +++ b/src/test/torcontrol_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2017 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp index 51dae9853..ed452a007 100644 --- a/src/test/transaction_tests.cpp +++ b/src/test/transaction_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/uint256_tests.cpp b/src/test/uint256_tests.cpp index 7cd956186..db330cc49 100644 --- a/src/test/uint256_tests.cpp +++ b/src/test/uint256_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2013 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/univalue_tests.cpp b/src/test/univalue_tests.cpp index 3bfaf92bb..020133b57 100644 --- a/src/test/univalue_tests.cpp +++ b/src/test/univalue_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright 2014 BitPay, Inc. // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/util_tests.cpp b/src/test/util_tests.cpp index 15a0f3d8f..c10d356f3 100644 --- a/src/test/util_tests.cpp +++ b/src/test/util_tests.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2011-2014 The Bitcoin Core developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/test/wallet-utility.py b/src/test/wallet-utility.py index 549112162..d5a5ba3db 100644 --- a/src/test/wallet-utility.py +++ b/src/test/wallet-utility.py @@ -1,6 +1,6 @@ #!/usr/bin/python # Copyright 2014 BitPay, Inc. -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers ## Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/timedata.cpp b/src/timedata.cpp index bfa7af3b7..2b891e0b6 100644 --- a/src/timedata.cpp +++ b/src/timedata.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2020 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/timedata.h b/src/timedata.h index 9f7d324b1..8bb0e0d3d 100644 --- a/src/timedata.h +++ b/src/timedata.h @@ -1,5 +1,5 @@ // Copyright (c) 2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2020 The Zcash developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/torcontrol.cpp b/src/torcontrol.cpp index 6e50bd974..d0743a298 100644 --- a/src/torcontrol.cpp +++ b/src/torcontrol.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2015-2017 The Bitcoin Core developers // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/torcontrol.h b/src/torcontrol.h index e1061afd9..f7e281429 100644 --- a/src/torcontrol.h +++ b/src/torcontrol.h @@ -1,5 +1,5 @@ // Copyright (c) 2015 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/transaction_builder.cpp b/src/transaction_builder.cpp index d7ae68069..c17051ff9 100644 --- a/src/transaction_builder.cpp +++ b/src/transaction_builder.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/transaction_builder.h b/src/transaction_builder.h index 4185b248f..dba7e7b43 100644 --- a/src/transaction_builder.h +++ b/src/transaction_builder.h @@ -1,5 +1,5 @@ // Copyright (c) 2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/txdb.cpp b/src/txdb.cpp index dc28b0512..e6b82332a 100644 --- a/src/txdb.cpp +++ b/src/txdb.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/txdb.h b/src/txdb.h index 5a38a0eb6..5122957e2 100644 --- a/src/txdb.h +++ b/src/txdb.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/txmempool.cpp b/src/txmempool.cpp index cac677198..b780d15d6 100644 --- a/src/txmempool.cpp +++ b/src/txmempool.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/txmempool.h b/src/txmempool.h index b30ea14ed..3f3abb47e 100644 --- a/src/txmempool.h +++ b/src/txmempool.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/util.cpp b/src/util.cpp index 1f9383907..71152f2bd 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/util.h b/src/util.h index 69410bb4b..ba2feb38e 100644 --- a/src/util.h +++ b/src/util.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/utilmoneystr.cpp b/src/utilmoneystr.cpp index f56bbb1af..78d8a1d00 100644 --- a/src/utilmoneystr.cpp +++ b/src/utilmoneystr.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "utilmoneystr.h" diff --git a/src/validationinterface.cpp b/src/validationinterface.cpp index 16f760de0..d9b06eb96 100644 --- a/src/validationinterface.cpp +++ b/src/validationinterface.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html . diff --git a/src/wallet-utility.cpp b/src/wallet-utility.cpp index 059a1b84e..32dad9c42 100644 --- a/src/wallet-utility.cpp +++ b/src/wallet-utility.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/wallet/asyncrpcoperation_mergetoaddress.cpp b/src/wallet/asyncrpcoperation_mergetoaddress.cpp index 6b3ef02d4..ac462f5b8 100644 --- a/src/wallet/asyncrpcoperation_mergetoaddress.cpp +++ b/src/wallet/asyncrpcoperation_mergetoaddress.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html . diff --git a/src/wallet/asyncrpcoperation_mergetoaddress.h b/src/wallet/asyncrpcoperation_mergetoaddress.h index b1eeae82d..afc029b74 100644 --- a/src/wallet/asyncrpcoperation_mergetoaddress.h +++ b/src/wallet/asyncrpcoperation_mergetoaddress.h @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/asyncrpcoperation_saplingconsolidation.cpp b/src/wallet/asyncrpcoperation_saplingconsolidation.cpp index 3200a31f6..2594fb4ce 100644 --- a/src/wallet/asyncrpcoperation_saplingconsolidation.cpp +++ b/src/wallet/asyncrpcoperation_saplingconsolidation.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2019 CryptoForge // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/asyncrpcoperation_sendmany.cpp b/src/wallet/asyncrpcoperation_sendmany.cpp index e5f73fb78..04d700c44 100644 --- a/src/wallet/asyncrpcoperation_sendmany.cpp +++ b/src/wallet/asyncrpcoperation_sendmany.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2016 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/wallet/asyncrpcoperation_sendmany.h b/src/wallet/asyncrpcoperation_sendmany.h index a524c970c..7000eaf10 100644 --- a/src/wallet/asyncrpcoperation_sendmany.h +++ b/src/wallet/asyncrpcoperation_sendmany.h @@ -1,5 +1,5 @@ // Copyright (c) 2016 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/asyncrpcoperation_shieldcoinbase.cpp b/src/wallet/asyncrpcoperation_shieldcoinbase.cpp index 1261d2ec7..e432ffdb0 100644 --- a/src/wallet/asyncrpcoperation_shieldcoinbase.cpp +++ b/src/wallet/asyncrpcoperation_shieldcoinbase.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/wallet/asyncrpcoperation_shieldcoinbase.h b/src/wallet/asyncrpcoperation_shieldcoinbase.h index 83b24694b..4121cbd2e 100644 --- a/src/wallet/asyncrpcoperation_shieldcoinbase.h +++ b/src/wallet/asyncrpcoperation_shieldcoinbase.h @@ -1,5 +1,5 @@ // Copyright (c) 2017 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/wallet/crypter.cpp b/src/wallet/crypter.cpp index 7a6b4aba4..17519c0ca 100644 --- a/src/wallet/crypter.cpp +++ b/src/wallet/crypter.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2009-2013 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/crypter.h b/src/wallet/crypter.h index fb58cd4b3..8df203a4b 100644 --- a/src/wallet/crypter.h +++ b/src/wallet/crypter.h @@ -1,5 +1,5 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/gtest/test_transaction.cpp b/src/wallet/gtest/test_transaction.cpp index 6c3fed533..9807c5774 100644 --- a/src/wallet/gtest/test_transaction.cpp +++ b/src/wallet/gtest/test_transaction.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/wallet/gtest/test_wallet.cpp b/src/wallet/gtest/test_wallet.cpp index fcdada5a2..7dd5fd683 100644 --- a/src/wallet/gtest/test_wallet.cpp +++ b/src/wallet/gtest/test_wallet.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/wallet/gtest/test_wallet_zkeys.cpp b/src/wallet/gtest/test_wallet_zkeys.cpp index f321dec3d..3a2c48845 100644 --- a/src/wallet/gtest/test_wallet_zkeys.cpp +++ b/src/wallet/gtest/test_wallet_zkeys.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include diff --git a/src/wallet/rpcdump.cpp b/src/wallet/rpcdump.cpp index ee567b1fd..8a5398945 100644 --- a/src/wallet/rpcdump.cpp +++ b/src/wallet/rpcdump.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/rpchushwallet.cpp b/src/wallet/rpchushwallet.cpp index d19662167..c13f22a97 100644 --- a/src/wallet/rpchushwallet.cpp +++ b/src/wallet/rpchushwallet.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Copyright (c) 2019 Cryptoforge // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/test/wallet_tests.cpp b/src/wallet/test/wallet_tests.cpp index 1f4648b3f..529449ba1 100644 --- a/src/wallet/test/wallet_tests.cpp +++ b/src/wallet/test/wallet_tests.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2012-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 92779a402..0a848ff33 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html @@ -3993,7 +3993,7 @@ CAmount CWallet::GetMinimumFee(unsigned int nTxBytes, unsigned int nConfirmTarge } -void komodo_prefetch(FILE *fp); +void hush_prefetch(FILE *fp); DBErrors CWallet::LoadWallet(bool& fFirstRunRet) { @@ -4006,7 +4006,7 @@ DBErrors CWallet::LoadWallet(bool& fFirstRunRet) FILE *fp; if ( (fp= fopen(strWalletFile.c_str(),"rb")) != 0 ) { - komodo_prefetch(fp); + hush_prefetch(fp); fclose(fp); } } diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h index 3c0d02e82..d78834727 100644 --- a/src/wallet/wallet.h +++ b/src/wallet/wallet.h @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/wallet/walletdb.cpp b/src/wallet/walletdb.cpp index 265ab6247..937d3b15c 100644 --- a/src/wallet/walletdb.cpp +++ b/src/wallet/walletdb.cpp @@ -1,6 +1,6 @@ // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2009-2014 The Bitcoin Core developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html /****************************************************************************** diff --git a/src/zcash/Address.cpp b/src/zcash/Address.cpp index 06699d8e7..58e0c9edc 100644 --- a/src/zcash/Address.cpp +++ b/src/zcash/Address.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Address.hpp b/src/zcash/Address.hpp index 6de95eb2b..a1465651c 100644 --- a/src/zcash/Address.hpp +++ b/src/zcash/Address.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/IncrementalMerkleTree.cpp b/src/zcash/IncrementalMerkleTree.cpp index 7e7c81cc4..5b3855497 100644 --- a/src/zcash/IncrementalMerkleTree.cpp +++ b/src/zcash/IncrementalMerkleTree.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/IncrementalMerkleTree.hpp b/src/zcash/IncrementalMerkleTree.hpp index df68388ab..03fa51fda 100644 --- a/src/zcash/IncrementalMerkleTree.hpp +++ b/src/zcash/IncrementalMerkleTree.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/JoinSplit.cpp b/src/zcash/JoinSplit.cpp index 6d715fd2e..d381f3f4b 100644 --- a/src/zcash/JoinSplit.cpp +++ b/src/zcash/JoinSplit.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #include "JoinSplit.hpp" diff --git a/src/zcash/JoinSplit.hpp b/src/zcash/JoinSplit.hpp index 6dc1c58f7..7d6efcdef 100644 --- a/src/zcash/JoinSplit.hpp +++ b/src/zcash/JoinSplit.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Note.cpp b/src/zcash/Note.cpp index 58279203a..3c0054937 100644 --- a/src/zcash/Note.cpp +++ b/src/zcash/Note.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Note.hpp b/src/zcash/Note.hpp index 617501943..c170e0722 100644 --- a/src/zcash/Note.hpp +++ b/src/zcash/Note.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/NoteEncryption.cpp b/src/zcash/NoteEncryption.cpp index f0c34d456..9f87e21d9 100644 --- a/src/zcash/NoteEncryption.cpp +++ b/src/zcash/NoteEncryption.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/NoteEncryption.hpp b/src/zcash/NoteEncryption.hpp index 951f9da27..2bc6c8d8f 100644 --- a/src/zcash/NoteEncryption.hpp +++ b/src/zcash/NoteEncryption.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Proof.cpp b/src/zcash/Proof.cpp index cf6ea275d..c1ef1bed7 100644 --- a/src/zcash/Proof.cpp +++ b/src/zcash/Proof.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Proof.hpp b/src/zcash/Proof.hpp index df2d82c08..7c5dadb9a 100644 --- a/src/zcash/Proof.hpp +++ b/src/zcash/Proof.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/Zcash.h b/src/zcash/Zcash.h index d33de633a..8b7b2240e 100644 --- a/src/zcash/Zcash.h +++ b/src/zcash/Zcash.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef ZC_ZCASH_H_ diff --git a/src/zcash/prf.cpp b/src/zcash/prf.cpp index 42e047197..e3685eb38 100644 --- a/src/zcash/prf.cpp +++ b/src/zcash/prf.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/prf.h b/src/zcash/prf.h index e17b5c28a..882ba6403 100644 --- a/src/zcash/prf.h +++ b/src/zcash/prf.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html // Zcash uses SHA256Compress as a PRF for various components diff --git a/src/zcash/util.cpp b/src/zcash/util.cpp index 1155effd2..1ad7a8b5e 100644 --- a/src/zcash/util.cpp +++ b/src/zcash/util.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/util.h b/src/zcash/util.h index fcda1db9c..3bd67e6d1 100644 --- a/src/zcash/util.h +++ b/src/zcash/util.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #ifndef ZC_UTIL_H_ diff --git a/src/zcash/zip32.cpp b/src/zcash/zip32.cpp index 0a32eea5f..c01b57774 100644 --- a/src/zcash/zip32.cpp +++ b/src/zcash/zip32.cpp @@ -1,5 +1,5 @@ // Copyright (c) 2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcash/zip32.h b/src/zcash/zip32.h index 305a4193d..47887351a 100644 --- a/src/zcash/zip32.h +++ b/src/zcash/zip32.h @@ -1,5 +1,5 @@ // Copyright (c) 2018 The Zcash developers -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcbenchmarks.cpp b/src/zcbenchmarks.cpp index 582b269b3..3476918e6 100644 --- a/src/zcbenchmarks.cpp +++ b/src/zcbenchmarks.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers // Distributed under the GPLv3 software license, see the accompanying // file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/src/zcbenchmarks.h b/src/zcbenchmarks.h index 267051877..c79081bc2 100644 --- a/src/zcbenchmarks.h +++ b/src/zcbenchmarks.h @@ -1,4 +1,4 @@ -// Copyright (c) 2016-2020 The Hush developers +// Copyright (c) 2016-2021 The Hush developers #ifndef BENCHMARKS_H #define BENCHMARKS_H diff --git a/src/zush b/src/zush index 829f57bc3..e6da90523 100755 --- a/src/zush +++ b/src/zush @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # set working directory to the location of this script # readlink -f does not always exist diff --git a/toolchain-info.sh b/toolchain-info.sh index af28dc0cf..5dca7ab6e 100755 --- a/toolchain-info.sh +++ b/toolchain-info.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html #TODO: detect other versions of gcc/clang diff --git a/zcutil/afl/afl-build.sh b/zcutil/afl/afl-build.sh index 4d65e74a7..a64d47de3 100755 --- a/zcutil/afl/afl-build.sh +++ b/zcutil/afl/afl-build.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html # A wrapper around ./zcutil/build.sh for instrumenting the build with AFL: diff --git a/zcutil/afl/afl-get.sh b/zcutil/afl/afl-get.sh index 914e4d795..255adeb17 100755 --- a/zcutil/afl/afl-get.sh +++ b/zcutil/afl/afl-get.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html # Obtains and builds a copy of AFL from source. diff --git a/zcutil/afl/afl-getbuildrun.sh b/zcutil/afl/afl-getbuildrun.sh index 434140f24..de9dba15b 100755 --- a/zcutil/afl/afl-getbuildrun.sh +++ b/zcutil/afl/afl-getbuildrun.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html # Builds AFL and an instrumented hushd, then begins fuzzing. diff --git a/zcutil/afl/afl-run.sh b/zcutil/afl/afl-run.sh index 7dc2e9af8..69e8cd9fd 100755 --- a/zcutil/afl/afl-run.sh +++ b/zcutil/afl/afl-run.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/zcutil/build-arm.sh b/zcutil/build-arm.sh index d0aae5d10..c721b3e57 100755 --- a/zcutil/build-arm.sh +++ b/zcutil/build-arm.sh @@ -1,6 +1,6 @@ #!/bin/bash # Copyright (c) 2019-2020 radix42 -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Original aarch64 port by radix42. Thank you! # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/zcutil/build-debian-package.sh b/zcutil/build-debian-package.sh index 421129702..af013cd9f 100755 --- a/zcutil/build-debian-package.sh +++ b/zcutil/build-debian-package.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html ## Usage: ./zcutil/build-debian-package.sh diff --git a/zcutil/build-mac.sh b/zcutil/build-mac.sh index 6a58ba9d6..1418e9d53 100755 --- a/zcutil/build-mac.sh +++ b/zcutil/build-mac.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/zcutil/build-win.sh b/zcutil/build-win.sh index 0f1acbf2c..efb7c2767 100755 --- a/zcutil/build-win.sh +++ b/zcutil/build-win.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html export HOST=x86_64-w64-mingw32 diff --git a/zcutil/build.sh b/zcutil/build.sh index c11159de7..012b4d3f1 100755 --- a/zcutil/build.sh +++ b/zcutil/build.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html diff --git a/zcutil/docker-entrypoint.sh b/zcutil/docker-entrypoint.sh index e5f116e6d..f8d29a15a 100755 --- a/zcutil/docker-entrypoint.sh +++ b/zcutil/docker-entrypoint.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016-2020 The Hush developers +# Copyright (c) 2016-2021 The Hush developers # Distributed under the GPLv3 software license, see the accompanying # file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html From 2da07fe585737b2b8378675afa5e2f03f9390eba Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sat, 17 Apr 2021 13:07:53 -0400 Subject: [PATCH 30/33] Bump release and protocol version --- configure.ac | 2 +- src/clientversion.h | 2 +- src/version.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 16766d197..526ad358d 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl require autoconf 2.60 (AS_ECHO/AS_ECHO_N) AC_PREREQ([2.60]) define(_CLIENT_VERSION_MAJOR, 3) define(_CLIENT_VERSION_MINOR, 7) -define(_CLIENT_VERSION_REVISION, 0) +define(_CLIENT_VERSION_REVISION, 1) define(_CLIENT_VERSION_BUILD, 50) define(_ZC_BUILD_VAL, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, m4_incr(_CLIENT_VERSION_BUILD), m4_eval(_CLIENT_VERSION_BUILD < 50), 1, m4_eval(_CLIENT_VERSION_BUILD - 24), m4_eval(_CLIENT_VERSION_BUILD == 50), 1, , m4_eval(_CLIENT_VERSION_BUILD - 50))) define(_CLIENT_VERSION_SUFFIX, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, _CLIENT_VERSION_REVISION-beta$1, m4_eval(_CLIENT_VERSION_BUILD < 50), 1, _CLIENT_VERSION_REVISION-rc$1, m4_eval(_CLIENT_VERSION_BUILD == 50), 1, _CLIENT_VERSION_REVISION, _CLIENT_VERSION_REVISION-$1))) diff --git a/src/clientversion.h b/src/clientversion.h index 4f64435bc..a7e850e7c 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -30,7 +30,7 @@ // Must be kept in sync with configure.ac , ugh! #define CLIENT_VERSION_MAJOR 3 #define CLIENT_VERSION_MINOR 7 -#define CLIENT_VERSION_REVISION 0 +#define CLIENT_VERSION_REVISION 1 #define CLIENT_VERSION_BUILD 50 //! Set to true for release, false for prerelease or test build diff --git a/src/version.h b/src/version.h index bc304b404..fde7afc4b 100644 --- a/src/version.h +++ b/src/version.h @@ -21,7 +21,7 @@ #define HUSH_VERSION_H // network protocol versioning -static const int PROTOCOL_VERSION = 1987421; +static const int PROTOCOL_VERSION = 1987422; //! initial proto version, to be increased after version/verack negotiation static const int INIT_PROTO_VERSION = 209; //! In this version, 'getheaders' was introduced. From cfcaf91709722c6e5751157135566f14486581d8 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 18 Apr 2021 11:47:16 -0400 Subject: [PATCH 31/33] Make p2pdebug messages default to off --- src/main.cpp | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 7d477d6cb..8887292d4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1457,7 +1457,6 @@ bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransactio if (iscoinbase == 0 && txout.nValue > 0) { // TODO: if we are upgraded to Sapling, we can allow Sprout sourced funds to sit in a transparent address - // char destaddr[65]; Getscriptaddress(destaddr,txout.scriptPubKey); if ( hush_isnotaryvout(destaddr,tiptime) == 0 ) @@ -6777,15 +6776,18 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, LogPrintf("dropmessagestest DROPPING RECV MESSAGE\n"); return true; } + auto p2pdebug = GetArg("-p2pdebug",0); - fprintf(stderr,"%s: netmsg: %s from %s\n", __func__, strCommand.c_str(), pfrom->addr.ToString().c_str() ); + if(p2pdebug) + fprintf(stderr,"%s: netmsg: %s from %s\n", __func__, strCommand.c_str(), pfrom->addr.ToString().c_str() ); if (strCommand == "version") { // Feeler connections exist only to verify if node is online if (pfrom->fFeeler) { assert(pfrom->fInbound == false); pfrom->fDisconnect = true; - fprintf(stderr,"%s: disconnecting feelerconn from %s\n", __func__, pfrom->addr.ToString().c_str() ); + if(p2pdebug) + fprintf(stderr,"%s: disconnecting feelerconn from %s\n", __func__, pfrom->addr.ToString().c_str() ); } // Each connection can only send one version message @@ -6962,7 +6964,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "addr") { vector vAddr; vRecv >> vAddr; - fprintf(stderr,"%s: processing add with vAddr.size=%lu\n", __func__, vAddr.size() ); + if(p2pdebug) + fprintf(stderr,"%s: processing add with vAddr.size=%lu\n", __func__, vAddr.size() ); // Don't want addr from older versions unless seeding if (pfrom->nVersion < CADDR_TIME_VERSION && addrman.size() > 1000) @@ -6980,7 +6983,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, BOOST_FOREACH(CAddress& addr, vAddr) { boost::this_thread::interruption_point(); - fprintf(stderr,"%s: %s.nTime=%d\n", __func__, addr.ToString().c_str(), addr.nTime); + if(p2pdebug) + fprintf(stderr,"%s: %s.nTime=%d\n", __func__, addr.ToString().c_str(), addr.nTime); if (addr.nTime <= 100000000 || addr.nTime > nNow + 10 * 60) addr.nTime = nNow - 5 * 24 * 60 * 60; @@ -7019,7 +7023,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, if (fReachable) { vAddrOk.push_back(addr); } else { - fprintf(stderr,"%s: %s with nTime=%d is not reachable\n",__func__,addr.ToString().c_str(), addr.nTime); + if(p2pdebug) + fprintf(stderr,"%s: %s with nTime=%d is not reachable\n",__func__,addr.ToString().c_str(), addr.nTime); } } addrman.Add(vAddrOk, pfrom->addr, 2 * 60 * 60); @@ -7141,7 +7146,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, else if (strCommand == "inv") { vector vInv; vRecv >> vInv; - fprintf(stderr,"%s: processing inv with vInv.size=%lu\n", __func__, vInv.size() ); + if(p2pdebug) + fprintf(stderr,"%s: processing inv with vInv.size=%lu\n", __func__, vInv.size() ); if (vInv.size() > MAX_INV_SZ) { Misbehaving(pfrom->GetId(), 20); @@ -7203,7 +7209,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "getdata") { vector vInv; vRecv >> vInv; - fprintf(stderr,"%s: getdata vInv.size=%lu\n", __func__, vInv.size() ); + if(p2pdebug) + fprintf(stderr,"%s: getdata vInv.size=%lu\n", __func__, vInv.size() ); if (vInv.size() > MAX_INV_SZ) { Misbehaving(pfrom->GetId(), 20); @@ -7534,7 +7541,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (strCommand == "mempool") { LOCK2(cs_main, pfrom->cs_filter); - fprintf(stderr,"%s: mempool\n",__func__); + //LogPrintf("%s: mempool request from %s",__func__, pfrom->addr.ToString().c_str()); // TODO: limit mempool requests per time and per peer std::vector vtxid; From 9be07c1452501108f0229c59c1619b1955eb7f06 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 18 Apr 2021 11:50:31 -0400 Subject: [PATCH 32/33] man pages --- contrib/devtools/gen-manpages.sh | 14 ++++++++------ doc/man/hush-cli.1 | 8 ++++---- doc/man/hush-tx.1 | 8 ++++---- doc/man/hushd.1 | 10 +++++----- 4 files changed, 21 insertions(+), 19 deletions(-) diff --git a/contrib/devtools/gen-manpages.sh b/contrib/devtools/gen-manpages.sh index f4f569710..bb2f48f5d 100755 --- a/contrib/devtools/gen-manpages.sh +++ b/contrib/devtools/gen-manpages.sh @@ -12,14 +12,16 @@ HUSHTX=${HUSHTX:-$SRCDIR/hush-tx} [ ! -x $HUSHD ] && echo "$HUSHD not found or not executable." && exit 1 +# TODO: this does not work correctly, when help2man is installed, it still fails # Check if help2man is installed # If not then display error to user and exit -if ! command -v help2man &> /dev/null -then - echo "help2man could not be found" - echo "Please install from your Linux package manager and try again" - exit -fi +#if ! command -v help2man &> /dev/null +#then +# echo "help2man could not be found" +# echo "Please install from your Linux package manager and try again" +# echo "On Debian-based systems you can do: apt-get install help2man" +# exit +#fi # use this if hushd is not running #HUSHVER="v3.6.2" diff --git a/doc/man/hush-cli.1 b/doc/man/hush-cli.1 index 7c381a192..63d05ac06 100644 --- a/doc/man/hush-cli.1 +++ b/doc/man/hush-cli.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.10. -.TH HUSH-CLI "1" "March 2021" "hush-cli v3.7.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH HUSH-CLI "1" "April 2021" "hush-cli v3.7.1" "User Commands" .SH NAME -hush-cli \- manual page for hush-cli v3.7.0 +hush-cli \- manual page for hush-cli v3.7.1 .SH DESCRIPTION -Hush RPC client version v3.7.0\-af5f461d0 +Hush RPC client version v3.7.1\-2da07fe58\-dirty .PP In order to ensure you are adequately protecting your privacy when using Hush, please see . diff --git a/doc/man/hush-tx.1 b/doc/man/hush-tx.1 index daba9cb8e..37c17b9b4 100644 --- a/doc/man/hush-tx.1 +++ b/doc/man/hush-tx.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.10. -.TH HUSH-TX "1" "March 2021" "hush-tx v3.7.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH HUSH-TX "1" "April 2021" "hush-tx v3.7.1" "User Commands" .SH NAME -hush-tx \- manual page for hush-tx v3.7.0 +hush-tx \- manual page for hush-tx v3.7.1 .SH DESCRIPTION -hush\-tx utility version v3.7.0\-af5f461d0 +hush\-tx utility version v3.7.1\-2da07fe58\-dirty .SS "Usage:" .TP hush\-tx [options] [commands] diff --git a/doc/man/hushd.1 b/doc/man/hushd.1 index 5b443aab1..23959cf1b 100644 --- a/doc/man/hushd.1 +++ b/doc/man/hushd.1 @@ -1,9 +1,9 @@ -.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.10. -.TH HUSHD "1" "March 2021" "hushd v3.7.0" "User Commands" +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13. +.TH HUSHD "1" "April 2021" "hushd v3.7.1" "User Commands" .SH NAME -hushd \- manual page for hushd v3.7.0 +hushd \- manual page for hushd v3.7.1 .SH DESCRIPTION -Hush Daemon version v3.7.0\-af5f461d0 +Hush Daemon version v3.7.1\-2da07fe58\-dirty .PP In order to ensure you are adequately protecting your privacy when using Hush, please see . @@ -556,7 +556,7 @@ multiple times .HP \fB\-rpcthreads=\fR .IP -Set the number of threads to service RPC calls (default: 4) +Set the number of threads to service RPC calls (default: 8) .PP Metrics Options (only if \fB\-daemon\fR and \fB\-printtoconsole\fR are not set): .HP From 40edc039fb8d6cb2cf677540d522992651098037 Mon Sep 17 00:00:00 2001 From: Duke Leto Date: Sun, 18 Apr 2021 12:11:14 -0400 Subject: [PATCH 33/33] Checkpoints --- src/chainparams.cpp | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/src/chainparams.cpp b/src/chainparams.cpp index be2216d17..9cd9bb7f9 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -763,10 +763,32 @@ void *chainparams_commandline() { (472000, uint256S("0x0000001f727ffbe5b1ad17206c060aa77e9b20257f1764f1ac018a0f64f19bd1")) (473000, uint256S("0x0000000b7ee1e1d0f6b577c02a924733d2c4d6d5805daa51e44e543eadacba8b")) (474000, uint256S("0x0000001260b7935e520244a3591cb6b37de3b36c45dae5318f0bb7eda6847e17")) - (475000, uint256S("0x0000000db956f0dcecc58ccfc8463f49910d455fc3c223ab36a93c5c468513cc")), - (int64_t) 1617173192, // time of last checkpointed block - (int64_t) 809511, // total txs - (double) 3228 // txs in the last day before block 475640 + (475000, uint256S("0x0000000db956f0dcecc58ccfc8463f49910d455fc3c223ab36a93c5c468513cc")) + (476000, uint256S("0x00000014b1ab6d1690231cbda442ba650ef0935b8b4af0729916ecc1c1a2989c")) + (477000, uint256S("0x0000000c36226af290a2a7744dbcf63b11db9461a7d33b189015b3d751d6acec")) + (478000, uint256S("0x00000002a5d3126c1b40cce8e8e0cf704a8738a04779e79fc056c67ac581178b")) + (479000, uint256S("0x0000000c4f9d596db63f21d129b2662cfe557960493ab625791c770ed53cc80e")) + (480000, uint256S("0x00000009cc852a3483357b3dcecffc2b3beb84c0eec3d884839260d296425d2c")) + (481000, uint256S("0x00000004d3235fe96cd4081679233c82849864be5125e96b4a9c4c0b48bd6e4f")) + (482000, uint256S("0x00000015c6231287c336bf35531a1e92e2e987d8b03e0cc1f1bc5beace0fc980")) + (483000, uint256S("0x0000000a047732481649fce4cdb762cc227963932788ef656ea522d8c719c9c5")) + (484000, uint256S("0x0000001305ab52bdcf98f484e06d8307d82f29dca0597483961e93035f93419f")) + (485000, uint256S("0x00000004a70f2cedfcc478b72666ef04f4831d1498bf859c79eec3314d35f373")) + (486000, uint256S("0x0000000299f0350d0740cd83357be1e9cb9b655169711964dbcf93948e1f1d67")) + (487000, uint256S("0x00000001b4c71614b8a18f5f4948be6e401026ebf02ddf0126541da4e3fb3772")) + (488000, uint256S("0x0000003a3d4e5cb180917aba3f8261a149de3bfd6f6b735caeb3d925c3f9a09d")) + (489000, uint256S("0x00000007be9b81960082d683f138bc12f8d8c4cd16fec1ff35858e57372778bf")) + (490000, uint256S("0x00000001f5787442f49129b71532a0571c5779bbd47e16e68515146e9084fbc6")) + (491000, uint256S("0x00000009cf0c34a427174b044d3c6648574d55d1e6fa4f21d3e74df9374b9713")) + (492000, uint256S("0x00000013bbbff98ddab19a3178a0088a20628791e94963e5d1ea635015dfa9c6")) + (493000, uint256S("0x00000001ed829c061ba14f6953e79d99577079adf5526f1e43e6dc9d9f9571bf")) + (494000, uint256S("0x00000018dfeced2d1584a1003fefa4349810239bade096e53b4fa6bbc38a1685")) + (495000, uint256S("0x0000001816af55724cd49c0bfe02c9eac29b4a73db2b7d868b958218a03e6c94")) + (496000, uint256S("0x000000007e2019c5246db5a75122c6826822fa154d68a51eee2ff23f54ec668e")), + (int64_t) 1618760194, // time of last checkpointed block + (int64_t) 842496, // total txs + (double) 1812 // txs in the last day before block 496013 + }; } else { checkpointData = //(Checkpoints::CCheckpointData) @@ -781,7 +803,7 @@ void *chainparams_commandline() { } pCurrentParams->SetCheckpointData(checkpointData); - fprintf(stderr,"%s: Set checkpoint data\n", __func__); + fprintf(stderr,"%s: Checkpoint data loaded\n", __func__); ASSETCHAIN_INIT = 1; return(0);