Fix branding which lead to confusing users
Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
This commit is contained in:
parent
dc7207b861
commit
acc45c1a19
17 changed files with 83 additions and 82 deletions
|
@ -106,7 +106,7 @@ static const char* FEE_ESTIMATES_FILENAME="fee_estimates.dat";
|
|||
/**
|
||||
* The PID file facilities.
|
||||
*/
|
||||
static const char* BITCOIN_PID_FILENAME = "bitcoind.pid";
|
||||
static const char* BITCOIN_PID_FILENAME = "lbrycrdd.pid";
|
||||
|
||||
static fs::path GetPidFile()
|
||||
{
|
||||
|
|
|
@ -101,12 +101,12 @@ AddressBookPage::AddressBookPage(const PlatformStyle *platformStyle, Mode _mode,
|
|||
switch(tab)
|
||||
{
|
||||
case SendingTab:
|
||||
ui->labelExplanation->setText(tr("These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins."));
|
||||
ui->labelExplanation->setText(tr("These are your LBRY addresses for sending payments. Always check the amount and the receiving address before sending coins."));
|
||||
ui->deleteAddress->setVisible(true);
|
||||
ui->newAddress->setVisible(true);
|
||||
break;
|
||||
case ReceivingTab:
|
||||
ui->labelExplanation->setText(tr("These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses."));
|
||||
ui->labelExplanation->setText(tr("These are your LBRY addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses."));
|
||||
ui->deleteAddress->setVisible(false);
|
||||
ui->newAddress->setVisible(false);
|
||||
break;
|
||||
|
|
|
@ -113,7 +113,7 @@ void AskPassphraseDialog::accept()
|
|||
break;
|
||||
}
|
||||
QMessageBox::StandardButton retval = QMessageBox::question(this, tr("Confirm wallet encryption"),
|
||||
tr("Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!") + "<br><br>" + tr("Are you sure you wish to encrypt your wallet?"),
|
||||
tr("Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR COINS</b>!") + "<br><br>" + tr("Are you sure you wish to encrypt your wallet?"),
|
||||
QMessageBox::Yes|QMessageBox::Cancel,
|
||||
QMessageBox::Cancel);
|
||||
if(retval == QMessageBox::Yes)
|
||||
|
@ -121,7 +121,7 @@ void AskPassphraseDialog::accept()
|
|||
if(newpass1 == newpass2)
|
||||
{
|
||||
QString encryption_reminder = tr("Remember that encrypting your wallet cannot fully protect "
|
||||
"your bitcoins from being stolen by malware infecting your computer.");
|
||||
"your coins from being stolen by malware infecting your computer.");
|
||||
if (m_passphrase_out) {
|
||||
m_passphrase_out->assign(newpass1);
|
||||
QMessageBox::warning(this, tr("Wallet to be encrypted"),
|
||||
|
|
|
@ -170,7 +170,7 @@ void BitcoinCore::shutdown()
|
|||
}
|
||||
|
||||
static int qt_argc = 1;
|
||||
static const char* qt_argv = "bitcoin-qt";
|
||||
static const char* qt_argv = "lbrycrd-qt";
|
||||
|
||||
BitcoinApplication::BitcoinApplication(interfaces::Node& node):
|
||||
QApplication(qt_argc, const_cast<char **>(&qt_argv)),
|
||||
|
@ -383,7 +383,7 @@ void BitcoinApplication::shutdownResult()
|
|||
|
||||
void BitcoinApplication::handleRunawayException(const QString &message)
|
||||
{
|
||||
QMessageBox::critical(nullptr, "Runaway exception", BitcoinGUI::tr("A fatal error occurred. Bitcoin can no longer continue safely and will quit.") + QString("\n\n") + message);
|
||||
QMessageBox::critical(nullptr, "Runaway exception", BitcoinGUI::tr("A fatal error occurred. LBRY can no longer continue safely and will quit.") + QString("\n\n") + message);
|
||||
::exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
|
|
|
@ -243,7 +243,7 @@ void BitcoinGUI::createActions()
|
|||
tabGroup->addAction(overviewAction);
|
||||
|
||||
sendCoinsAction = new QAction(platformStyle->SingleColorIcon(":/icons/send"), tr("&Send"), this);
|
||||
sendCoinsAction->setStatusTip(tr("Send coins to a Bitcoin address"));
|
||||
sendCoinsAction->setStatusTip(tr("Send coins to a LBRY address"));
|
||||
sendCoinsAction->setToolTip(sendCoinsAction->statusTip());
|
||||
sendCoinsAction->setCheckable(true);
|
||||
sendCoinsAction->setShortcut(QKeySequence(Qt::ALT + Qt::Key_2));
|
||||
|
@ -254,7 +254,7 @@ void BitcoinGUI::createActions()
|
|||
sendCoinsMenuAction->setToolTip(sendCoinsMenuAction->statusTip());
|
||||
|
||||
receiveCoinsAction = new QAction(platformStyle->SingleColorIcon(":/icons/receiving_addresses"), tr("&Receive"), this);
|
||||
receiveCoinsAction->setStatusTip(tr("Request payments (generates QR codes and bitcoin: URIs)"));
|
||||
receiveCoinsAction->setStatusTip(tr("Request payments (generates QR codes and LBRY: URIs)"));
|
||||
receiveCoinsAction->setToolTip(receiveCoinsAction->statusTip());
|
||||
receiveCoinsAction->setCheckable(true);
|
||||
receiveCoinsAction->setShortcut(QKeySequence(Qt::ALT + Qt::Key_3));
|
||||
|
@ -314,9 +314,9 @@ void BitcoinGUI::createActions()
|
|||
changePassphraseAction = new QAction(tr("&Change Passphrase..."), this);
|
||||
changePassphraseAction->setStatusTip(tr("Change the passphrase used for wallet encryption"));
|
||||
signMessageAction = new QAction(tr("Sign &message..."), this);
|
||||
signMessageAction->setStatusTip(tr("Sign messages with your Bitcoin addresses to prove you own them"));
|
||||
signMessageAction->setStatusTip(tr("Sign messages with your LBRY addresses to prove you own them"));
|
||||
verifyMessageAction = new QAction(tr("&Verify message..."), this);
|
||||
verifyMessageAction->setStatusTip(tr("Verify messages to ensure they were signed with specified Bitcoin addresses"));
|
||||
verifyMessageAction->setStatusTip(tr("Verify messages to ensure they were signed with specified LBRY addresses"));
|
||||
|
||||
openRPCConsoleAction = new QAction(tr("&Debug window"), this);
|
||||
openRPCConsoleAction->setStatusTip(tr("Open debugging and diagnostic console"));
|
||||
|
@ -330,7 +330,7 @@ void BitcoinGUI::createActions()
|
|||
usedReceivingAddressesAction->setStatusTip(tr("Show the list of used receiving addresses and labels"));
|
||||
|
||||
openAction = new QAction(tr("Open &URI..."), this);
|
||||
openAction->setStatusTip(tr("Open a bitcoin: URI or payment request"));
|
||||
openAction->setStatusTip(tr("Open a LBRY: URI or payment request"));
|
||||
|
||||
m_open_wallet_action = new QAction(tr("Open Wallet"), this);
|
||||
m_open_wallet_action->setEnabled(false);
|
||||
|
@ -346,7 +346,7 @@ void BitcoinGUI::createActions()
|
|||
|
||||
showHelpMessageAction = new QAction(tr("&Command-line options"), this);
|
||||
showHelpMessageAction->setMenuRole(QAction::NoRole);
|
||||
showHelpMessageAction->setStatusTip(tr("Show the %1 help message to get a list with possible Bitcoin command-line options").arg(PACKAGE_NAME));
|
||||
showHelpMessageAction->setStatusTip(tr("Show the %1 help message to get a list with possible LBRY command-line options").arg(PACKAGE_NAME));
|
||||
|
||||
connect(quitAction, &QAction::triggered, qApp, QApplication::quit);
|
||||
connect(aboutAction, &QAction::triggered, this, &BitcoinGUI::aboutClicked);
|
||||
|
@ -867,7 +867,7 @@ void BitcoinGUI::updateNetworkState()
|
|||
QString tooltip;
|
||||
|
||||
if (m_node.getNetworkActive()) {
|
||||
tooltip = tr("%n active connection(s) to Bitcoin network", "", count) + QString(".<br>") + tr("Click to disable network activity.");
|
||||
tooltip = tr("%n active connection(s) to LBRY network", "", count) + QString(".<br>") + tr("Click to disable network activity.");
|
||||
} else {
|
||||
tooltip = tr("Network activity disabled.") + QString("<br>") + tr("Click to enable network activity again.");
|
||||
icon = ":/icons/network_disabled";
|
||||
|
|
|
@ -62,9 +62,9 @@ QString BitcoinUnits::description(int unit)
|
|||
{
|
||||
switch(unit)
|
||||
{
|
||||
case LBC: return QString("Bitcoins");
|
||||
case mLBC: return QString("Milli-Bitcoins (1 / 1" THIN_SP_UTF8 "000)");
|
||||
case uLBC: return QString("Micro-Bitcoins (bits) (1 / 1" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
case LBC: return QString("LBC");
|
||||
case mLBC: return QString("Milli-LBC (1 / 1" THIN_SP_UTF8 "000)");
|
||||
case uLBC: return QString("Micro-LBC (bits) (1 / 1" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
case SAT: return QString("Satoshi (sat) (1 / 100" THIN_SP_UTF8 "000" THIN_SP_UTF8 "000)");
|
||||
default: return QString("???");
|
||||
}
|
||||
|
|
|
@ -114,7 +114,7 @@ void setupAddressWidget(QValidatedLineEdit *widget, QWidget *parent)
|
|||
widget->setFont(fixedPitchFont());
|
||||
// We don't want translators to use own addresses in translations
|
||||
// and this is the only place, where this address is supplied.
|
||||
widget->setPlaceholderText(QObject::tr("Enter a Bitcoin address (e.g. %1)").arg(
|
||||
widget->setPlaceholderText(QObject::tr("Enter a LBRY address (e.g. %1)").arg(
|
||||
QString::fromStdString(DummyAddress(Params()))));
|
||||
widget->setValidator(new BitcoinAddressEntryValidator(parent));
|
||||
widget->setCheckValidator(new BitcoinAddressCheckValidator(parent));
|
||||
|
|
|
@ -150,7 +150,7 @@ Intro::Intro(QWidget *parent, uint64_t blockchain_size, uint64_t chain_state_siz
|
|||
}
|
||||
requiredSpace += m_chain_state_size;
|
||||
ui->sizeWarningLabel->setText(
|
||||
tr("%1 will download and store a copy of the Bitcoin block chain.").arg(PACKAGE_NAME) + " " +
|
||||
tr("%1 will download and store a copy of the LBRY block chain.").arg(PACKAGE_NAME) + " " +
|
||||
storageRequiresMsg.arg(requiredSpace) + " " +
|
||||
tr("The wallet will also be stored in this directory.")
|
||||
);
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include <qt/paymentserver.h>
|
||||
|
||||
#include <qt/bitcoinunits.h>
|
||||
#include <qt/guiconstants.h>
|
||||
#include <qt/guiutil.h>
|
||||
#include <qt/optionsmodel.h>
|
||||
|
||||
|
@ -66,7 +67,7 @@ const char* BIP71_MIMETYPE_PAYMENTREQUEST = "application/bitcoin-paymentrequest"
|
|||
//
|
||||
static QString ipcServerName()
|
||||
{
|
||||
QString name("BitcoinQt");
|
||||
QString name(QAPP_APP_NAME_DEFAULT);
|
||||
|
||||
// Append a simple hash of the datadir
|
||||
// Note that GetDataDir(true) returns a different path
|
||||
|
@ -344,7 +345,7 @@ void PaymentServer::handleURIOrFile(const QString& s)
|
|||
}
|
||||
else
|
||||
Q_EMIT message(tr("URI handling"),
|
||||
tr("URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters."),
|
||||
tr("URI cannot be parsed! This can be caused by an invalid LBRY address or malformed URI parameters."),
|
||||
CClientUIInterface::ICON_WARNING);
|
||||
|
||||
return;
|
||||
|
|
|
@ -810,7 +810,7 @@ void SendCoinsDialog::coinControlChangeEdited(const QString& text)
|
|||
}
|
||||
else if (!IsValidDestination(dest)) // Invalid address
|
||||
{
|
||||
ui->labelCoinControlChangeLabel->setText(tr("Warning: Invalid Bitcoin address"));
|
||||
ui->labelCoinControlChangeLabel->setText(tr("Warning: Invalid LBRY address"));
|
||||
}
|
||||
else // Valid address
|
||||
{
|
||||
|
|
|
@ -375,7 +375,7 @@ static UniValue getdifficulty(const JSONRPCRequest& request)
|
|||
static std::string EntryDescriptionString()
|
||||
{
|
||||
return " \"vsize\" : n, (numeric) virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.\n"
|
||||
" \"size\" : n, (numeric) (DEPRECATED) same as vsize. Only returned if bitcoind is started with -deprecatedrpc=size\n"
|
||||
" \"size\" : n, (numeric) (DEPRECATED) same as vsize. Only returned if lbrycrdd is started with -deprecatedrpc=size\n"
|
||||
" size will be completely removed in v0.20.\n"
|
||||
" \"weight\" : n, (numeric) transaction weight as defined in BIP 141.\n"
|
||||
" \"fee\" : n, (numeric) transaction fee in " + CURRENCY_UNIT + " (DEPRECATED)\n"
|
||||
|
|
|
@ -108,7 +108,7 @@ CMutableTransaction ConstructTransaction(const UniValue& inputs_in, const UniVal
|
|||
} else {
|
||||
CTxDestination destination = DecodeDestination(name_);
|
||||
if (!IsValidDestination(destination)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid Bitcoin address: ") + name_);
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid LBRY address: ") + name_);
|
||||
}
|
||||
|
||||
if (!destinations.insert(destination).second) {
|
||||
|
|
|
@ -6,7 +6,7 @@ sense to simply use this framework rather than require developers to
|
|||
configure some other framework (we want as few impediments to creating
|
||||
unit tests as possible).
|
||||
|
||||
The build system is set up to compile an executable called `test_bitcoin`
|
||||
The build system is set up to compile an executable called `test_lbrycrd`
|
||||
that runs all of the unit tests. The main source file is called
|
||||
`setup_common.cpp`.
|
||||
|
||||
|
@ -17,32 +17,32 @@ and tests weren't explicitly disabled.
|
|||
|
||||
After configuring, they can be run with `make check`.
|
||||
|
||||
To run the bitcoind tests manually, launch `src/test/test_bitcoin`. To recompile
|
||||
To run the lbrycrdd tests manually, launch `src/test/test_lbrycrd`. To recompile
|
||||
after a test file was modified, run `make` and then run the test again. If you
|
||||
modify a non-test file, use `make -C src/test` to recompile only what's needed
|
||||
to run the bitcoind tests.
|
||||
to run the lbrycrdd tests.
|
||||
|
||||
To add more bitcoind tests, add `BOOST_AUTO_TEST_CASE` functions to the existing
|
||||
To add more lbrycrdd tests, add `BOOST_AUTO_TEST_CASE` functions to the existing
|
||||
.cpp files in the `test/` directory or add new .cpp files that
|
||||
implement new `BOOST_AUTO_TEST_SUITE` sections.
|
||||
|
||||
To run the bitcoin-qt tests manually, launch `src/qt/test/test_bitcoin-qt`
|
||||
To run the lbrycrd-qt tests manually, launch `src/qt/test/test_lbrycrd-qt`
|
||||
|
||||
To add more bitcoin-qt tests, add them to the `src/qt/test/` directory and
|
||||
To add more lbrycrd-qt tests, add them to the `src/qt/test/` directory and
|
||||
the `src/qt/test/test_main.cpp` file.
|
||||
|
||||
### Running individual tests
|
||||
|
||||
test_bitcoin has some built-in command-line arguments; for
|
||||
test_lbrycrd has some built-in command-line arguments; for
|
||||
example, to run just the getarg_tests verbosely:
|
||||
|
||||
test_bitcoin --log_level=all --run_test=getarg_tests
|
||||
test_lbrycrd --log_level=all --run_test=getarg_tests
|
||||
|
||||
... or to run just the doubledash test:
|
||||
|
||||
test_bitcoin --run_test=getarg_tests/doubledash
|
||||
test_lbrycrd --run_test=getarg_tests/doubledash
|
||||
|
||||
Run `test_bitcoin --help` for the full list.
|
||||
Run `test_lbrycrd --help` for the full list.
|
||||
|
||||
### Adding test cases
|
||||
|
||||
|
@ -59,9 +59,9 @@ see `uint256_tests.cpp`.
|
|||
To write to logs from unit tests you need to use specific message methods
|
||||
provided by Boost. The simplest is `BOOST_TEST_MESSAGE`.
|
||||
|
||||
For debugging you can launch the test_bitcoin executable with `gdb`or `lldb` and
|
||||
start debugging, just like you would with bitcoind:
|
||||
For debugging you can launch the test_lbrycrd executable with `gdb`or `lldb` and
|
||||
start debugging, just like you would with lbrycrdd:
|
||||
|
||||
```bash
|
||||
gdb src/test/test_bitcoin
|
||||
gdb src/test/test_lbrycrd
|
||||
```
|
||||
|
|
|
@ -174,7 +174,7 @@ bool BerkeleyEnvironment::Open(bool retry)
|
|||
fs::path pathIn = strPath;
|
||||
TryCreateDirectories(pathIn);
|
||||
if (!LockDirectory(pathIn, ".walletlock")) {
|
||||
LogPrintf("Cannot obtain a lock on wallet directory %s. Another instance of bitcoin may be using it.\n", strPath);
|
||||
LogPrintf("Cannot obtain a lock on wallet directory %s. Another instance of lbrycrdd may be using it.\n", strPath);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -249,7 +249,7 @@ UniValue importaddress(const JSONRPCRequest& request)
|
|||
"as change, and not show up in many RPCs.\n"
|
||||
"Note: Use \"getwalletinfo\" to query the scanning progress.\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The Bitcoin address (or hex-encoded script)"},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address (or hex-encoded script)"},
|
||||
{"label", RPCArg::Type::STR, /* default */ "\"\"", "An optional label"},
|
||||
{"rescan", RPCArg::Type::BOOL, /* default */ "true", "Rescan the wallet for transactions"},
|
||||
{"p2sh", RPCArg::Type::BOOL, /* default */ "false", "Add the P2SH version of the script as well"},
|
||||
|
@ -318,7 +318,7 @@ UniValue importaddress(const JSONRPCRequest& request)
|
|||
|
||||
pwallet->ImportScriptPubKeys(strLabel, scripts, false /* have_solving_data */, true /* apply_label */, 1 /* timestamp */);
|
||||
} else {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid Bitcoin address or script");
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid LBRY address or script");
|
||||
}
|
||||
}
|
||||
if (fRescan)
|
||||
|
@ -695,7 +695,7 @@ UniValue dumpprivkey(const JSONRPCRequest& request)
|
|||
"\nReveals the private key corresponding to 'address'.\n"
|
||||
"Then the importprivkey can be used with this output\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address for the private key"},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address for the private key"},
|
||||
},
|
||||
RPCResult{
|
||||
"\"key\" (string) The private key\n"
|
||||
|
@ -715,7 +715,7 @@ UniValue dumpprivkey(const JSONRPCRequest& request)
|
|||
std::string strAddress = request.params[0].get_str();
|
||||
CTxDestination dest = DecodeDestination(strAddress);
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid Bitcoin address");
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid LBRY address");
|
||||
}
|
||||
auto keyid = GetKeyForDestination(*pwallet, dest);
|
||||
if (keyid.IsNull()) {
|
||||
|
@ -743,7 +743,7 @@ UniValue dumpwallet(const JSONRPCRequest& request)
|
|||
"Note that if your wallet contains keys which are not derived from your HD seed (e.g. imported keys), these are not covered by\n"
|
||||
"only backing up the seed itself, and must be backed up too (e.g. ensure you back up the whole dumpfile).\n",
|
||||
{
|
||||
{"filename", RPCArg::Type::STR, RPCArg::Optional::NO, "The filename with path (either absolute or relative to bitcoind)"},
|
||||
{"filename", RPCArg::Type::STR, RPCArg::Optional::NO, "The filename with path (either absolute or relative to lbrycrdd)"},
|
||||
},
|
||||
RPCResult{
|
||||
"{ (json object)\n"
|
||||
|
@ -793,7 +793,7 @@ UniValue dumpwallet(const JSONRPCRequest& request)
|
|||
std::sort(vKeyBirth.begin(), vKeyBirth.end());
|
||||
|
||||
// produce output
|
||||
file << strprintf("# Wallet dump created by Bitcoin %s\n", CLIENT_BUILD);
|
||||
file << strprintf("# Wallet dump created by LBRY %s\n", CLIENT_BUILD);
|
||||
file << strprintf("# * Created on %s\n", FormatISO8601DateTime(GetTime()));
|
||||
const Optional<int> tip_height = locked_chain->getHeight();
|
||||
file << strprintf("# * Best block at time of backup was %i (%s),\n", tip_height.get_value_or(-1), tip_height ? locked_chain->getBlockHash(*tip_height).ToString() : "(missing block hash)");
|
||||
|
@ -1436,7 +1436,7 @@ UniValue importmulti(const JSONRPCRequest& mainRequest)
|
|||
"block from time %d, which is after or within %d seconds of key creation, and "
|
||||
"could contain transactions pertaining to the key. As a result, transactions "
|
||||
"and coins using this key may not appear in the wallet. This error could be "
|
||||
"caused by pruning or data corruption (see bitcoind log for details) and could "
|
||||
"caused by pruning or data corruption (see lbrycrdd log for details) and could "
|
||||
"be dealt with by downloading and rescanning the relevant blocks (see -reindex "
|
||||
"and -rescan options).",
|
||||
GetImportTimestamp(request, now), scannedTime - TIMESTAMP_WINDOW - 1, TIMESTAMP_WINDOW)));
|
||||
|
|
|
@ -188,7 +188,7 @@ static UniValue getnewaddress(const JSONRPCRequest& request)
|
|||
}
|
||||
|
||||
RPCHelpMan{"getnewaddress",
|
||||
"\nReturns a new Bitcoin address for receiving payments.\n"
|
||||
"\nReturns a new LBRY address for receiving payments.\n"
|
||||
"If 'label' is specified, it is added to the address book \n"
|
||||
"so payments received with the address will be associated with 'label'.\n",
|
||||
{
|
||||
|
@ -196,7 +196,7 @@ static UniValue getnewaddress(const JSONRPCRequest& request)
|
|||
{"address_type", RPCArg::Type::STR, /* default */ "set by -addresstype", "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."},
|
||||
},
|
||||
RPCResult{
|
||||
"\"address\" (string) The new bitcoin address\n"
|
||||
"\"address\" (string) The new LBRY address\n"
|
||||
},
|
||||
RPCExamples{
|
||||
HelpExampleCli("getnewaddress", "")
|
||||
|
@ -241,7 +241,7 @@ static UniValue getrawchangeaddress(const JSONRPCRequest& request)
|
|||
}
|
||||
|
||||
RPCHelpMan{"getrawchangeaddress",
|
||||
"\nReturns a new Bitcoin address, for receiving change.\n"
|
||||
"\nReturns a new LBRY address, for receiving change.\n"
|
||||
"This is for use with raw transactions, NOT normal use.\n",
|
||||
{
|
||||
{"address_type", RPCArg::Type::STR, /* default */ "set by -changetype", "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."},
|
||||
|
@ -289,7 +289,7 @@ static UniValue setlabel(const JSONRPCRequest& request)
|
|||
RPCHelpMan{"setlabel",
|
||||
"\nSets the label associated with the given address.\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address to be associated with a label."},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address to be associated with a label."},
|
||||
{"label", RPCArg::Type::STR, RPCArg::Optional::NO, "The label to assign to the address."},
|
||||
},
|
||||
RPCResults{},
|
||||
|
@ -303,7 +303,7 @@ static UniValue setlabel(const JSONRPCRequest& request)
|
|||
|
||||
CTxDestination dest = DecodeDestination(request.params[0].get_str());
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid Bitcoin address");
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid LBRY address");
|
||||
}
|
||||
|
||||
std::string label = LabelFromValue(request.params[1]);
|
||||
|
@ -924,7 +924,7 @@ static UniValue sendtoaddress(const JSONRPCRequest& request)
|
|||
"\nSend an amount to a given address." +
|
||||
HelpRequiringPassphrase(pwallet) + "\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address to send to."},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address to send to."},
|
||||
{"amount", RPCArg::Type::AMOUNT, RPCArg::Optional::NO, "The amount in " + CURRENCY_UNIT + " to send. eg 0.1"},
|
||||
{"comment", RPCArg::Type::STR, RPCArg::Optional::OMITTED_NAMED_ARG, "A comment used to store what the transaction is for.\n"
|
||||
" This is not part of the transaction, just kept in your wallet."},
|
||||
|
@ -932,7 +932,7 @@ static UniValue sendtoaddress(const JSONRPCRequest& request)
|
|||
" to which you're sending the transaction. This is not part of the \n"
|
||||
" transaction, just kept in your wallet."},
|
||||
{"subtractfeefromamount", RPCArg::Type::BOOL, /* default */ "false", "The fee will be deducted from the amount being sent.\n"
|
||||
" The recipient will receive less bitcoins than you enter in the amount field."},
|
||||
" The recipient will receive less coins than you enter in the amount field."},
|
||||
{"replaceable", RPCArg::Type::BOOL, /* default */ "wallet default", "Allow this transaction to be replaced by a transaction with higher fees via BIP 125"},
|
||||
{"conf_target", RPCArg::Type::NUM, /* default */ "wallet default", "Confirmation target (in blocks)"},
|
||||
{"estimate_mode", RPCArg::Type::STR, /* default */ "UNSET", "The fee estimate mode, must be one of:\n"
|
||||
|
@ -1025,7 +1025,7 @@ static UniValue listaddressgroupings(const JSONRPCRequest& request)
|
|||
"[\n"
|
||||
" [\n"
|
||||
" [\n"
|
||||
" \"address\", (string) The bitcoin address\n"
|
||||
" \"address\", (string) The LBRY address\n"
|
||||
" amount, (numeric) The amount in " + CURRENCY_UNIT + "\n"
|
||||
" \"label\" (string, optional) The label\n"
|
||||
" ]\n"
|
||||
|
@ -1081,7 +1081,7 @@ static UniValue signmessage(const JSONRPCRequest& request)
|
|||
"\nSign a message with the private key of an address" +
|
||||
HelpRequiringPassphrase(pwallet) + "\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address to use for the private key."},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address to use for the private key."},
|
||||
{"message", RPCArg::Type::STR, RPCArg::Optional::NO, "The message to create a signature of."},
|
||||
},
|
||||
RPCResult{
|
||||
|
@ -1146,7 +1146,7 @@ static UniValue getreceivedbyaddress(const JSONRPCRequest& request)
|
|||
RPCHelpMan{"getreceivedbyaddress",
|
||||
"\nReturns the total amount received by the given address in transactions with at least minconf confirmations.\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address for transactions."},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address for transactions."},
|
||||
{"minconf", RPCArg::Type::NUM, /* default */ "1", "Only include transactions confirmed at least this many times."},
|
||||
},
|
||||
RPCResult{
|
||||
|
@ -1174,7 +1174,7 @@ static UniValue getreceivedbyaddress(const JSONRPCRequest& request)
|
|||
// Bitcoin address
|
||||
CTxDestination dest = DecodeDestination(request.params[0].get_str());
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid Bitcoin address");
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Invalid LBRY address");
|
||||
}
|
||||
CScript scriptPubKey = GetScriptForDestination(dest);
|
||||
if (!IsMine(*pwallet, scriptPubKey)) {
|
||||
|
@ -1373,14 +1373,14 @@ static UniValue sendmany(const JSONRPCRequest& request)
|
|||
{"dummy", RPCArg::Type::STR, RPCArg::Optional::NO, "Must be set to \"\" for backwards compatibility.", "\"\""},
|
||||
{"amounts", RPCArg::Type::OBJ, RPCArg::Optional::NO, "A json object with addresses and amounts",
|
||||
{
|
||||
{"address", RPCArg::Type::AMOUNT, RPCArg::Optional::NO, "The bitcoin address is the key, the numeric amount (can be string) in " + CURRENCY_UNIT + " is the value"},
|
||||
{"address", RPCArg::Type::AMOUNT, RPCArg::Optional::NO, "The LBRY address is the key, the numeric amount (can be string) in " + CURRENCY_UNIT + " is the value"},
|
||||
},
|
||||
},
|
||||
{"minconf", RPCArg::Type::NUM, RPCArg::Optional::OMITTED_NAMED_ARG, "Ignored dummy value"},
|
||||
{"comment", RPCArg::Type::STR, RPCArg::Optional::OMITTED_NAMED_ARG, "A comment"},
|
||||
{"subtractfeefrom", RPCArg::Type::ARR, RPCArg::Optional::OMITTED_NAMED_ARG, "A json array with addresses.\n"
|
||||
" The fee will be equally deducted from the amount of each selected address.\n"
|
||||
" Those recipients will receive less bitcoins than you enter in their corresponding amount field.\n"
|
||||
" Those recipients will receive less coins than you enter in their corresponding amount field.\n"
|
||||
" If no addresses are specified here, the sender pays the fee.",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "Subtract fee from this address"},
|
||||
|
@ -1451,7 +1451,7 @@ static UniValue sendmany(const JSONRPCRequest& request)
|
|||
for (const std::string& name_ : keys) {
|
||||
CTxDestination dest = DecodeDestination(name_);
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid Bitcoin address: ") + name_);
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid LBRY address: ") + name_);
|
||||
}
|
||||
|
||||
if (destinations.count(dest)) {
|
||||
|
@ -1508,15 +1508,15 @@ static UniValue addmultisigaddress(const JSONRPCRequest& request)
|
|||
|
||||
RPCHelpMan{"addmultisigaddress",
|
||||
"\nAdd a nrequired-to-sign multisignature address to the wallet. Requires a new wallet backup.\n"
|
||||
"Each key is a Bitcoin address or hex-encoded public key.\n"
|
||||
"Each key is a LBRY address or hex-encoded public key.\n"
|
||||
"This functionality is only intended for use with non-watchonly addresses.\n"
|
||||
"See `importaddress` for watchonly p2sh address support.\n"
|
||||
"If 'label' is specified, assign address to that label.\n",
|
||||
{
|
||||
{"nrequired", RPCArg::Type::NUM, RPCArg::Optional::NO, "The number of required signatures out of the n keys or addresses."},
|
||||
{"keys", RPCArg::Type::ARR, RPCArg::Optional::NO, "A json array of bitcoin addresses or hex-encoded public keys",
|
||||
{"keys", RPCArg::Type::ARR, RPCArg::Optional::NO, "A json array of LBRY addresses or hex-encoded public keys",
|
||||
{
|
||||
{"key", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "bitcoin address or hex-encoded public key"},
|
||||
{"key", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "LBRY address or hex-encoded public key"},
|
||||
},
|
||||
},
|
||||
{"label", RPCArg::Type::STR, RPCArg::Optional::OMITTED_NAMED_ARG, "A label to assign the addresses to."},
|
||||
|
@ -2004,7 +2004,7 @@ UniValue listtransactions(const JSONRPCRequest& request)
|
|||
RPCResult{
|
||||
"[\n"
|
||||
" {\n"
|
||||
" \"address\":\"address\", (string) The bitcoin address of the transaction.\n"
|
||||
" \"address\":\"address\", (string) The LBRY address of the transaction.\n"
|
||||
" \"category\": (string) The transaction category.\n"
|
||||
" \"send\" Transactions sent.\n"
|
||||
" \"receive\" Non-coinbase transactions received.\n"
|
||||
|
@ -2292,7 +2292,7 @@ static UniValue gettransaction(const JSONRPCRequest& request)
|
|||
" may be unknown for unconfirmed transactions not in the mempool\n"
|
||||
" \"details\" : [\n"
|
||||
" {\n"
|
||||
" \"address\" : \"address\", (string) The bitcoin address involved in the transaction\n"
|
||||
" \"address\" : \"address\", (string) The LBRY address involved in the transaction\n"
|
||||
" \"category\" : (string) The transaction category.\n"
|
||||
" \"send\" Transactions sent.\n"
|
||||
" \"receive\" Non-coinbase transactions received.\n"
|
||||
|
@ -2514,7 +2514,7 @@ static UniValue walletpassphrase(const JSONRPCRequest& request)
|
|||
|
||||
RPCHelpMan{"walletpassphrase",
|
||||
"\nStores the wallet decryption key in memory for 'timeout' seconds.\n"
|
||||
"This is needed prior to performing transactions related to private keys such as sending bitcoins\n"
|
||||
"This is needed prior to performing transactions related to private keys such as sending coins\n"
|
||||
"\nNote:\n"
|
||||
"Issuing the walletpassphrase command while the wallet is already unlocked will set a new unlock\n"
|
||||
"time that overrides the old one.\n",
|
||||
|
@ -2701,7 +2701,7 @@ static UniValue encryptwallet(const JSONRPCRequest& request)
|
|||
RPCExamples{
|
||||
"\nEncrypt your wallet\n"
|
||||
+ HelpExampleCli("encryptwallet", "\"my pass phrase\"") +
|
||||
"\nNow set the passphrase to use the wallet, such as for signing or sending bitcoin\n"
|
||||
"\nNow set the passphrase to use the wallet, such as for signing or sending coin\n"
|
||||
+ HelpExampleCli("walletpassphrase", "\"my pass phrase\"") +
|
||||
"\nNow we can do something like sign\n"
|
||||
+ HelpExampleCli("signmessage", "\"address\" \"test message\"") +
|
||||
|
@ -2753,7 +2753,7 @@ static UniValue lockunspent(const JSONRPCRequest& request)
|
|||
"\nUpdates list of temporarily unspendable outputs.\n"
|
||||
"Temporarily lock (unlock=false) or unlock (unlock=true) specified transaction outputs.\n"
|
||||
"If no transaction outputs are specified when unlocking then all current locked transaction outputs are unlocked.\n"
|
||||
"A locked transaction output will not be chosen by automatic coin selection, when spending bitcoins.\n"
|
||||
"A locked transaction output will not be chosen by automatic coin selection, when spending coins.\n"
|
||||
"Locks are stored in memory only. Nodes start with zero locked outputs, and the locked output list\n"
|
||||
"is always cleared (by virtue of process exit) when a node stops or fails.\n"
|
||||
"Also see the listunspent call\n",
|
||||
|
@ -3189,7 +3189,7 @@ static UniValue loadwallet(const JSONRPCRequest& request)
|
|||
{
|
||||
RPCHelpMan{"loadwallet",
|
||||
"\nLoads a wallet from a wallet file or directory."
|
||||
"\nNote that all wallet command-line options used when starting bitcoind will be"
|
||||
"\nNote that all wallet command-line options used when starting lbrycrdd will be"
|
||||
"\napplied to the new wallet (eg -zapwallettxes, upgradewallet, rescan, etc).\n",
|
||||
{
|
||||
{"filename", RPCArg::Type::STR, RPCArg::Optional::NO, "The wallet directory or .dat file."},
|
||||
|
@ -3428,9 +3428,9 @@ static UniValue listunspent(const JSONRPCRequest& request)
|
|||
{
|
||||
{"minconf", RPCArg::Type::NUM, /* default */ "1", "The minimum confirmations to filter"},
|
||||
{"maxconf", RPCArg::Type::NUM, /* default */ "9999999", "The maximum confirmations to filter"},
|
||||
{"addresses", RPCArg::Type::ARR, /* default */ "empty array", "A json array of bitcoin addresses to filter",
|
||||
{"addresses", RPCArg::Type::ARR, /* default */ "empty array", "A json array of LBRY addresses to filter",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "bitcoin address"},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "LBRY address"},
|
||||
},
|
||||
},
|
||||
{"include_unsafe", RPCArg::Type::BOOL, /* default */ "true", "Include outputs that are not safe to spend\n"
|
||||
|
@ -3449,7 +3449,7 @@ static UniValue listunspent(const JSONRPCRequest& request)
|
|||
" {\n"
|
||||
" \"txid\" : \"txid\", (string) the transaction id \n"
|
||||
" \"vout\" : n, (numeric) the vout value\n"
|
||||
" \"address\" : \"address\", (string) the bitcoin address\n"
|
||||
" \"address\" : \"address\", (string) the LBRY address\n"
|
||||
" \"label\" : \"label\", (string) The associated label, or \"\" for the default label\n"
|
||||
" \"scriptPubKey\" : \"key\", (string) the script key\n"
|
||||
" \"amount\" : x.xxx, (numeric) the transaction output amount in " + CURRENCY_UNIT + "\n"
|
||||
|
@ -3496,7 +3496,7 @@ static UniValue listunspent(const JSONRPCRequest& request)
|
|||
const UniValue& input = inputs[idx];
|
||||
CTxDestination dest = DecodeDestination(input.get_str());
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid Bitcoin address: ") + input.get_str());
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid LBRY address: ") + input.get_str());
|
||||
}
|
||||
if (!destinations.insert(dest).second) {
|
||||
throw JSONRPCError(RPC_INVALID_PARAMETER, std::string("Invalid parameter, duplicated address: ") + input.get_str());
|
||||
|
@ -3658,7 +3658,7 @@ void FundTransaction(CWallet* const pwallet, CMutableTransaction& tx, CAmount& f
|
|||
CTxDestination dest = DecodeDestination(options["changeAddress"].get_str());
|
||||
|
||||
if (!IsValidDestination(dest)) {
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "changeAddress must be a valid bitcoin address");
|
||||
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "changeAddress must be a valid LBRY address");
|
||||
}
|
||||
|
||||
coinControl.destChange = dest;
|
||||
|
@ -3763,7 +3763,7 @@ static UniValue fundrawtransaction(const JSONRPCRequest& request)
|
|||
{"hexstring", RPCArg::Type::STR_HEX, RPCArg::Optional::NO, "The hex string of the raw transaction"},
|
||||
{"options", RPCArg::Type::OBJ, RPCArg::Optional::OMITTED_NAMED_ARG, "for backward compatibility: passing in a true instead of an object will result in {\"includeWatching\":true}",
|
||||
{
|
||||
{"changeAddress", RPCArg::Type::STR, /* default */ "pool address", "The bitcoin address to receive the change"},
|
||||
{"changeAddress", RPCArg::Type::STR, /* default */ "pool address", "The LBRY address to receive the change"},
|
||||
{"changePosition", RPCArg::Type::NUM, /* default */ "random", "The index of the change output"},
|
||||
{"change_type", RPCArg::Type::STR, /* default */ "set by -changetype", "The output type to use. Only valid if changeAddress is not specified. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."},
|
||||
{"includeWatching", RPCArg::Type::BOOL, /* default */ "true for watch-only wallets, otherwise false", "Also select inputs which are watch only.\n"
|
||||
|
@ -3773,7 +3773,7 @@ static UniValue fundrawtransaction(const JSONRPCRequest& request)
|
|||
{"feeRate", RPCArg::Type::AMOUNT, /* default */ "not set: makes wallet determine the fee", "Set a specific fee rate in " + CURRENCY_UNIT + "/kB"},
|
||||
{"subtractFeeFromOutputs", RPCArg::Type::ARR, /* default */ "empty array", "A json array of integers.\n"
|
||||
" The fee will be equally deducted from the amount of each specified output.\n"
|
||||
" Those recipients will receive less bitcoins than you enter in their corresponding amount field.\n"
|
||||
" Those recipients will receive less coins than you enter in their corresponding amount field.\n"
|
||||
" If no outputs are specified here, the sender pays the fee.",
|
||||
{
|
||||
{"vout_index", RPCArg::Type::NUM, RPCArg::Optional::OMITTED, "The zero-based output index, before a change output is added."},
|
||||
|
@ -4310,14 +4310,14 @@ UniValue getaddressinfo(const JSONRPCRequest& request)
|
|||
}
|
||||
|
||||
RPCHelpMan{"getaddressinfo",
|
||||
"\nReturn information about the given bitcoin address. Some information requires the address\n"
|
||||
"\nReturn information about the given LBRY address. Some information requires the address\n"
|
||||
"to be in the wallet.\n",
|
||||
{
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The bitcoin address to get the information of."},
|
||||
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The LBRY address to get the information of."},
|
||||
},
|
||||
RPCResult{
|
||||
"{\n"
|
||||
" \"address\" : \"address\", (string) The bitcoin address validated\n"
|
||||
" \"address\" : \"address\", (string) The LBRY address validated\n"
|
||||
" \"scriptPubKey\" : \"hex\", (string) The hex-encoded scriptPubKey generated by the address\n"
|
||||
" \"ismine\" : true|false, (boolean) If the address is yours or not\n"
|
||||
" \"iswatchonly\" : true|false, (boolean) If the address is watchonly\n"
|
||||
|
@ -4713,7 +4713,7 @@ UniValue walletcreatefundedpsbt(const JSONRPCRequest& request)
|
|||
{
|
||||
{"", RPCArg::Type::OBJ, RPCArg::Optional::OMITTED, "",
|
||||
{
|
||||
{"address", RPCArg::Type::AMOUNT, RPCArg::Optional::NO, "A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in " + CURRENCY_UNIT + ""},
|
||||
{"address", RPCArg::Type::AMOUNT, RPCArg::Optional::NO, "A key-value pair. The key (string) is the LBRY address, the value (float or string) is the amount in " + CURRENCY_UNIT + ""},
|
||||
},
|
||||
},
|
||||
{"", RPCArg::Type::OBJ, RPCArg::Optional::OMITTED, "",
|
||||
|
@ -4726,7 +4726,7 @@ UniValue walletcreatefundedpsbt(const JSONRPCRequest& request)
|
|||
{"locktime", RPCArg::Type::NUM, /* default */ "0", "Raw locktime. Non-0 value also locktime-activates inputs"},
|
||||
{"options", RPCArg::Type::OBJ, RPCArg::Optional::OMITTED_NAMED_ARG, "",
|
||||
{
|
||||
{"changeAddress", RPCArg::Type::STR_HEX, /* default */ "pool address", "The bitcoin address to receive the change"},
|
||||
{"changeAddress", RPCArg::Type::STR_HEX, /* default */ "pool address", "The LBRY address to receive the change"},
|
||||
{"changePosition", RPCArg::Type::NUM, /* default */ "random", "The index of the change output"},
|
||||
{"change_type", RPCArg::Type::STR, /* default */ "set by -changetype", "The output type to use. Only valid if changeAddress is not specified. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."},
|
||||
{"includeWatching", RPCArg::Type::BOOL, /* default */ "true for watch-only wallets, otherwise false", "Also select inputs which are watch only"},
|
||||
|
@ -4734,7 +4734,7 @@ UniValue walletcreatefundedpsbt(const JSONRPCRequest& request)
|
|||
{"feeRate", RPCArg::Type::AMOUNT, /* default */ "not set: makes wallet determine the fee", "Set a specific fee rate in " + CURRENCY_UNIT + "/kB"},
|
||||
{"subtractFeeFromOutputs", RPCArg::Type::ARR, /* default */ "empty array", "A json array of integers.\n"
|
||||
" The fee will be equally deducted from the amount of each specified output.\n"
|
||||
" Those recipients will receive less bitcoins than you enter in their corresponding amount field.\n"
|
||||
" Those recipients will receive less coins than you enter in their corresponding amount field.\n"
|
||||
" If no outputs are specified here, the sender pays the fee.",
|
||||
{
|
||||
{"vout_index", RPCArg::Type::NUM, RPCArg::Optional::OMITTED, "The zero-based output index, before a change output is added."},
|
||||
|
|
|
@ -160,7 +160,7 @@ BOOST_FIXTURE_TEST_CASE(importmulti_rescan, TestChain100Setup)
|
|||
"timestamp %d. There was an error reading a block from time %d, which is after or within %d "
|
||||
"seconds of key creation, and could contain transactions pertaining to the key. As a result, "
|
||||
"transactions and coins using this key may not appear in the wallet. This error could be caused "
|
||||
"by pruning or data corruption (see bitcoind log for details) and could be dealt with by "
|
||||
"by pruning or data corruption (see lbrycrdd log for details) and could be dealt with by "
|
||||
"downloading and rescanning the relevant blocks (see -reindex and -rescan "
|
||||
"options).\"}},{\"success\":true}]",
|
||||
0, oldTip->GetBlockTimeMax(), TIMESTAMP_WINDOW));
|
||||
|
|
Loading…
Add table
Reference in a new issue