simplewallet: warn if invalid default ring size is set and actually ignore the setting

This commit is contained in:
stoffu 2019-08-29 15:31:28 +09:00
parent 85014813cf
commit f380f69c69
No known key found for this signature in database
GPG key ID: 41DAB8343A9EC012

View file

@ -2260,9 +2260,16 @@ bool simple_wallet::set_default_ring_size(const std::vector<std::string> &args/*
} }
if (ring_size != 0 && ring_size != DEFAULT_MIX+1) if (ring_size != 0 && ring_size != DEFAULT_MIX+1)
message_writer() << tr("WARNING: this is a non default ring size, which may harm your privacy. Default is recommended."); {
else if (ring_size == DEFAULT_MIX) if (m_wallet->use_fork_rules(8, 0))
message_writer() << tr("WARNING: from v8, ring size will be fixed and this setting will be ignored."); {
message_writer() << tr("WARNING: from v8, ring size will be fixed and this setting will be ignored.");
}
else
{
message_writer() << tr("WARNING: this is a non default ring size, which may harm your privacy. Default is recommended.");
}
}
const auto pwd_container = get_and_verify_password(); const auto pwd_container = get_and_verify_password();
if (pwd_container) if (pwd_container)
@ -5731,14 +5738,11 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri
priority = m_wallet->adjust_priority(priority); priority = m_wallet->adjust_priority(priority);
size_t fake_outs_count = 0; size_t fake_outs_count = DEFAULT_MIX;
if(local_args.size() > 0) { if(local_args.size() > 0) {
size_t ring_size; size_t ring_size;
if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0])) if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0]))
{ {
fake_outs_count = m_wallet->default_mixin();
if (fake_outs_count == 0)
fake_outs_count = DEFAULT_MIX;
} }
else if (ring_size == 0) else if (ring_size == 0)
{ {
@ -6352,14 +6356,11 @@ bool simple_wallet::sweep_main(uint64_t below, bool locked, const std::vector<st
priority = m_wallet->adjust_priority(priority); priority = m_wallet->adjust_priority(priority);
size_t fake_outs_count = 0; size_t fake_outs_count = DEFAULT_MIX;
if(local_args.size() > 0) { if(local_args.size() > 0) {
size_t ring_size; size_t ring_size;
if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0])) if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0]))
{ {
fake_outs_count = m_wallet->default_mixin();
if (fake_outs_count == 0)
fake_outs_count = DEFAULT_MIX;
} }
else if (ring_size == 0) else if (ring_size == 0)
{ {
@ -6651,14 +6652,11 @@ bool simple_wallet::sweep_single(const std::vector<std::string> &args_)
priority = m_wallet->adjust_priority(priority); priority = m_wallet->adjust_priority(priority);
size_t fake_outs_count = 0; size_t fake_outs_count = DEFAULT_MIX;
if(local_args.size() > 0) { if(local_args.size() > 0) {
size_t ring_size; size_t ring_size;
if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0])) if(!epee::string_tools::get_xtype_from_string(ring_size, local_args[0]))
{ {
fake_outs_count = m_wallet->default_mixin();
if (fake_outs_count == 0)
fake_outs_count = DEFAULT_MIX;
} }
else if (ring_size == 0) else if (ring_size == 0)
{ {