mirror of
https://github.com/Retropex/bitcoin.git
synced 2025-05-13 03:30:42 +02:00
Qt/Options: Configure spkreuse using rwconf
This commit is contained in:
parent
f58d281cde
commit
611b9aa2d1
@ -256,6 +256,12 @@ OptionsDialog::OptionsDialog(QWidget* parent, bool enableWallet)
|
|||||||
verticalLayout_Spamfiltering->addWidget(rejectunknownscripts);
|
verticalLayout_Spamfiltering->addWidget(rejectunknownscripts);
|
||||||
FixTabOrder(rejectunknownscripts);
|
FixTabOrder(rejectunknownscripts);
|
||||||
|
|
||||||
|
rejectspkreuse = new QCheckBox(groupBox_Spamfiltering);
|
||||||
|
rejectspkreuse->setText(tr("Disallow most address reuse"));
|
||||||
|
rejectspkreuse->setToolTip(tr("With this option enabled, your memory pool will only allow each unique payment destination to be used once, effectively deprioritising address reuse. Address reuse is not technically supported, and harms the privacy of all Bitcoin users. It also has limited real-world utility, and has been known to be common with spam."));
|
||||||
|
verticalLayout_Spamfiltering->addWidget(rejectspkreuse);
|
||||||
|
FixTabOrder(rejectspkreuse);
|
||||||
|
|
||||||
minrelaytxfee = new BitcoinAmountField(groupBox_Spamfiltering);
|
minrelaytxfee = new BitcoinAmountField(groupBox_Spamfiltering);
|
||||||
CreateOptionUI(verticalLayout_Spamfiltering, minrelaytxfee, tr("Consider transaction fees less than %s per kB relayed to be worthless."));
|
CreateOptionUI(verticalLayout_Spamfiltering, minrelaytxfee, tr("Consider transaction fees less than %s per kB relayed to be worthless."));
|
||||||
|
|
||||||
@ -495,6 +501,8 @@ void OptionsDialog::setModel(OptionsModel *_model)
|
|||||||
connect(ui->connectSocksTor, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
connect(ui->connectSocksTor, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
||||||
connect(ui->peerbloomfilters, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
connect(ui->peerbloomfilters, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
||||||
connect(ui->peerblockfilters, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
connect(ui->peerblockfilters, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
||||||
|
/* Mempool */
|
||||||
|
connect(rejectspkreuse, &QCheckBox::clicked, this, &OptionsDialog::showRestartWarning);
|
||||||
/* Display */
|
/* Display */
|
||||||
connect(ui->lang, qOverload<>(&QValueComboBox::valueChanged), [this]{ showRestartWarning(); });
|
connect(ui->lang, qOverload<>(&QValueComboBox::valueChanged), [this]{ showRestartWarning(); });
|
||||||
connect(ui->thirdPartyTxUrls, &QLineEdit::textChanged, [this]{ showRestartWarning(); });
|
connect(ui->thirdPartyTxUrls, &QLineEdit::textChanged, [this]{ showRestartWarning(); });
|
||||||
@ -582,6 +590,7 @@ void OptionsDialog::setMapper()
|
|||||||
mapper->addMapping(mempoolexpiry, OptionsModel::mempoolexpiry);
|
mapper->addMapping(mempoolexpiry, OptionsModel::mempoolexpiry);
|
||||||
|
|
||||||
mapper->addMapping(rejectunknownscripts, OptionsModel::rejectunknownscripts);
|
mapper->addMapping(rejectunknownscripts, OptionsModel::rejectunknownscripts);
|
||||||
|
mapper->addMapping(rejectspkreuse, OptionsModel::rejectspkreuse);
|
||||||
mapper->addMapping(minrelaytxfee, OptionsModel::minrelaytxfee);
|
mapper->addMapping(minrelaytxfee, OptionsModel::minrelaytxfee);
|
||||||
mapper->addMapping(bytespersigop, OptionsModel::bytespersigop);
|
mapper->addMapping(bytespersigop, OptionsModel::bytespersigop);
|
||||||
mapper->addMapping(bytespersigopstrict, OptionsModel::bytespersigopstrict);
|
mapper->addMapping(bytespersigopstrict, OptionsModel::bytespersigopstrict);
|
||||||
|
@ -106,6 +106,7 @@ private:
|
|||||||
QSpinBox *mempoolexpiry;
|
QSpinBox *mempoolexpiry;
|
||||||
|
|
||||||
QCheckBox *rejectunknownscripts;
|
QCheckBox *rejectunknownscripts;
|
||||||
|
QCheckBox *rejectspkreuse;
|
||||||
BitcoinAmountField *minrelaytxfee;
|
BitcoinAmountField *minrelaytxfee;
|
||||||
QSpinBox *bytespersigop, *bytespersigopstrict;
|
QSpinBox *bytespersigop, *bytespersigopstrict;
|
||||||
QSpinBox *limitancestorcount;
|
QSpinBox *limitancestorcount;
|
||||||
|
@ -332,6 +332,7 @@ bool OptionsModel::Init(bilingual_str& error)
|
|||||||
|
|
||||||
// rwconf settings that require a restart
|
// rwconf settings that require a restart
|
||||||
f_peerbloomfilters = gArgs.GetBoolArg("-peerbloomfilters", DEFAULT_PEERBLOOMFILTERS);
|
f_peerbloomfilters = gArgs.GetBoolArg("-peerbloomfilters", DEFAULT_PEERBLOOMFILTERS);
|
||||||
|
f_rejectspkreuse = (SpkReuseMode != SRM_ALLOW);
|
||||||
|
|
||||||
// Display
|
// Display
|
||||||
if (settings.contains("FontForMoney")) {
|
if (settings.contains("FontForMoney")) {
|
||||||
@ -628,6 +629,8 @@ QVariant OptionsModel::getOption(OptionID option, const std::string& suffix) con
|
|||||||
return qlonglong(std::chrono::duration_cast<std::chrono::hours>(node().mempool().m_expiry).count());
|
return qlonglong(std::chrono::duration_cast<std::chrono::hours>(node().mempool().m_expiry).count());
|
||||||
case rejectunknownscripts:
|
case rejectunknownscripts:
|
||||||
return node().mempool().m_require_standard;
|
return node().mempool().m_require_standard;
|
||||||
|
case rejectspkreuse:
|
||||||
|
return f_rejectspkreuse;
|
||||||
case minrelaytxfee:
|
case minrelaytxfee:
|
||||||
return qlonglong(node().mempool().m_min_relay_feerate.GetFeePerK());
|
return qlonglong(node().mempool().m_min_relay_feerate.GetFeePerK());
|
||||||
case bytespersigop:
|
case bytespersigop:
|
||||||
@ -1067,6 +1070,14 @@ bool OptionsModel::setOption(OptionID option, const QVariant& value, const std::
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case rejectspkreuse:
|
||||||
|
if (changed()) {
|
||||||
|
const bool fNewValue = value.toBool();
|
||||||
|
gArgs.ModifyRWConfigFile("spkreuse", fNewValue ? "conflict" : "allow");
|
||||||
|
f_rejectspkreuse = fNewValue;
|
||||||
|
setRestartRequired(true);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case minrelaytxfee:
|
case minrelaytxfee:
|
||||||
if (changed()) {
|
if (changed()) {
|
||||||
CAmount nNv = value.toLongLong();
|
CAmount nNv = value.toLongLong();
|
||||||
|
@ -87,6 +87,7 @@ public:
|
|||||||
incrementalrelayfee,
|
incrementalrelayfee,
|
||||||
mempoolexpiry,
|
mempoolexpiry,
|
||||||
rejectunknownscripts, // bool
|
rejectunknownscripts, // bool
|
||||||
|
rejectspkreuse, // bool
|
||||||
minrelaytxfee,
|
minrelaytxfee,
|
||||||
bytespersigop,
|
bytespersigop,
|
||||||
bytespersigopstrict,
|
bytespersigopstrict,
|
||||||
@ -178,6 +179,7 @@ private:
|
|||||||
|
|
||||||
/* rwconf settings that require a restart */
|
/* rwconf settings that require a restart */
|
||||||
bool f_peerbloomfilters;
|
bool f_peerbloomfilters;
|
||||||
|
bool f_rejectspkreuse;
|
||||||
|
|
||||||
// Add option to list of GUI options overridden through command line/config file
|
// Add option to list of GUI options overridden through command line/config file
|
||||||
void addOverriddenOption(const std::string &option);
|
void addOverriddenOption(const std::string &option);
|
||||||
|
Loading…
Reference in New Issue
Block a user