aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/wallet_rpc_server.cpp
diff options
context:
space:
mode:
authorcryptochangements34 <bevanoffr@gmail.com>2018-03-05 10:10:35 -0500
committercryptochangements34 <bevanoffr@gmail.com>2018-03-05 10:10:35 -0500
commit3d452367b012d1e0f6760a557ed059e29cc1d967 (patch)
treeba4a67cd2704faf70755cd592ebcc16534deb08b /src/wallet/wallet_rpc_server.cpp
parentMerge pull request #3245 (diff)
downloadmonero-3d452367b012d1e0f6760a557ed059e29cc1d967.tar.xz
allow using ring size instead of mixin for rpc transfer
Diffstat (limited to '')
-rw-r--r--src/wallet/wallet_rpc_server.cpp40
1 files changed, 36 insertions, 4 deletions
diff --git a/src/wallet/wallet_rpc_server.cpp b/src/wallet/wallet_rpc_server.cpp
index 6d5419521..3f28fec20 100644
--- a/src/wallet/wallet_rpc_server.cpp
+++ b/src/wallet/wallet_rpc_server.cpp
@@ -786,7 +786,15 @@ namespace tools
try
{
- uint64_t mixin = m_wallet->adjust_mixin(req.mixin);
+ uint64_t mixin;
+ if(req.ring_size != 0)
+ {
+ mixin = m_wallet->adjust_mixin(req.ring_size - 1);
+ }
+ else
+ {
+ mixin = m_wallet->adjust_mixin(req.mixin);
+ }
uint32_t priority = m_wallet->adjust_priority(req.priority);
std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_2(dsts, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon);
@@ -838,7 +846,15 @@ namespace tools
try
{
- uint64_t mixin = m_wallet->adjust_mixin(req.mixin);
+ uint64_t mixin;
+ if(req.ring_size != 0)
+ {
+ mixin = m_wallet->adjust_mixin(req.ring_size - 1);
+ }
+ else
+ {
+ mixin = m_wallet->adjust_mixin(req.mixin);
+ }
uint32_t priority = m_wallet->adjust_priority(req.priority);
LOG_PRINT_L2("on_transfer_split calling create_transactions_2");
std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_2(dsts, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon);
@@ -905,7 +921,15 @@ namespace tools
try
{
- uint64_t mixin = m_wallet->adjust_mixin(req.mixin);
+ uint64_t mixin;
+ if(req.ring_size != 0)
+ {
+ mixin = m_wallet->adjust_mixin(req.ring_size - 1);
+ }
+ else
+ {
+ mixin = m_wallet->adjust_mixin(req.mixin);
+ }
uint32_t priority = m_wallet->adjust_priority(req.priority);
std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_all(req.below_amount, dsts[0].addr, dsts[0].is_subaddress, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon);
@@ -953,7 +977,15 @@ namespace tools
try
{
- uint64_t mixin = m_wallet->adjust_mixin(req.mixin);
+ uint64_t mixin;
+ if(req.ring_size != 0)
+ {
+ mixin = m_wallet->adjust_mixin(req.ring_size - 1);
+ }
+ else
+ {
+ mixin = m_wallet->adjust_mixin(req.mixin);
+ }
uint32_t priority = m_wallet->adjust_priority(req.priority);
std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_single(ki, dsts[0].addr, dsts[0].is_subaddress, mixin, req.unlock_time, priority, extra, m_trusted_daemon);