From db994678909f90bc7a161b957e94c2313c94ee82 Mon Sep 17 00:00:00 2001 From: jl777 Date: Wed, 5 Dec 2018 01:48:36 -1100 Subject: [PATCH] Enable z_mergetoaddress --- src/komodo_bitcoind.h | 8 ++++++++ src/main.cpp | 6 +++--- src/wallet/rpcdisclosure.cpp | 4 ++-- src/wallet/rpcwallet.cpp | 6 ++++-- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/komodo_bitcoind.h b/src/komodo_bitcoind.h index e7ecf5f77..653bd1456 100644 --- a/src/komodo_bitcoind.h +++ b/src/komodo_bitcoind.h @@ -1832,6 +1832,14 @@ int32_t komodo_checkPOW(int32_t slowflag,CBlock *pblock,int32_t height) else return(0); } +int32_t komodo_acpublic() +{ + int32_t acpublic = ASSETCHAINS_PUBLIC; + if ( (ASSETCHAINS_SYMBOL[0] == 0 || strcmp(ASSETCHAINS_SYMBOL,"ZEX") == 0) && tiptime >= KOMODO_SAPLING_DEADLINE ) + acpublic = 1; + return(acpublic); +} + int64_t komodo_newcoins(int64_t *zfundsp,int32_t nHeight,CBlock *pblock) { CTxDestination address; int32_t i,j,m,n,vout; uint8_t *script; uint256 txid,hashBlock; int64_t zfunds=0,vinsum=0,voutsum=0; diff --git a/src/main.cpp b/src/main.cpp index 62545862a..a8af7d484 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1259,10 +1259,12 @@ int32_t komodo_isnotaryvout(char *coinaddr) // from ac_private chains only return(0); } +int32_t komodo_acpublic(); + bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransaction& tx, CValidationState &state) { // Basic checks that don't depend on any context - int32_t invalid_private_taddr=0,z_z=0,z_t=0,t_z=0,acpublic = ASSETCHAINS_PUBLIC; + int32_t invalid_private_taddr=0,z_z=0,z_t=0,t_z=0,acpublic = komodo_acpublic(); /** * Previously: * 1. The consensus rule below was: @@ -1365,8 +1367,6 @@ bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransactio return state.DoS(100, error("CheckTransaction(): tx.valueBalance has no sources or sinks"), REJECT_INVALID, "bad-txns-valuebalance-nonzero"); } - if ( (ASSETCHAINS_SYMBOL[0] == 0 || strcmp(ASSETCHAINS_SYMBOL,"ZEX") == 0) && tiptime >= KOMODO_SAPLING_DEADLINE ) - acpublic = 1; if ( acpublic != 0 && (tx.vShieldedSpend.empty() == 0 || tx.vShieldedOutput.empty() == 0) ) { return state.DoS(100, error("CheckTransaction(): this is a public chain, no sapling allowed"), diff --git a/src/wallet/rpcdisclosure.cpp b/src/wallet/rpcdisclosure.cpp index dd3acab7e..41195cfc8 100644 --- a/src/wallet/rpcdisclosure.cpp +++ b/src/wallet/rpcdisclosure.cpp @@ -42,7 +42,7 @@ UniValue z_getpaymentdisclosure(const UniValue& params, bool fHelp) return NullUniValue; string enableArg = "paymentdisclosure"; - auto fEnablePaymentDisclosure = fExperimentalMode && GetBoolArg("-" + enableArg, false); + auto fEnablePaymentDisclosure = fExperimentalMode && GetBoolArg("-" + enableArg, true); string strPaymentDisclosureDisabledMsg = ""; if (!fEnablePaymentDisclosure) { strPaymentDisclosureDisabledMsg = experimentalDisabledHelpMsg("z_getpaymentdisclosure", enableArg); @@ -149,7 +149,7 @@ UniValue z_validatepaymentdisclosure(const UniValue& params, bool fHelp) return NullUniValue; string enableArg = "paymentdisclosure"; - auto fEnablePaymentDisclosure = fExperimentalMode && GetBoolArg("-" + enableArg, false); + auto fEnablePaymentDisclosure = fExperimentalMode && GetBoolArg("-" + enableArg, true); string strPaymentDisclosureDisabledMsg = ""; if (!fEnablePaymentDisclosure) { strPaymentDisclosureDisabledMsg = experimentalDisabledHelpMsg("z_validatepaymentdisclosure", enableArg); diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 49b255da6..39a9b8518 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -2342,6 +2342,7 @@ UniValue walletlock(const UniValue& params, bool fHelp) return NullUniValue; } +int32_t komodo_acpublic(); UniValue encryptwallet(const UniValue& params, bool fHelp) { @@ -2349,7 +2350,8 @@ UniValue encryptwallet(const UniValue& params, bool fHelp) return NullUniValue; string enableArg = "developerencryptwallet"; - auto fEnableWalletEncryption = fExperimentalMode && GetBoolArg("-" + enableArg, false); + flag = (komodo_acpublic() || ASSETCHAINS_SYMBOL[0] == 0); + auto fEnableWalletEncryption = fExperimentalMode && GetBoolArg("-" + enableArg, flag); std::string strWalletEncryptionDisabledMsg = ""; if (!fEnableWalletEncryption) { @@ -4528,7 +4530,7 @@ UniValue z_mergetoaddress(const UniValue& params, bool fHelp) return NullUniValue; string enableArg = "zmergetoaddress"; - auto fEnableMergeToAddress = fExperimentalMode && GetBoolArg("-" + enableArg, false); + auto fEnableMergeToAddress = fExperimentalMode && GetBoolArg("-" + enableArg, true); std::string strDisabledMsg = ""; if (!fEnableMergeToAddress) { strDisabledMsg = experimentalDisabledHelpMsg("z_mergetoaddress", enableArg);