Browse Source

Fix lots of little things that were undone by migrating Hush to KMD source code

dev-aarch64
Duke Leto 5 years ago
parent
commit
b00cda1c09
  1. 6
      doc/dnsseed-policy.md
  2. 10
      src/bitcoin-tx-res.rc
  3. 36
      src/bitcoind.cpp
  4. 4
      src/httpserver.cpp
  5. 3
      src/init.cpp
  6. 11
      src/main.cpp
  7. 11
      src/metrics.cpp
  8. 9
      src/util.cpp
  9. 2
      src/util.h
  10. 2
      src/wallet/walletdb.cpp

6
doc/dnsseed-policy.md

@ -42,13 +42,13 @@ details of their operating practices.
related to the DNS seed operation.
If these expectations cannot be satisfied the operator should discontinue
providing services and contact the active Zcash development team as well as
creating an issue in the [Zcash repository](https://github.com/zcash/zcash).
providing services and contact the active Hush development team as well as
creating an issue in the [Hush Github repository](https://github.com/MyHush/hush3).
Behavior outside of these expectations may be reasonable in some
situations but should be discussed in public in advance.
See also
----------
- [zcash-seeder](https://github.com/zcash/zcash-seeder) is a reference
- [hush-seeder](https://github.com/MyHush/hush-seeder) is a reference
implementation of a DNS seed.

10
src/bitcoin-tx-res.rc

@ -16,14 +16,14 @@ BEGIN
BEGIN
BLOCK "040904E4" // U.S. English - multilingual (hex)
BEGIN
VALUE "CompanyName", "Zcash"
VALUE "FileDescription", "zcash-tx (CLI Zcash transaction editor utility)"
VALUE "CompanyName", "Hush"
VALUE "FileDescription", "hush-tx (CLI Zcash transaction editor utility)"
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", "zcash-tx"
VALUE "InternalName", "hush-tx"
VALUE "LegalCopyright", COPYRIGHT_STR
VALUE "LegalTrademarks1", "Distributed under the MIT software license, see the accompanying file COPYING or http://www.opensource.org/licenses/mit-license.php."
VALUE "OriginalFilename", "zcash-tx.exe"
VALUE "ProductName", "zcash-tx"
VALUE "OriginalFilename", "hush-tx.exe"
VALUE "ProductName", "hush-tx"
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
END
END

36
src/bitcoind.cpp

@ -1,5 +1,6 @@
// Copyright (c) 2009-2010 Satoshi Nakamoto
// Copyright (c) 2009-2013 The Bitcoin Core developers
// Copyright (c) 2019 The Hush developers
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
@ -70,12 +71,17 @@ CBlockIndex *komodo_chainactive(int32_t height);
void WaitForShutdown(boost::thread_group* threadGroup)
{
int32_t i,height; CBlockIndex *pindex; bool fShutdown = ShutdownRequested(); const uint256 zeroid;
fprintf(stderr,"%s: fShutdown=%d, KOMODO_EARLYTXID_HEIGHT=%d\n", __FUNCTION__, fShutdown, KOMODO_EARLYTXID_HEIGHT);
// Tell the main threads to shutdown.
if (komodo_currentheight()>KOMODO_EARLYTXID_HEIGHT && KOMODO_EARLYTXID!=zeroid && ((height=tx_height(KOMODO_EARLYTXID))==0 || height>KOMODO_EARLYTXID_HEIGHT))
{
fprintf(stderr,"error: earlytx must be before block height %d or tx does not exist\n",KOMODO_EARLYTXID_HEIGHT);
StartShutdown();
}
fprintf(stderr,"%s: earlytx height=%d, ASSETCHAINS_CBOPRET=%li\n", __FUNCTION__, height, ASSETCHAINS_CBOPRET);
/*if ( ASSETCHAINS_STAKED == 0 && ASSETCHAINS_ADAPTIVEPOW == 0 && (pindex= komodo_chainactive(1)) != 0 )
{
if ( pindex->nTime > ADAPTIVEPOW_CHANGETO_DEFAULTON )
@ -84,11 +90,14 @@ void WaitForShutdown(boost::thread_group* threadGroup)
fprintf(stderr,"default activate adaptivepow\n");
} else fprintf(stderr,"height1 time %u vs %u\n",pindex->nTime,ADAPTIVEPOW_CHANGETO_DEFAULTON);
} //else fprintf(stderr,"cant find height 1\n");*/
if ( ASSETCHAINS_CBOPRET != 0 )
if ( ASSETCHAINS_CBOPRET != 0 ) {
komodo_pricesinit();
}
while (!fShutdown)
{
//fprintf(stderr,"call passport iteration\n");
fprintf(stderr,"call passport iteration\n");
if ( ASSETCHAINS_SYMBOL[0] == 0 )
{
if ( KOMODO_NSPV_FULLNODE )
@ -100,9 +109,7 @@ void WaitForShutdown(boost::thread_group* threadGroup)
break;
MilliSleep(1000);
}
}
else
{
} else {
//komodo_interestsum();
//komodo_longestchain();
if ( ASSETCHAINS_CBOPRET != 0 )
@ -117,6 +124,8 @@ void WaitForShutdown(boost::thread_group* threadGroup)
}
fShutdown = ShutdownRequested();
}
fprintf(stderr,"%s: fShutdown=%d\n", __FUNCTION__, fShutdown);
if (threadGroup)
{
Interrupt(*threadGroup);
@ -141,6 +150,8 @@ bool AppInit(int argc, char* argv[])
bool fRet = false;
fprintf(stderr, "%s start, argc=%d\n", __FUNCTION__, argc);
//
// Parameters
//
@ -189,6 +200,7 @@ bool AppInit(int argc, char* argv[])
}
try
{
fprintf(stderr, "%s reading config file\n", __FUNCTION__);
ReadConfigFile(mapArgs, mapMultiArgs);
} catch (const missing_zcash_conf& e) {
fprintf(stderr,
@ -216,9 +228,12 @@ bool AppInit(int argc, char* argv[])
// Command-line RPC
bool fCommandLine = false;
for (int i = 1; i < argc; i++)
if (!IsSwitchChar(argv[i][0]) && !boost::algorithm::istarts_with(argv[i], "komodo:"))
for (int i = 1; i < argc; i++) {
//TODO: should this be hush: or komodo: ??
if (!IsSwitchChar(argv[i][0]) && !boost::algorithm::istarts_with(argv[i], "komodo:")) {
fCommandLine = true;
}
}
if (fCommandLine)
{
@ -252,20 +267,23 @@ bool AppInit(int argc, char* argv[])
#endif
SoftSetBoolArg("-server", true);
fprintf(stderr,"%s: Running AppInit2()\n", __FUNCTION__);
fRet = AppInit2(threadGroup, scheduler);
}
catch (const std::exception& e) {
fprintf(stderr,"%s: Finished AppInit2(), fRet=%d\n", __FUNCTION__, fRet);
} catch (const std::exception& e) {
PrintExceptionContinue(&e, "AppInit()");
} catch (...) {
PrintExceptionContinue(NULL, "AppInit()");
}
if (!fRet)
{
fprintf(stderr,"%s: Interrupting threadGroup\n", __FUNCTION__);
Interrupt(threadGroup);
// threadGroup.join_all(); was left out intentionally here, because we didn't re-test all of
// the startup-failure cases to make sure they don't result in a hang due to some
// thread-blocking-waiting-for-another-thread-during-startup case
} else {
fprintf(stderr,"%s: Waiting for Shutdown\n", __FUNCTION__);
WaitForShutdown(&threadGroup);
}
Shutdown();

4
src/httpserver.cpp

@ -306,7 +306,7 @@ static void http_reject_request_cb(struct evhttp_request* req, void*)
/** Event dispatcher thread */
static void ThreadHTTP(struct event_base* base, struct evhttp* http)
{
RenameThread("zcash-http");
RenameThread("hush-http");
LogPrint("http", "Entering http event loop\n");
event_base_dispatch(base);
// Event loop will be interrupted by InterruptHTTPServer()
@ -355,7 +355,7 @@ static bool HTTPBindAddresses(struct evhttp* http)
/** Simple wrapper to set thread name and run work queue */
static void HTTPWorkQueueRun(WorkQueue<HTTPClosure>* queue)
{
RenameThread("zcash-httpworker");
RenameThread("hush-httpworker");
queue->Run();
}

3
src/init.cpp

@ -219,7 +219,6 @@ void Shutdown()
/// module was initialized.
static char shutoffstr[128];
sprintf(shutoffstr,"%s-shutoff",ASSETCHAINS_SYMBOL);
//RenameThread("verus-shutoff");
RenameThread(shutoffstr);
mempool.AddTransactionsUpdated(1);
@ -674,7 +673,7 @@ void CleanupBlockRevFiles()
void ThreadImport(std::vector<boost::filesystem::path> vImportFiles)
{
RenameThread("zcash-loadblk");
RenameThread("hush-loadblk");
// -reindex
if (fReindex) {
CImportingNow imp;

11
src/main.cpp

@ -1,5 +1,6 @@
// Copyright (c) 2009-2010 Satoshi Nakamoto
// Copyright (c) 2009-2014 The Bitcoin Core developers
// Copyright (c) 2019 The Hush developers
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
@ -3352,7 +3353,7 @@ bool FindUndoPos(CValidationState &state, int nFile, CDiskBlockPos &pos, unsigne
static CCheckQueue<CScriptCheck> scriptcheckqueue(128);
void ThreadScriptCheck() {
RenameThread("zcash-scriptch");
RenameThread("hush-scriptch");
scriptcheckqueue.Thread();
}
@ -4260,6 +4261,7 @@ static int64_t nTimePostConnect = 0;
*/
bool static ConnectTip(CValidationState &state, CBlockIndex *pindexNew, CBlock *pblock) {
fprintf(stderr, "%s: Start\n", __FUNCTION__);
assert(pindexNew->pprev == chainActive.Tip());
// Read block from disk.
int64_t nTime1 = GetTimeMicros();
@ -4270,7 +4272,8 @@ bool static ConnectTip(CValidationState &state, CBlockIndex *pindexNew, CBlock *
pblock = &block;
}
KOMODO_CONNECTING = (int32_t)pindexNew->GetHeight();
//fprintf(stderr,"%s connecting ht.%d maxsize.%d vs %d\n",ASSETCHAINS_SYMBOL,(int32_t)pindexNew->GetHeight(),MAX_BLOCK_SIZE(pindexNew->GetHeight()),(int32_t)::GetSerializeSize(*pblock, SER_NETWORK, PROTOCOL_VERSION));
fprintf(stderr,"%s connecting ht.%d maxsize.%d vs %d\n",ASSETCHAINS_SYMBOL,(int32_t)pindexNew->GetHeight(),MAX_BLOCK_SIZE(pindexNew->GetHeight()),(int32_t)::GetSerializeSize(*pblock, SER_NETWORK, PROTOCOL_VERSION));
// Get the current commitment tree
SproutMerkleTree oldSproutTree;
SaplingMerkleTree oldSaplingTree;
@ -4348,7 +4351,7 @@ bool static ConnectTip(CValidationState &state, CBlockIndex *pindexNew, CBlock *
if ( KOMODO_LONGESTCHAIN != 0 && (pindexNew->GetHeight() == KOMODO_LONGESTCHAIN || pindexNew->GetHeight() == KOMODO_LONGESTCHAIN+1) )
KOMODO_INSYNC = (int32_t)pindexNew->GetHeight();
else KOMODO_INSYNC = 0;
//fprintf(stderr,"connect.%d insync.%d ASSETCHAINS_SAPLING.%d\n",(int32_t)pindexNew->GetHeight(),KOMODO_INSYNC,ASSETCHAINS_SAPLING);
fprintf(stderr,"connect.%d insync.%d ASSETCHAINS_SAPLING.%d\n",(int32_t)pindexNew->GetHeight(),KOMODO_INSYNC,ASSETCHAINS_SAPLING);
/*if ( KOMODO_INSYNC != 0 ) //ASSETCHAINS_SYMBOL[0] == 0 &&
komodo_broadcast(pblock,8);
else if ( ASSETCHAINS_SYMBOL[0] != 0 )
@ -4448,6 +4451,7 @@ static void PruneBlockIndexCandidates() {
* pblock is either NULL or a pointer to a CBlock corresponding to pindexMostWork.
*/
static bool ActivateBestChainStep(bool fSkipdpow, CValidationState &state, CBlockIndex *pindexMostWork, CBlock *pblock) {
fprintf(stderr,"%s: fSkipdpow=%d\n", __FUNCTION__, fSkipdpow);
AssertLockHeld(cs_main);
bool fInvalidFound = false;
const CBlockIndex *pindexOldTip = chainActive.Tip();
@ -4583,6 +4587,7 @@ static bool ActivateBestChainStep(bool fSkipdpow, CValidationState &state, CBloc
* that is already loaded (to avoid loading it again from disk).
*/
bool ActivateBestChain(bool fSkipdpow, CValidationState &state, CBlock *pblock) {
fprintf(stderr,"%s: fSkipdpow=%d\n", __FUNCTION__, fSkipdpow);
CBlockIndex *pindexNewTip = NULL;
CBlockIndex *pindexMostWork = NULL;
const CChainParams& chainParams = Params();

11
src/metrics.cpp

@ -1,4 +1,5 @@
// Copyright (c) 2016 The Zcash developers
// Copyright (c) 2019 The Hush developers
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
@ -298,7 +299,7 @@ int printMiningStatus(bool mining)
lines++;
} else {
std::cout << _("You are currently not mining.") << std::endl;
std::cout << _("To enable mining, add 'gen=1' to your zcash.conf and restart.") << std::endl;
std::cout << _("To enable mining, add 'gen=1' to your HUSH3.conf and restart.") << std::endl;
lines += 2;
}
std::cout << std::endl;
@ -479,7 +480,7 @@ bool enableVTMode()
void ThreadShowMetricsScreen()
{
// Make this thread recognisable as the metrics screen thread
RenameThread("zcash-metrics-screen");
RenameThread("hush-metrics-screen");
// Determine whether we should render a persistent UI or rolling metrics
bool isTTY = isatty(STDOUT_FILENO);
@ -499,8 +500,8 @@ void ThreadShowMetricsScreen()
std::cout << std::endl;
// Thank you text
std::cout << _("Thank you for running a Zcash node!") << std::endl;
std::cout << _("You're helping to strengthen the network and contributing to a social good :)") << std::endl;
std::cout << _("Thank you for running a Hush node!") << std::endl;
std::cout << _("You are helping secure the network and others Speak And Transact Freely!") << std::endl;
// Privacy notice text
std::cout << PrivacyInfo();
@ -552,7 +553,7 @@ void ThreadShowMetricsScreen()
// Explain how to exit
std::cout << "[";
#ifdef WIN32
std::cout << _("'zcash-cli.exe stop' to exit");
std::cout << _("'hush-cli.exe stop' to exit");
#else
std::cout << _("Press Ctrl+C to exit");
#endif

9
src/util.cpp

@ -539,10 +539,10 @@ boost::filesystem::path GetDefaultDataDir()
if ( ASSETCHAINS_SYMBOL[0] != 0 )
strcpy(symbol,ASSETCHAINS_SYMBOL);
else symbol[0] = 0;
// Windows < Vista: C:\Documents and Settings\Username\Application Data\Zcash
// Windows >= Vista: C:\Users\Username\AppData\Roaming\Zcash
// Mac: ~/Library/Application Support/Zcash
// Unix: ~/.zcash
// Windows < Vista: C:\Documents and Settings\Username\Application Data\Komodo
// Windows >= Vista: C:\Users\Username\AppData\Roaming\Komodo
// Mac: ~/Library/Application Support/Komodo
// Unix: ~/.komodo
#ifdef _WIN32
// Windows
if ( symbol[0] == 0 )
@ -589,6 +589,7 @@ static boost::filesystem::path ZC_GetBaseParamsDir()
// Windows >= Vista: C:\Users\Username\AppData\Roaming\ZcashParams
// Mac: ~/Library/Application Support/ZcashParams
// Unix: ~/.zcash-params
// Debian packages: /usr/share/hush
fs::path pathRet;
#ifdef _WIN32
return GetSpecialFolderPath(CSIDL_APPDATA) / "ZcashParams";

2
src/util.h

@ -264,7 +264,7 @@ void RenameThread(const char* name);
*/
template <typename Callable> void TraceThread(const char* name, Callable func)
{
std::string s = strprintf("zcash-%s", name);
std::string s = strprintf("hush-%s", name);
RenameThread(s.c_str());
try
{

2
src/wallet/walletdb.cpp

@ -1115,7 +1115,7 @@ DBErrors CWalletDB::ZapWalletTx(CWallet* pwallet, vector<CWalletTx>& vWtx)
void ThreadFlushWalletDB(const string& strFile)
{
// Make this thread recognisable as the wallet flushing thread
RenameThread("zcash-wallet");
RenameThread("hush-wallet");
static bool fOneThread;
if (fOneThread)

Loading…
Cancel
Save