Monero v0.18.3.4 (#38)
* updated monero dependency * update patches for v0.18.3.4 * update generate checksum to include version of submodule as well
This commit is contained in:
+1
-1
@@ -31,7 +31,7 @@ fi
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
cd $repo
|
cd $repo
|
||||||
git am -3 ../patches/$repo/*.patch
|
git am -3 --whitespace=fix --reject ../patches/$repo/*.patch
|
||||||
if [[ "$repo" == "wownero" ]];
|
if [[ "$repo" == "wownero" ]];
|
||||||
then
|
then
|
||||||
pushd external/randomwow
|
pushd external/randomwow
|
||||||
|
|||||||
@@ -3,12 +3,11 @@ cd "$(realpath $(dirname $0))"
|
|||||||
|
|
||||||
for coin in monero wownero;
|
for coin in monero wownero;
|
||||||
do
|
do
|
||||||
|
submodule_hash=$(git ls-tree HEAD ${coin} | xargs | awk '{ print $3 }')
|
||||||
COIN=$(echo "$coin" | tr a-z A-Z)
|
COIN=$(echo "$coin" | tr a-z A-Z)
|
||||||
COIN_wallet2_api_c_h_sha256=$(sha256sum ${coin}_libwallet2_api_c/src/main/cpp/wallet2_api_c.h | xargs | awk '{ print $1 }')
|
COIN_wallet2_api_c_h_sha256=$(sha256sum ${coin}_libwallet2_api_c/src/main/cpp/wallet2_api_c.h | xargs | awk '{ print $1 }')
|
||||||
COIN_wallet2_api_c_cpp_sha256=$(sha256sum ${coin}_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp | xargs | awk '{ print $1 }')
|
COIN_wallet2_api_c_cpp_sha256=$(sha256sum ${coin}_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp | xargs | awk '{ print $1 }')-${submodule_hash}
|
||||||
COIN_wallet2_api_c_exp_sha256=$(sha256sum ${coin}_libwallet2_api_c/${coin}_libwallet2_api_c.exp | xargs | awk '{ print $1 }')
|
COIN_wallet2_api_c_exp_sha256=$(sha256sum ${coin}_libwallet2_api_c/${coin}_libwallet2_api_c.exp | xargs | awk '{ print $1 }')
|
||||||
COIN_libwallet2_api_c_version=$(git log --exclude=${coin}_checksum.h --oneline -- ${coin}_libwallet2_api_c | wc -l)
|
|
||||||
COIN_libwallet2_api_c_date=$(git log --exclude=${coin}_checksum.h -1 --format=%ai -- ${coin}_libwallet2_api_c)
|
|
||||||
|
|
||||||
cat > ${coin}_libwallet2_api_c/src/main/cpp/${coin}_checksum.h << EOF
|
cat > ${coin}_libwallet2_api_c/src/main/cpp/${coin}_checksum.h << EOF
|
||||||
#ifndef MONEROC_CHECKSUMS
|
#ifndef MONEROC_CHECKSUMS
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// ignore_for_file: constant_identifier_names
|
// ignore_for_file: constant_identifier_names
|
||||||
const String wallet2_api_c_h_sha256 = "e8db0ef0324a153f5e3ecca4c0db23c54f4576e84988f04bd4f11c1142f9d7ad";
|
const String wallet2_api_c_h_sha256 = "e8db0ef0324a153f5e3ecca4c0db23c54f4576e84988f04bd4f11c1142f9d7ad";
|
||||||
const String wallet2_api_c_cpp_sha256 = "d1842cded0040c16b8886878681c8938005f69ec1378fa9be68a430311cc3666";
|
const String wallet2_api_c_cpp_sha256 = "d1842cded0040c16b8886878681c8938005f69ec1378fa9be68a430311cc3666-b089f9ee69924882c5d14dd1a6991deb05d9d1cd";
|
||||||
const String wallet2_api_c_exp_sha256 = "c8913ac41068f67b57c9b0a3c7dd8973e3c1273b66c2ff0aadb0003931da748c";
|
const String wallet2_api_c_exp_sha256 = "c8913ac41068f67b57c9b0a3c7dd8973e3c1273b66c2ff0aadb0003931da748c";
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// ignore_for_file: constant_identifier_names
|
// ignore_for_file: constant_identifier_names
|
||||||
const String wallet2_api_c_h_sha256 = "8a8d386dd5d996c89a0586c55b295ef95ca584bf1ffa26255152b291910a0a77";
|
const String wallet2_api_c_h_sha256 = "8a8d386dd5d996c89a0586c55b295ef95ca584bf1ffa26255152b291910a0a77";
|
||||||
const String wallet2_api_c_cpp_sha256 = "ed400bd9c4709383ffd42a9fbe68be37a2a47a42f92eacaf3a2dbd248c422739";
|
const String wallet2_api_c_cpp_sha256 = "ed400bd9c4709383ffd42a9fbe68be37a2a47a42f92eacaf3a2dbd248c422739-e25963cbc11ca0a0fe5eb34b9bd7c72e4f51b795";
|
||||||
const String wallet2_api_c_exp_sha256 = "3673e40e1a7115552276d1d541f6e4d5a0fef47c40fff7b988f49923af84c8a4";
|
const String wallet2_api_c_exp_sha256 = "3673e40e1a7115552276d1d541f6e4d5a0fef47c40fff7b988f49923af84c8a4";
|
||||||
|
|||||||
+1
-1
Submodule monero updated: 81d4db08eb...b089f9ee69
@@ -1,6 +1,6 @@
|
|||||||
#ifndef MONEROC_CHECKSUMS
|
#ifndef MONEROC_CHECKSUMS
|
||||||
#define MONEROC_CHECKSUMS
|
#define MONEROC_CHECKSUMS
|
||||||
const char * MONERO_wallet2_api_c_h_sha256 = "e8db0ef0324a153f5e3ecca4c0db23c54f4576e84988f04bd4f11c1142f9d7ad";
|
const char * MONERO_wallet2_api_c_h_sha256 = "e8db0ef0324a153f5e3ecca4c0db23c54f4576e84988f04bd4f11c1142f9d7ad";
|
||||||
const char * MONERO_wallet2_api_c_cpp_sha256 = "d1842cded0040c16b8886878681c8938005f69ec1378fa9be68a430311cc3666";
|
const char * MONERO_wallet2_api_c_cpp_sha256 = "d1842cded0040c16b8886878681c8938005f69ec1378fa9be68a430311cc3666-b089f9ee69924882c5d14dd1a6991deb05d9d1cd";
|
||||||
const char * MONERO_wallet2_api_c_exp_sha256 = "c8913ac41068f67b57c9b0a3c7dd8973e3c1273b66c2ff0aadb0003931da748c";
|
const char * MONERO_wallet2_api_c_exp_sha256 = "c8913ac41068f67b57c9b0a3c7dd8973e3c1273b66c2ff0aadb0003931da748c";
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -1,18 +1,15 @@
|
|||||||
From b9fac308d903e9dd79b95d6db73c37807e1219b7 Mon Sep 17 00:00:00 2001
|
From 8324040dfb89bd90b414ea685b2aa758a461fbc4 Mon Sep 17 00:00:00 2001
|
||||||
From: tobtoht <tob@featherwallet.org>
|
From: tobtoht <tob@featherwallet.org>
|
||||||
Date: Tue, 12 Mar 2024 09:42:37 +0100
|
Date: Tue, 12 Mar 2024 09:42:37 +0100
|
||||||
Subject: [PATCH 01/10] polyseed
|
Subject: [PATCH 01/16] polyseed
|
||||||
|
|
||||||
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
---
|
---
|
||||||
.github/workflows/build.yml | 4 +-
|
|
||||||
.gitmodules | 6 +
|
.gitmodules | 6 +
|
||||||
CMakeLists.txt | 4 +-
|
CMakeLists.txt | 4 +-
|
||||||
contrib/epee/include/wipeable_string.h | 7 +
|
contrib/epee/include/wipeable_string.h | 7 +
|
||||||
contrib/epee/src/wipeable_string.cpp | 10 ++
|
contrib/epee/src/wipeable_string.cpp | 10 ++
|
||||||
external/CMakeLists.txt | 2 +
|
external/CMakeLists.txt | 2 +
|
||||||
external/polyseed | 1 +
|
|
||||||
external/utf8proc | 1 +
|
|
||||||
src/CMakeLists.txt | 1 +
|
src/CMakeLists.txt | 1 +
|
||||||
src/cryptonote_basic/CMakeLists.txt | 1 +
|
src/cryptonote_basic/CMakeLists.txt | 1 +
|
||||||
src/cryptonote_basic/account.cpp | 23 +++-
|
src/cryptonote_basic/account.cpp | 23 +++-
|
||||||
@@ -30,30 +27,13 @@ Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
|||||||
src/wallet/api/wallet_manager.h | 10 ++
|
src/wallet/api/wallet_manager.h | 10 ++
|
||||||
src/wallet/wallet2.cpp | 102 ++++++++++++--
|
src/wallet/wallet2.cpp | 102 ++++++++++++--
|
||||||
src/wallet/wallet2.h | 30 +++-
|
src/wallet/wallet2.h | 30 +++-
|
||||||
25 files changed, 809 insertions(+), 21 deletions(-)
|
22 files changed, 805 insertions(+), 19 deletions(-)
|
||||||
create mode 160000 external/polyseed
|
|
||||||
create mode 160000 external/utf8proc
|
|
||||||
create mode 100644 src/polyseed/CMakeLists.txt
|
create mode 100644 src/polyseed/CMakeLists.txt
|
||||||
create mode 100644 src/polyseed/pbkdf2.c
|
create mode 100644 src/polyseed/pbkdf2.c
|
||||||
create mode 100644 src/polyseed/pbkdf2.h
|
create mode 100644 src/polyseed/pbkdf2.h
|
||||||
create mode 100644 src/polyseed/polyseed.cpp
|
create mode 100644 src/polyseed/polyseed.cpp
|
||||||
create mode 100644 src/polyseed/polyseed.hpp
|
create mode 100644 src/polyseed/polyseed.hpp
|
||||||
|
|
||||||
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
|
|
||||||
index 4c1e381c0..70bea03b3 100644
|
|
||||||
--- a/.github/workflows/build.yml
|
|
||||||
+++ b/.github/workflows/build.yml
|
|
||||||
@@ -124,8 +124,8 @@ jobs:
|
|
||||||
- name: build
|
|
||||||
run: |
|
|
||||||
${{env.CCACHE_SETTINGS}}
|
|
||||||
- cmake .
|
|
||||||
- make wallet_api -j3
|
|
||||||
+ cmake -S . -B build
|
|
||||||
+ cmake --build build wallet_api -j3
|
|
||||||
|
|
||||||
test-ubuntu:
|
|
||||||
needs: build-ubuntu
|
|
||||||
diff --git a/.gitmodules b/.gitmodules
|
diff --git a/.gitmodules b/.gitmodules
|
||||||
index 721cce3b4..73a23fb35 100644
|
index 721cce3b4..73a23fb35 100644
|
||||||
--- a/.gitmodules
|
--- a/.gitmodules
|
||||||
@@ -148,20 +128,6 @@ index 5b7f69a56..1b9761d70 100644
|
|||||||
+add_subdirectory(polyseed EXCLUDE_FROM_ALL)
|
+add_subdirectory(polyseed EXCLUDE_FROM_ALL)
|
||||||
+add_subdirectory(utf8proc EXCLUDE_FROM_ALL)
|
+add_subdirectory(utf8proc EXCLUDE_FROM_ALL)
|
||||||
\ No newline at end of file
|
\ No newline at end of file
|
||||||
diff --git a/external/polyseed b/external/polyseed
|
|
||||||
new file mode 160000
|
|
||||||
index 000000000..9d4f1a032
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/external/polyseed
|
|
||||||
@@ -0,0 +1 @@
|
|
||||||
+Subproject commit 9d4f1a032585656e1a642ee70cdf929001badba6
|
|
||||||
diff --git a/external/utf8proc b/external/utf8proc
|
|
||||||
new file mode 160000
|
|
||||||
index 000000000..1cb28a66c
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/external/utf8proc
|
|
||||||
@@ -0,0 +1 @@
|
|
||||||
+Subproject commit 1cb28a66ca79a0845e99433fd1056257456cef8b
|
|
||||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
index 3335d3c21..06b708cf0 100644
|
index 3335d3c21..06b708cf0 100644
|
||||||
--- a/src/CMakeLists.txt
|
--- a/src/CMakeLists.txt
|
||||||
@@ -468,7 +434,7 @@ index 000000000..f6253b9d7
|
|||||||
\ No newline at end of file
|
\ No newline at end of file
|
||||||
diff --git a/src/polyseed/polyseed.cpp b/src/polyseed/polyseed.cpp
|
diff --git a/src/polyseed/polyseed.cpp b/src/polyseed/polyseed.cpp
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 000000000..0a8852777
|
index 000000000..231a48a94
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/polyseed/polyseed.cpp
|
+++ b/src/polyseed/polyseed.cpp
|
||||||
@@ -0,0 +1,182 @@
|
@@ -0,0 +1,182 @@
|
||||||
@@ -520,7 +486,7 @@ index 000000000..0a8852777
|
|||||||
+ if (result < 0 || result > (POLYSEED_STR_SIZE - 1)) {
|
+ if (result < 0 || result > (POLYSEED_STR_SIZE - 1)) {
|
||||||
+ throw std::runtime_error("Unicode normalization failed");
|
+ throw std::runtime_error("Unicode normalization failed");
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ result = utf8proc_reencode(buffer, result, options);
|
+ result = utf8proc_reencode(buffer, result, options);
|
||||||
+ if (result < 0 || result > POLYSEED_STR_SIZE) {
|
+ if (result < 0 || result > POLYSEED_STR_SIZE) {
|
||||||
+ throw std::runtime_error("Unicode normalization failed");
|
+ throw std::runtime_error("Unicode normalization failed");
|
||||||
@@ -829,7 +795,7 @@ index 000000000..2c8c777a7
|
|||||||
+#endif //POLYSEED_HPP
|
+#endif //POLYSEED_HPP
|
||||||
\ No newline at end of file
|
\ No newline at end of file
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 8d7364cba..472f05016 100644
|
index fc4f89128..d96ea97ea 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -690,6 +690,28 @@ bool WalletImpl::recoverFromDevice(const std::string &path, const std::string &p
|
@@ -690,6 +690,28 @@ bool WalletImpl::recoverFromDevice(const std::string &path, const std::string &p
|
||||||
@@ -876,7 +842,7 @@ index 8d7364cba..472f05016 100644
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ bool result = m_wallet->get_polyseed(seed_words_epee, passphrase_epee);
|
+ bool result = m_wallet->get_polyseed(seed_words_epee, passphrase_epee);
|
||||||
+
|
+
|
||||||
+ seed_words.assign(seed_words_epee.data(), seed_words_epee.size());
|
+ seed_words.assign(seed_words_epee.data(), seed_words_epee.size());
|
||||||
+ passphrase.assign(passphrase_epee.data(), passphrase_epee.size());
|
+ passphrase.assign(passphrase_epee.data(), passphrase_epee.size());
|
||||||
+
|
+
|
||||||
@@ -898,7 +864,7 @@ index 8d7364cba..472f05016 100644
|
|||||||
+bool Wallet::createPolyseed(std::string &seed_words, std::string &err, const std::string &language)
|
+bool Wallet::createPolyseed(std::string &seed_words, std::string &err, const std::string &language)
|
||||||
+{
|
+{
|
||||||
+ epee::wipeable_string seed_words_epee(seed_words.c_str(), seed_words.size());
|
+ epee::wipeable_string seed_words_epee(seed_words.c_str(), seed_words.size());
|
||||||
+
|
+
|
||||||
+ try {
|
+ try {
|
||||||
+ polyseed::data polyseed(POLYSEED_COIN);
|
+ polyseed::data polyseed(POLYSEED_COIN);
|
||||||
+ polyseed.create(0);
|
+ polyseed.create(0);
|
||||||
@@ -1026,7 +992,7 @@ index a223e1df9..28fcd36c9 100644
|
|||||||
bool walletExists(const std::string &path) override;
|
bool walletExists(const std::string &path) override;
|
||||||
bool verifyWalletPassword(const std::string &keys_file_name, const std::string &password, bool no_spend_key, uint64_t kdf_rounds = 1) const override;
|
bool verifyWalletPassword(const std::string &keys_file_name, const std::string &password, bool no_spend_key, uint64_t kdf_rounds = 1) const override;
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index f34b10988..e4e02c782 100644
|
index 64f486e71..9e95f44d6 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -92,6 +92,7 @@ using namespace epee;
|
@@ -92,6 +92,7 @@ using namespace epee;
|
||||||
@@ -1074,7 +1040,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
//----------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------
|
||||||
@@ -4629,6 +4646,9 @@ boost::optional<wallet2::keys_file_data> wallet2::get_keys_file_data(const epee:
|
@@ -4630,6 +4647,9 @@ boost::optional<wallet2::keys_file_data> wallet2::get_keys_file_data(const epee:
|
||||||
value2.SetInt(m_enable_multisig ? 1 : 0);
|
value2.SetInt(m_enable_multisig ? 1 : 0);
|
||||||
json.AddMember("enable_multisig", value2, json.GetAllocator());
|
json.AddMember("enable_multisig", value2, json.GetAllocator());
|
||||||
|
|
||||||
@@ -1084,7 +1050,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
// Serialize the JSON object
|
// Serialize the JSON object
|
||||||
rapidjson::StringBuffer buffer;
|
rapidjson::StringBuffer buffer;
|
||||||
rapidjson::Writer<rapidjson::StringBuffer> writer(buffer);
|
rapidjson::Writer<rapidjson::StringBuffer> writer(buffer);
|
||||||
@@ -4776,6 +4796,7 @@ bool wallet2::load_keys_buf(const std::string& keys_buf, const epee::wipeable_st
|
@@ -4777,6 +4797,7 @@ bool wallet2::load_keys_buf(const std::string& keys_buf, const epee::wipeable_st
|
||||||
m_credits_target = 0;
|
m_credits_target = 0;
|
||||||
m_enable_multisig = false;
|
m_enable_multisig = false;
|
||||||
m_allow_mismatched_daemon_version = false;
|
m_allow_mismatched_daemon_version = false;
|
||||||
@@ -1092,7 +1058,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
}
|
}
|
||||||
else if(json.IsObject())
|
else if(json.IsObject())
|
||||||
{
|
{
|
||||||
@@ -5012,6 +5033,8 @@ bool wallet2::load_keys_buf(const std::string& keys_buf, const epee::wipeable_st
|
@@ -5013,6 +5034,8 @@ bool wallet2::load_keys_buf(const std::string& keys_buf, const epee::wipeable_st
|
||||||
m_credits_target = field_credits_target;
|
m_credits_target = field_credits_target;
|
||||||
GET_FIELD_FROM_JSON_RETURN_ON_ERROR(json, enable_multisig, int, Int, false, false);
|
GET_FIELD_FROM_JSON_RETURN_ON_ERROR(json, enable_multisig, int, Int, false, false);
|
||||||
m_enable_multisig = field_enable_multisig;
|
m_enable_multisig = field_enable_multisig;
|
||||||
@@ -1101,7 +1067,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -5284,6 +5307,48 @@ void wallet2::init_type(hw::device::device_type device_type)
|
@@ -5285,6 +5308,48 @@ void wallet2::init_type(hw::device::device_type device_type)
|
||||||
m_key_device_type = device_type;
|
m_key_device_type = device_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1150,7 +1116,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
/*!
|
/*!
|
||||||
* \brief Generates a wallet or restores one. Assumes the multisig setup
|
* \brief Generates a wallet or restores one. Assumes the multisig setup
|
||||||
* has already completed for the provided multisig info.
|
* has already completed for the provided multisig info.
|
||||||
@@ -5411,7 +5476,7 @@ crypto::secret_key wallet2::generate(const std::string& wallet_, const epee::wip
|
@@ -5412,7 +5477,7 @@ crypto::secret_key wallet2::generate(const std::string& wallet_, const epee::wip
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1159,7 +1125,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
{
|
{
|
||||||
// -1 month for fluctuations in block time and machine date/time setup.
|
// -1 month for fluctuations in block time and machine date/time setup.
|
||||||
// avg seconds per block
|
// avg seconds per block
|
||||||
@@ -5435,7 +5500,7 @@ crypto::secret_key wallet2::generate(const std::string& wallet_, const epee::wip
|
@@ -5436,7 +5501,7 @@ crypto::secret_key wallet2::generate(const std::string& wallet_, const epee::wip
|
||||||
// the daemon is currently syncing.
|
// the daemon is currently syncing.
|
||||||
// If we use the approximate height we subtract one month as
|
// If we use the approximate height we subtract one month as
|
||||||
// a safety margin.
|
// a safety margin.
|
||||||
@@ -1168,7 +1134,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
uint64_t target_height = get_daemon_blockchain_target_height(err);
|
uint64_t target_height = get_daemon_blockchain_target_height(err);
|
||||||
if (err.empty()) {
|
if (err.empty()) {
|
||||||
if (target_height < height)
|
if (target_height < height)
|
||||||
@@ -13135,7 +13200,7 @@ uint64_t wallet2::get_daemon_blockchain_target_height(string &err)
|
@@ -13133,7 +13198,7 @@ uint64_t wallet2::get_daemon_blockchain_target_height(string &err)
|
||||||
return target_height;
|
return target_height;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1177,16 +1143,16 @@ index f34b10988..e4e02c782 100644
|
|||||||
{
|
{
|
||||||
// time of v2 fork
|
// time of v2 fork
|
||||||
const time_t fork_time = m_nettype == TESTNET ? 1448285909 : m_nettype == STAGENET ? 1520937818 : 1458748658;
|
const time_t fork_time = m_nettype == TESTNET ? 1448285909 : m_nettype == STAGENET ? 1520937818 : 1458748658;
|
||||||
@@ -13144,7 +13209,7 @@ uint64_t wallet2::get_approximate_blockchain_height() const
|
@@ -13142,7 +13207,7 @@ uint64_t wallet2::get_approximate_blockchain_height() const
|
||||||
// avg seconds per block
|
// avg seconds per block
|
||||||
const int seconds_per_block = DIFFICULTY_TARGET_V2;
|
const int seconds_per_block = DIFFICULTY_TARGET_V2;
|
||||||
// Calculated blockchain height
|
// Calculated blockchain height
|
||||||
- uint64_t approx_blockchain_height = fork_block + (time(NULL) - fork_time)/seconds_per_block;
|
- uint64_t approx_blockchain_height = fork_block + (time(NULL) - fork_time)/seconds_per_block;
|
||||||
+ uint64_t approx_blockchain_height = fork_block + ((t > 0 ? t : time(NULL)) - fork_time)/seconds_per_block;
|
+ uint64_t approx_blockchain_height = fork_block + ((t > 0 ? t : time(NULL)) - fork_time)/seconds_per_block;
|
||||||
// testnet and stagenet got some huge rollbacks, so the estimation is way off
|
// testnet and stagenet got some huge rollbacks, so the estimation is way off
|
||||||
static const uint64_t approximate_rolled_back_blocks = m_nettype == TESTNET ? 342100 : 30000;
|
static const uint64_t approximate_rolled_back_blocks = m_nettype == TESTNET ? 342100 : m_nettype == STAGENET ? 60000 : 30000;
|
||||||
if ((m_nettype == TESTNET || m_nettype == STAGENET) && approx_blockchain_height > approximate_rolled_back_blocks)
|
if ((m_nettype == TESTNET || m_nettype == STAGENET) && approx_blockchain_height > approximate_rolled_back_blocks)
|
||||||
@@ -14862,15 +14927,6 @@ bool wallet2::parse_uri(const std::string &uri, std::string &address, std::strin
|
@@ -14860,15 +14925,6 @@ bool wallet2::parse_uri(const std::string &uri, std::string &address, std::strin
|
||||||
//----------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------
|
||||||
uint64_t wallet2::get_blockchain_height_by_date(uint16_t year, uint8_t month, uint8_t day)
|
uint64_t wallet2::get_blockchain_height_by_date(uint16_t year, uint8_t month, uint8_t day)
|
||||||
{
|
{
|
||||||
@@ -1202,7 +1168,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
std::tm date = { 0, 0, 0, 0, 0, 0, 0, 0 };
|
std::tm date = { 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||||
date.tm_year = year - 1900;
|
date.tm_year = year - 1900;
|
||||||
date.tm_mon = month - 1;
|
date.tm_mon = month - 1;
|
||||||
@@ -14879,7 +14935,23 @@ uint64_t wallet2::get_blockchain_height_by_date(uint16_t year, uint8_t month, ui
|
@@ -14877,7 +14933,23 @@ uint64_t wallet2::get_blockchain_height_by_date(uint16_t year, uint8_t month, ui
|
||||||
{
|
{
|
||||||
throw std::runtime_error("month or day out of range");
|
throw std::runtime_error("month or day out of range");
|
||||||
}
|
}
|
||||||
@@ -1227,7 +1193,7 @@ index f34b10988..e4e02c782 100644
|
|||||||
uint64_t height_min = 0;
|
uint64_t height_min = 0;
|
||||||
uint64_t height_max = get_daemon_blockchain_height(err) - 1;
|
uint64_t height_max = get_daemon_blockchain_height(err) - 1;
|
||||||
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
index 3144a8fd3..b540eff6b 100644
|
index c38d77675..91ec72e0f 100644
|
||||||
--- a/src/wallet/wallet2.h
|
--- a/src/wallet/wallet2.h
|
||||||
+++ b/src/wallet/wallet2.h
|
+++ b/src/wallet/wallet2.h
|
||||||
@@ -72,6 +72,7 @@
|
@@ -72,6 +72,7 @@
|
||||||
@@ -1303,5 +1269,5 @@ index 3144a8fd3..b540eff6b 100644
|
|||||||
uint32_t m_multisig_threshold;
|
uint32_t m_multisig_threshold;
|
||||||
std::vector<crypto::public_key> m_multisig_signers;
|
std::vector<crypto::public_key> m_multisig_signers;
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
From 5c1727c760557c0fd83ba1e4e66be2d10c58e890 Mon Sep 17 00:00:00 2001
|
From 5385d085c547b675adfccb64314d1c6f7bf2d508 Mon Sep 17 00:00:00 2001
|
||||||
From: tobtoht <tob@featherwallet.org>
|
From: tobtoht <tob@featherwallet.org>
|
||||||
Date: Tue, 12 Mar 2024 10:09:50 +0100
|
Date: Tue, 12 Mar 2024 10:09:50 +0100
|
||||||
Subject: [PATCH] airgap
|
Subject: [PATCH 03/16] airgap
|
||||||
|
|
||||||
---
|
---
|
||||||
src/wallet/api/wallet.cpp | 23 ++++++++++++++++++
|
src/wallet/api/wallet.cpp | 23 ++++++++++++++++++
|
||||||
@@ -12,7 +12,7 @@ Subject: [PATCH] airgap
|
|||||||
5 files changed, 68 insertions(+), 6 deletions(-)
|
5 files changed, 68 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 1a9c6f674..42887dced 100644
|
index 7d430b655..837b98e6b 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -1129,6 +1129,24 @@ uint64_t WalletImpl::unlockedBalance(uint32_t accountIndex) const
|
@@ -1129,6 +1129,24 @@ uint64_t WalletImpl::unlockedBalance(uint32_t accountIndex) const
|
||||||
@@ -94,7 +94,7 @@ index 4268b656e..4edaefefd 100644
|
|||||||
* \brief exportKeyImages - exports key images to file
|
* \brief exportKeyImages - exports key images to file
|
||||||
* \param filename
|
* \param filename
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index c7cbdbbe6..794992b2e 100644
|
index f2381740a..41cf1fd41 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -949,6 +949,16 @@ uint32_t get_subaddress_clamped_sum(uint32_t idx, uint32_t extra)
|
@@ -949,6 +949,16 @@ uint32_t get_subaddress_clamped_sum(uint32_t idx, uint32_t extra)
|
||||||
@@ -114,7 +114,7 @@ index c7cbdbbe6..794992b2e 100644
|
|||||||
static void setup_shim(hw::wallet_shim * shim, tools::wallet2 * wallet)
|
static void setup_shim(hw::wallet_shim * shim, tools::wallet2 * wallet)
|
||||||
{
|
{
|
||||||
shim->get_tx_pub_key_from_received_outs = std::bind(&tools::wallet2::get_tx_pub_key_from_received_outs, wallet, std::placeholders::_1);
|
shim->get_tx_pub_key_from_received_outs = std::bind(&tools::wallet2::get_tx_pub_key_from_received_outs, wallet, std::placeholders::_1);
|
||||||
@@ -7037,6 +7047,25 @@ uint64_t wallet2::unlocked_balance(uint32_t index_major, bool strict, uint64_t *
|
@@ -7038,6 +7048,25 @@ uint64_t wallet2::unlocked_balance(uint32_t index_major, bool strict, uint64_t *
|
||||||
return amount;
|
return amount;
|
||||||
}
|
}
|
||||||
//----------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------
|
||||||
@@ -140,7 +140,7 @@ index c7cbdbbe6..794992b2e 100644
|
|||||||
std::map<uint32_t, uint64_t> wallet2::balance_per_subaddress(uint32_t index_major, bool strict) const
|
std::map<uint32_t, uint64_t> wallet2::balance_per_subaddress(uint32_t index_major, bool strict) const
|
||||||
{
|
{
|
||||||
std::map<uint32_t, uint64_t> amount_per_subaddr;
|
std::map<uint32_t, uint64_t> amount_per_subaddr;
|
||||||
@@ -7887,9 +7916,7 @@ bool wallet2::sign_tx(unsigned_tx_set &exported_txs, std::vector<wallet2::pendin
|
@@ -7889,9 +7918,7 @@ bool wallet2::sign_tx(unsigned_tx_set &exported_txs, std::vector<wallet2::pendin
|
||||||
crypto::key_derivation derivation;
|
crypto::key_derivation derivation;
|
||||||
std::vector<crypto::key_derivation> additional_derivations;
|
std::vector<crypto::key_derivation> additional_derivations;
|
||||||
|
|
||||||
@@ -179,7 +179,7 @@ index c7cbdbbe6..794992b2e 100644
|
|||||||
if (unused_dust_indices_per_subaddr.empty())
|
if (unused_dust_indices_per_subaddr.empty())
|
||||||
unused_dust_indices_per_subaddr.push_back({});
|
unused_dust_indices_per_subaddr.push_back({});
|
||||||
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
index d37332dd1..fc69b3d36 100644
|
index 56cc118f4..b9aa7a00d 100644
|
||||||
--- a/src/wallet/wallet2.h
|
--- a/src/wallet/wallet2.h
|
||||||
+++ b/src/wallet/wallet2.h
|
+++ b/src/wallet/wallet2.h
|
||||||
@@ -1172,6 +1172,7 @@ private:
|
@@ -1172,6 +1172,7 @@ private:
|
||||||
@@ -191,5 +191,5 @@ index d37332dd1..fc69b3d36 100644
|
|||||||
std::map<uint32_t, uint64_t> balance_per_subaddress(uint32_t subaddr_index_major, bool strict) const;
|
std::map<uint32_t, uint64_t> balance_per_subaddress(uint32_t subaddr_index_major, bool strict) const;
|
||||||
std::map<uint32_t, std::pair<uint64_t, std::pair<uint64_t, uint64_t>>> unlocked_balance_per_subaddress(uint32_t subaddr_index_major, bool strict);
|
std::map<uint32_t, std::pair<uint64_t, std::pair<uint64_t, uint64_t>>> unlocked_balance_per_subaddress(uint32_t subaddr_index_major, bool strict);
|
||||||
--
|
--
|
||||||
2.43.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From 8e069a8b7c15794b843471487c12c2c753d3afe2 Mon Sep 17 00:00:00 2001
|
From d6d52b6156f1e83a69474a871043d414e4488f62 Mon Sep 17 00:00:00 2001
|
||||||
From: tobtoht <tob@featherwallet.org>
|
From: tobtoht <tob@featherwallet.org>
|
||||||
Date: Tue, 12 Mar 2024 11:07:57 +0100
|
Date: Tue, 12 Mar 2024 11:07:57 +0100
|
||||||
Subject: [PATCH 04/10] coin control
|
Subject: [PATCH 04/16] coin control
|
||||||
|
|
||||||
---
|
---
|
||||||
src/wallet/api/CMakeLists.txt | 8 +-
|
src/wallet/api/CMakeLists.txt | 8 +-
|
||||||
@@ -9,12 +9,12 @@ Subject: [PATCH 04/10] coin control
|
|||||||
src/wallet/api/coins.h | 40 ++++++++
|
src/wallet/api/coins.h | 40 ++++++++
|
||||||
src/wallet/api/coins_info.cpp | 122 ++++++++++++++++++++++
|
src/wallet/api/coins_info.cpp | 122 ++++++++++++++++++++++
|
||||||
src/wallet/api/coins_info.h | 71 +++++++++++++
|
src/wallet/api/coins_info.h | 71 +++++++++++++
|
||||||
src/wallet/api/wallet.cpp | 31 +++++-
|
src/wallet/api/wallet.cpp | 26 ++++-
|
||||||
src/wallet/api/wallet.h | 10 +-
|
src/wallet/api/wallet.h | 10 +-
|
||||||
src/wallet/api/wallet2_api.h | 52 +++++++++-
|
src/wallet/api/wallet2_api.h | 52 +++++++++-
|
||||||
src/wallet/wallet2.cpp | 46 ++++++++-
|
src/wallet/wallet2.cpp | 46 ++++++++-
|
||||||
src/wallet/wallet2.h | 11 +-
|
src/wallet/wallet2.h | 11 +-
|
||||||
10 files changed, 558 insertions(+), 18 deletions(-)
|
10 files changed, 555 insertions(+), 16 deletions(-)
|
||||||
create mode 100644 src/wallet/api/coins.cpp
|
create mode 100644 src/wallet/api/coins.cpp
|
||||||
create mode 100644 src/wallet/api/coins.h
|
create mode 100644 src/wallet/api/coins.h
|
||||||
create mode 100644 src/wallet/api/coins_info.cpp
|
create mode 100644 src/wallet/api/coins_info.cpp
|
||||||
@@ -489,7 +489,7 @@ index 000000000..c43e45abd
|
|||||||
+
|
+
|
||||||
+#endif //FEATHER_COINS_INFO_H
|
+#endif //FEATHER_COINS_INFO_H
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 42887dced..2fe0d1d29 100644
|
index 837b98e6b..2106dbd07 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -35,6 +35,7 @@
|
@@ -35,6 +35,7 @@
|
||||||
@@ -537,24 +537,7 @@ index 42887dced..2fe0d1d29 100644
|
|||||||
if (error) {
|
if (error) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1833,13 +1848,14 @@ PendingTransaction *WalletImpl::createTransactionMultDest(const std::vector<stri
|
@@ -1920,10 +1935,10 @@ PendingTransaction *WalletImpl::createTransactionMultDest(const std::vector<stri
|
||||||
fake_outs_count = m_wallet->adjust_mixin(mixin_count);
|
|
||||||
|
|
||||||
if (amount) {
|
|
||||||
+ // (std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const unique_index_container& subtract_fee_from_outputs, const std::vector<crypto::key_image>& preferred_input_list)
|
|
||||||
transaction->m_pending_tx = m_wallet->create_transactions_2(dsts, fake_outs_count, 0 /* unlock_time */,
|
|
||||||
adjusted_priority,
|
|
||||||
- extra, subaddr_account, subaddr_indices);
|
|
||||||
+ extra, subaddr_account, subaddr_indices, preferred_input_list);
|
|
||||||
} else {
|
|
||||||
transaction->m_pending_tx = m_wallet->create_transactions_all(0, info.address, info.is_subaddress, 1, fake_outs_count, 0 /* unlock_time */,
|
|
||||||
adjusted_priority,
|
|
||||||
- extra, subaddr_account, subaddr_indices);
|
|
||||||
+ extra, subaddr_account, subaddr_indices, preferred_input_list);
|
|
||||||
}
|
|
||||||
pendingTxPostProcess(transaction);
|
|
||||||
|
|
||||||
@@ -1920,10 +1936,10 @@ PendingTransaction *WalletImpl::createTransactionMultDest(const std::vector<stri
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PendingTransaction *WalletImpl::createTransaction(const string &dst_addr, const string &payment_id, optional<uint64_t> amount, uint32_t mixin_count,
|
PendingTransaction *WalletImpl::createTransaction(const string &dst_addr, const string &payment_id, optional<uint64_t> amount, uint32_t mixin_count,
|
||||||
@@ -567,7 +550,7 @@ index 42887dced..2fe0d1d29 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
PendingTransaction *WalletImpl::createSweepUnmixableTransaction()
|
PendingTransaction *WalletImpl::createSweepUnmixableTransaction()
|
||||||
@@ -2048,6 +2064,11 @@ AddressBook *WalletImpl::addressBook()
|
@@ -2048,6 +2063,11 @@ AddressBook *WalletImpl::addressBook()
|
||||||
return m_addressBook.get();
|
return m_addressBook.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -717,7 +700,7 @@ index 4edaefefd..8a5c4135e 100644
|
|||||||
virtual SubaddressAccount * subaddressAccount() = 0;
|
virtual SubaddressAccount * subaddressAccount() = 0;
|
||||||
virtual void setListener(WalletListener *) = 0;
|
virtual void setListener(WalletListener *) = 0;
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index 700816da6..5331f90fc 100644
|
index 41cf1fd41..61601f70c 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -2083,12 +2083,21 @@ bool wallet2::frozen(const multisig_tx_set& txs) const
|
@@ -2083,12 +2083,21 @@ bool wallet2::frozen(const multisig_tx_set& txs) const
|
||||||
@@ -820,8 +803,8 @@ index 700816da6..5331f90fc 100644
|
|||||||
// This system allows for sending (almost) the entire balance, since it does
|
// This system allows for sending (almost) the entire balance, since it does
|
||||||
// not generate spurious change in all txes, thus decreasing the instantaneous
|
// not generate spurious change in all txes, thus decreasing the instantaneous
|
||||||
// usable balance.
|
// usable balance.
|
||||||
-std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const unique_index_container& subtract_fee_from_outputs)
|
-std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const unique_index_container& subtract_fee_from_outputs)
|
||||||
+std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list, const unique_index_container& subtract_fee_from_outputs)
|
+std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list, const unique_index_container& subtract_fee_from_outputs)
|
||||||
{
|
{
|
||||||
//ensure device is let in NONE mode in any case
|
//ensure device is let in NONE mode in any case
|
||||||
hw::device &hwdev = m_account.get_device();
|
hw::device &hwdev = m_account.get_device();
|
||||||
@@ -835,7 +818,7 @@ index 700816da6..5331f90fc 100644
|
|||||||
if (m_ignore_fractional_outputs && td.amount() < fractional_threshold)
|
if (m_ignore_fractional_outputs && td.amount() < fractional_threshold)
|
||||||
{
|
{
|
||||||
MDEBUG("Ignoring output " << i << " of amount " << print_money(td.amount()) << " which is below fractional threshold " << print_money(fractional_threshold));
|
MDEBUG("Ignoring output " << i << " of amount " << print_money(td.amount()) << " which is below fractional threshold " << print_money(fractional_threshold));
|
||||||
@@ -11393,7 +11428,7 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryp
|
@@ -11400,7 +11435,7 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_2(std::vector<cryp
|
||||||
// will get us a known fee.
|
// will get us a known fee.
|
||||||
uint64_t estimated_fee = estimate_fee(use_per_byte_fee, use_rct, 2, fake_outs_count, 2, extra.size(), bulletproof, clsag, bulletproof_plus, use_view_tags, base_fee, fee_quantization_mask);
|
uint64_t estimated_fee = estimate_fee(use_per_byte_fee, use_rct, 2, fake_outs_count, 2, extra.size(), bulletproof, clsag, bulletproof_plus, use_view_tags, base_fee, fee_quantization_mask);
|
||||||
total_needed_money = needed_money + (subtract_fee_from_outputs.size() ? 0 : estimated_fee);
|
total_needed_money = needed_money + (subtract_fee_from_outputs.size() ? 0 : estimated_fee);
|
||||||
@@ -844,16 +827,16 @@ index 700816da6..5331f90fc 100644
|
|||||||
if (!preferred_inputs.empty())
|
if (!preferred_inputs.empty())
|
||||||
{
|
{
|
||||||
string s;
|
string s;
|
||||||
@@ -11874,7 +11909,7 @@ bool wallet2::sanity_check(const std::vector<wallet2::pending_tx> &ptx_vector, c
|
@@ -11879,7 +11914,7 @@ bool wallet2::sanity_check(const std::vector<wallet2::pending_tx> &ptx_vector, c
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
-std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices)
|
-std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices)
|
||||||
+std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list)
|
+std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list)
|
||||||
{
|
{
|
||||||
std::vector<size_t> unused_transfers_indices;
|
std::vector<size_t> unused_transfers_indices;
|
||||||
std::vector<size_t> unused_dust_indices;
|
std::vector<size_t> unused_dust_indices;
|
||||||
@@ -11903,6 +11938,9 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below
|
@@ -11908,6 +11943,9 @@ std::vector<wallet2::pending_tx> wallet2::create_transactions_all(uint64_t below
|
||||||
for (size_t i = 0; i < m_transfers.size(); ++i)
|
for (size_t i = 0; i < m_transfers.size(); ++i)
|
||||||
{
|
{
|
||||||
const transfer_details& td = m_transfers[i];
|
const transfer_details& td = m_transfers[i];
|
||||||
@@ -864,19 +847,19 @@ index 700816da6..5331f90fc 100644
|
|||||||
{
|
{
|
||||||
MDEBUG("Ignoring output " << i << " of amount " << print_money(td.amount()) << " which is below threshold " << print_money(fractional_threshold));
|
MDEBUG("Ignoring output " << i << " of amount " << print_money(td.amount()) << " which is below threshold " << print_money(fractional_threshold));
|
||||||
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
index fc69b3d36..52886fb85 100644
|
index b9aa7a00d..67ed81383 100644
|
||||||
--- a/src/wallet/wallet2.h
|
--- a/src/wallet/wallet2.h
|
||||||
+++ b/src/wallet/wallet2.h
|
+++ b/src/wallet/wallet2.h
|
||||||
@@ -1207,8 +1207,8 @@ private:
|
@@ -1207,8 +1207,8 @@ private:
|
||||||
bool parse_unsigned_tx_from_str(const std::string &unsigned_tx_st, unsigned_tx_set &exported_txs) const;
|
bool parse_unsigned_tx_from_str(const std::string &unsigned_tx_st, unsigned_tx_set &exported_txs) const;
|
||||||
bool load_tx(const std::string &signed_filename, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set&)> accept_func = NULL);
|
bool load_tx(const std::string &signed_filename, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set&)> accept_func = NULL);
|
||||||
bool parse_tx_from_str(const std::string &signed_tx_st, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set &)> accept_func);
|
bool parse_tx_from_str(const std::string &signed_tx_st, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set &)> accept_func);
|
||||||
- std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
- std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
||||||
- std::vector<wallet2::pending_tx> create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices);
|
- std::vector<wallet2::pending_tx> create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices);
|
||||||
+ std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list = {}, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
+ std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
||||||
+ std::vector<wallet2::pending_tx> create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list = {});
|
+ std::vector<wallet2::pending_tx> create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list = {});
|
||||||
std::vector<wallet2::pending_tx> create_transactions_single(const crypto::key_image &ki, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra);
|
std::vector<wallet2::pending_tx> create_transactions_single(const crypto::key_image &ki, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra);
|
||||||
std::vector<wallet2::pending_tx> create_transactions_from(const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, std::vector<size_t> unused_transfers_indices, std::vector<size_t> unused_dust_indices, const size_t fake_outs_count, const uint64_t unlock_time, uint32_t priority, const std::vector<uint8_t>& extra);
|
std::vector<wallet2::pending_tx> create_transactions_from(const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, std::vector<size_t> unused_transfers_indices, std::vector<size_t> unused_dust_indices, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra);
|
||||||
bool sanity_check(const std::vector<wallet2::pending_tx> &ptx_vector, const std::vector<cryptonote::tx_destination_entry>& dsts, const unique_index_container& subtract_fee_from_outputs = {}) const;
|
bool sanity_check(const std::vector<wallet2::pending_tx> &ptx_vector, const std::vector<cryptonote::tx_destination_entry>& dsts, const unique_index_container& subtract_fee_from_outputs = {}) const;
|
||||||
@@ -1560,6 +1560,7 @@ private:
|
@@ -1560,6 +1560,7 @@ private:
|
||||||
uint64_t get_num_rct_outputs();
|
uint64_t get_num_rct_outputs();
|
||||||
@@ -915,5 +898,5 @@ index fc69b3d36..52886fb85 100644
|
|||||||
void set_unspent(size_t idx);
|
void set_unspent(size_t idx);
|
||||||
bool is_spent(const transfer_details &td, bool strict = true) const;
|
bool is_spent(const transfer_details &td, bool strict = true) const;
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From a24797410dcda06617ff2a81de3129d38b69f2a2 Mon Sep 17 00:00:00 2001
|
From 0f1d5e1296dc1e8c9ee323fa7bdf706ff76df2a7 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Tue, 12 Mar 2024 17:59:13 +0100
|
Date: Tue, 12 Mar 2024 17:59:13 +0100
|
||||||
Subject: [PATCH 05/10] fix build issues
|
Subject: [PATCH 05/16] fix build issues
|
||||||
|
|
||||||
---
|
---
|
||||||
contrib/depends/hosts/linux.mk | 8 +++----
|
contrib/depends/hosts/linux.mk | 8 +++----
|
||||||
@@ -133,5 +133,5 @@ index 000000000..f05cb2b6a
|
|||||||
+ #else
|
+ #else
|
||||||
+ #ifdef POLYSEED_SHARED
|
+ #ifdef POLYSEED_SHARED
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
From bc3d91b07d77893983bbed0b165ce41e034579a7 Mon Sep 17 00:00:00 2001
|
From 3343e3fbbd05546b3858c98afe3bad4673f250c8 Mon Sep 17 00:00:00 2001
|
||||||
From: Your Name <you@example.com>
|
From: Your Name <you@example.com>
|
||||||
Date: Thu, 28 Mar 2024 02:03:08 +0100
|
Date: Thu, 28 Mar 2024 02:03:08 +0100
|
||||||
Subject: [PATCH 06/10] macos build fix
|
Subject: [PATCH 06/16] macos build fix
|
||||||
|
|
||||||
---
|
---
|
||||||
contrib/depends/hosts/darwin.mk | 2 +
|
contrib/depends/hosts/darwin.mk | 2 +
|
||||||
contrib/depends/packages/polyseed.mk | 13 +++--
|
contrib/depends/packages/polyseed.mk | 13 +++--
|
||||||
.../polyseed/0001-disable-soname.patch | 49 +++++++++++++++++++
|
.../polyseed/0001-disable-soname.patch | 48 +++++++++++++++++++
|
||||||
3 files changed, 60 insertions(+), 4 deletions(-)
|
3 files changed, 59 insertions(+), 4 deletions(-)
|
||||||
create mode 100644 contrib/depends/patches/polyseed/0001-disable-soname.patch
|
create mode 100644 contrib/depends/patches/polyseed/0001-disable-soname.patch
|
||||||
|
|
||||||
diff --git a/contrib/depends/hosts/darwin.mk b/contrib/depends/hosts/darwin.mk
|
diff --git a/contrib/depends/hosts/darwin.mk b/contrib/depends/hosts/darwin.mk
|
||||||
@@ -57,10 +57,10 @@ index 2ddeac621..0071b20f3 100644
|
|||||||
define $(package)_stage_cmds
|
define $(package)_stage_cmds
|
||||||
diff --git a/contrib/depends/patches/polyseed/0001-disable-soname.patch b/contrib/depends/patches/polyseed/0001-disable-soname.patch
|
diff --git a/contrib/depends/patches/polyseed/0001-disable-soname.patch b/contrib/depends/patches/polyseed/0001-disable-soname.patch
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 000000000..a261636e8
|
index 000000000..bd97dd394
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/contrib/depends/patches/polyseed/0001-disable-soname.patch
|
+++ b/contrib/depends/patches/polyseed/0001-disable-soname.patch
|
||||||
@@ -0,0 +1,49 @@
|
@@ -0,0 +1,48 @@
|
||||||
+From aabafcfc0572651436d024a635483c49042fad7f Mon Sep 17 00:00:00 2001
|
+From aabafcfc0572651436d024a635483c49042fad7f Mon Sep 17 00:00:00 2001
|
||||||
+From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
+From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
+Date: Thu, 28 Mar 2024 00:32:51 +0100
|
+Date: Thu, 28 Mar 2024 00:32:51 +0100
|
||||||
@@ -81,7 +81,7 @@ index 000000000..a261636e8
|
|||||||
++ NO_SONAME 1
|
++ NO_SONAME 1
|
||||||
+ C_STANDARD 11
|
+ C_STANDARD 11
|
||||||
+ C_STANDARD_REQUIRED ON)
|
+ C_STANDARD_REQUIRED ON)
|
||||||
+
|
+
|
||||||
+@@ -45,16 +46,17 @@ include_directories(polyseed_static
|
+@@ -45,16 +46,17 @@ include_directories(polyseed_static
|
||||||
+ include/)
|
+ include/)
|
||||||
+ target_compile_definitions(polyseed_static PRIVATE POLYSEED_STATIC)
|
+ target_compile_definitions(polyseed_static PRIVATE POLYSEED_STATIC)
|
||||||
@@ -89,7 +89,7 @@ index 000000000..a261636e8
|
|||||||
++ NO_SONAME 1
|
++ NO_SONAME 1
|
||||||
+ C_STANDARD 11
|
+ C_STANDARD 11
|
||||||
+ C_STANDARD_REQUIRED ON)
|
+ C_STANDARD_REQUIRED ON)
|
||||||
+
|
+
|
||||||
+-add_executable(polyseed-tests
|
+-add_executable(polyseed-tests
|
||||||
+- tests/tests.c)
|
+- tests/tests.c)
|
||||||
+-include_directories(polyseed-tests
|
+-include_directories(polyseed-tests
|
||||||
@@ -104,12 +104,11 @@ index 000000000..a261636e8
|
|||||||
++# target_compile_definitions(polyseed-tests PRIVATE POLYSEED_STATIC)
|
++# target_compile_definitions(polyseed-tests PRIVATE POLYSEED_STATIC)
|
||||||
++# target_link_libraries(polyseed-tests
|
++# target_link_libraries(polyseed-tests
|
||||||
++# PRIVATE polyseed_static)
|
++# PRIVATE polyseed_static)
|
||||||
+
|
+
|
||||||
+ include(GNUInstallDirs)
|
+ include(GNUInstallDirs)
|
||||||
+ install(TARGETS polyseed polyseed_static
|
+ install(TARGETS polyseed polyseed_static
|
||||||
+--
|
+--
|
||||||
+2.39.2
|
+2.39.2
|
||||||
+
|
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,46 +1,39 @@
|
|||||||
From 14b4c210a11e0c333087026775cf22fcccf46a40 Mon Sep 17 00:00:00 2001
|
From 8945e9865ef831f85ef58ba3d269f4b17d0270b5 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Tue, 2 Apr 2024 01:13:12 +0200
|
Date: Tue, 2 Apr 2024 01:13:12 +0200
|
||||||
Subject: [PATCH 07/10] fix `make debug-test` target
|
Subject: [PATCH 07/16] fix `make debug-test` target
|
||||||
|
|
||||||
---
|
---
|
||||||
src/simplewallet/simplewallet.cpp | 4 ++--
|
src/simplewallet/simplewallet.cpp | 2 +-
|
||||||
src/wallet/wallet_rpc_server.cpp | 2 +-
|
src/wallet/wallet2.h | 2 +-
|
||||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp
|
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp
|
||||||
index 341b0e448..c2e16da4c 100644
|
index f8ed6659c..0aa76b668 100644
|
||||||
--- a/src/simplewallet/simplewallet.cpp
|
--- a/src/simplewallet/simplewallet.cpp
|
||||||
+++ b/src/simplewallet/simplewallet.cpp
|
+++ b/src/simplewallet/simplewallet.cpp
|
||||||
@@ -6976,13 +6976,13 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri
|
@@ -6929,7 +6929,7 @@ bool simple_wallet::transfer_main(const std::vector<std::string> &args_, bool ca
|
||||||
return false;
|
{
|
||||||
}
|
// figure out what tx will be necessary
|
||||||
unlock_block = bc_height + locked_blocks;
|
auto ptx_vector = m_wallet->create_transactions_2(dsts, fake_outs_count, priority, extra,
|
||||||
- ptx_vector = m_wallet->create_transactions_2(dsts, fake_outs_count, unlock_block /* unlock_time */, priority, extra, m_current_subaddress_account, subaddr_indices, subtract_fee_from_outputs);
|
- m_current_subaddress_account, subaddr_indices, subtract_fee_from_outputs);
|
||||||
+ ptx_vector = m_wallet->create_transactions_2(dsts, fake_outs_count, unlock_block /* unlock_time */, priority, extra, m_current_subaddress_account, subaddr_indices, {}, subtract_fee_from_outputs);
|
+ m_current_subaddress_account, subaddr_indices, {}, subtract_fee_from_outputs);
|
||||||
break;
|
|
||||||
default:
|
|
||||||
LOG_ERROR("Unknown transfer method, using default");
|
|
||||||
/* FALLTHRU */
|
|
||||||
case Transfer:
|
|
||||||
- ptx_vector = m_wallet->create_transactions_2(dsts, fake_outs_count, 0 /* unlock_time */, priority, extra, m_current_subaddress_account, subaddr_indices, subtract_fee_from_outputs);
|
|
||||||
+ ptx_vector = m_wallet->create_transactions_2(dsts, fake_outs_count, 0 /* unlock_time */, priority, extra, m_current_subaddress_account, subaddr_indices, {}, subtract_fee_from_outputs);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/src/wallet/wallet_rpc_server.cpp b/src/wallet/wallet_rpc_server.cpp
|
if (ptx_vector.empty())
|
||||||
index 822fc828b..caa23e636 100644
|
|
||||||
--- a/src/wallet/wallet_rpc_server.cpp
|
|
||||||
+++ b/src/wallet/wallet_rpc_server.cpp
|
|
||||||
@@ -1157,7 +1157,7 @@ namespace tools
|
|
||||||
{
|
{
|
||||||
uint64_t mixin = m_wallet->adjust_mixin(req.ring_size ? req.ring_size - 1 : 0);
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
uint32_t priority = m_wallet->adjust_priority(req.priority);
|
index 67ed81383..fdc1a6212 100644
|
||||||
- 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, req.subtract_fee_from_outputs);
|
--- a/src/wallet/wallet2.h
|
||||||
+ 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, {}, req.subtract_fee_from_outputs);
|
+++ b/src/wallet/wallet2.h
|
||||||
|
@@ -1207,7 +1207,7 @@ private:
|
||||||
if (ptx_vector.empty())
|
bool parse_unsigned_tx_from_str(const std::string &unsigned_tx_st, unsigned_tx_set &exported_txs) const;
|
||||||
{
|
bool load_tx(const std::string &signed_filename, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set&)> accept_func = NULL);
|
||||||
|
bool parse_tx_from_str(const std::string &signed_tx_st, std::vector<tools::wallet2::pending_tx> &ptx, std::function<bool(const signed_tx_set &)> accept_func);
|
||||||
|
- std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
||||||
|
+ std::vector<wallet2::pending_tx> create_transactions_2(std::vector<cryptonote::tx_destination_entry> dsts, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list = {}, const unique_index_container& subtract_fee_from_outputs = {}); // pass subaddr_indices by value on purpose
|
||||||
|
std::vector<wallet2::pending_tx> create_transactions_all(uint64_t below, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra, uint32_t subaddr_account, std::set<uint32_t> subaddr_indices, const std::vector<crypto::key_image>& preferred_input_list = {});
|
||||||
|
std::vector<wallet2::pending_tx> create_transactions_single(const crypto::key_image &ki, const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra);
|
||||||
|
std::vector<wallet2::pending_tx> create_transactions_from(const cryptonote::account_public_address &address, bool is_subaddress, const size_t outputs, std::vector<size_t> unused_transfers_indices, std::vector<size_t> unused_dust_indices, const size_t fake_outs_count, uint32_t priority, const std::vector<uint8_t>& extra);
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From d3a704bfb62bede87d5da0261585f62f19f858c1 Mon Sep 17 00:00:00 2001
|
From c7f8510fb4bfb54707053603f5cbcaa8c0bf72d2 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Tue, 2 Apr 2024 16:51:56 +0200
|
Date: Tue, 2 Apr 2024 16:51:56 +0200
|
||||||
Subject: [PATCH 08/10] fix missing ___clear_cache when targetting iOS
|
Subject: [PATCH 08/16] fix missing ___clear_cache when targetting iOS
|
||||||
|
|
||||||
---
|
---
|
||||||
.gitmodules | 2 +-
|
.gitmodules | 2 +-
|
||||||
@@ -29,5 +29,5 @@ index 102f8acf9..ce72c9bb9 160000
|
|||||||
-Subproject commit 102f8acf90a7649ada410de5499a7ec62e49e1da
|
-Subproject commit 102f8acf90a7649ada410de5499a7ec62e49e1da
|
||||||
+Subproject commit ce72c9bb9cb799e0d9171094b9abb009e04c5bfc
|
+Subproject commit ce72c9bb9cb799e0d9171094b9abb009e04c5bfc
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From 8db1b159445a8aaca702a8bacb9476abe3aebcf1 Mon Sep 17 00:00:00 2001
|
From ff4d7f9500e6aca57a78d94599a70b7823ea6ecd Mon Sep 17 00:00:00 2001
|
||||||
From: Konstantin Ullrich <konstantinullrich12@gmail.com>
|
From: Konstantin Ullrich <konstantinullrich12@gmail.com>
|
||||||
Date: Wed, 11 Oct 2023 16:47:59 +0200
|
Date: Wed, 11 Oct 2023 16:47:59 +0200
|
||||||
Subject: [PATCH 09/10] Add recoverDeterministicWalletFromSpendKey
|
Subject: [PATCH 09/16] Add recoverDeterministicWalletFromSpendKey
|
||||||
|
|
||||||
This function is used by Cake Wallet to enable polyseed (dart implementation)
|
This function is used by Cake Wallet to enable polyseed (dart implementation)
|
||||||
support.
|
support.
|
||||||
@@ -19,7 +19,7 @@ Co-authored-by: Godwin Asuquo <godilite@gmail.com>
|
|||||||
5 files changed, 75 insertions(+)
|
5 files changed, 75 insertions(+)
|
||||||
|
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 2fe0d1d29..2411d948c 100644
|
index 2106dbd07..ec4ae51ff 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -820,6 +820,35 @@ bool WalletImpl::recover(const std::string &path, const std::string &password, c
|
@@ -820,6 +820,35 @@ bool WalletImpl::recover(const std::string &path, const std::string &password, c
|
||||||
@@ -149,5 +149,5 @@ index 28fcd36c9..be3ff8184 100644
|
|||||||
const std::string &password,
|
const std::string &password,
|
||||||
NetworkType nettype,
|
NetworkType nettype,
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From db90a0218d581276fcede6f188cc951499095a2f Mon Sep 17 00:00:00 2001
|
From 3cc8b1f822f642b574fe38ff27627b362002eab7 Mon Sep 17 00:00:00 2001
|
||||||
From: M <m@cakewallet.com>
|
From: M <m@cakewallet.com>
|
||||||
Date: Fri, 21 Apr 2023 15:43:47 -0400
|
Date: Fri, 21 Apr 2023 15:43:47 -0400
|
||||||
Subject: [PATCH 10/10] Add hex encoding and tx key getter for
|
Subject: [PATCH 10/16] Add hex encoding and tx key getter for
|
||||||
PendingTransction in wallet api.
|
PendingTransction in wallet api.
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -64,5 +64,5 @@ index a585c8212..1c3a11c39 100644
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
--
|
--
|
||||||
2.44.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From 0fe816689af4bce256eae2efa6a8eee0cb8b8097 Mon Sep 17 00:00:00 2001
|
From 238c847c153c74953b094d83bfe181a596771d37 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Sat, 11 May 2024 16:25:10 +0200
|
Date: Sat, 11 May 2024 16:25:10 +0200
|
||||||
Subject: [PATCH] store crash fix
|
Subject: [PATCH 11/16] store crash fix
|
||||||
|
|
||||||
Monero wallet crashes (sometimes) when it is syncing,
|
Monero wallet crashes (sometimes) when it is syncing,
|
||||||
while the proper solution (that can be seen in feather)
|
while the proper solution (that can be seen in feather)
|
||||||
@@ -43,7 +43,7 @@ the current state.
|
|||||||
4 files changed, 26 insertions(+), 15 deletions(-)
|
4 files changed, 26 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 2411d948c..90e107137 100644
|
index ec4ae51ff..306c9b8ae 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -56,8 +56,8 @@ using namespace cryptonote;
|
@@ -56,8 +56,8 @@ using namespace cryptonote;
|
||||||
@@ -74,7 +74,7 @@ index 2411d948c..90e107137 100644
|
|||||||
try {
|
try {
|
||||||
if (path.empty()) {
|
if (path.empty()) {
|
||||||
m_wallet->store();
|
m_wallet->store();
|
||||||
@@ -2592,10 +2593,10 @@ void WalletImpl::refreshThreadFunc()
|
@@ -2591,10 +2592,10 @@ void WalletImpl::refreshThreadFunc()
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_PRINT_L3(__FUNCTION__ << ": refresh lock acquired...");
|
LOG_PRINT_L3(__FUNCTION__ << ": refresh lock acquired...");
|
||||||
@@ -87,7 +87,7 @@ index 2411d948c..90e107137 100644
|
|||||||
LOG_PRINT_L3(__FUNCTION__ << ": refreshing...");
|
LOG_PRINT_L3(__FUNCTION__ << ": refreshing...");
|
||||||
doRefresh();
|
doRefresh();
|
||||||
}
|
}
|
||||||
@@ -2625,12 +2626,12 @@ void WalletImpl::doRefresh()
|
@@ -2624,12 +2625,12 @@ void WalletImpl::doRefresh()
|
||||||
}
|
}
|
||||||
m_wallet->find_and_save_rings(false);
|
m_wallet->find_and_save_rings(false);
|
||||||
} else {
|
} else {
|
||||||
@@ -102,7 +102,7 @@ index 2411d948c..90e107137 100644
|
|||||||
|
|
||||||
if (m_wallet2Callback->getListener()) {
|
if (m_wallet2Callback->getListener()) {
|
||||||
m_wallet2Callback->getListener()->refreshed();
|
m_wallet2Callback->getListener()->refreshed();
|
||||||
@@ -2640,9 +2641,9 @@ void WalletImpl::doRefresh()
|
@@ -2639,9 +2640,9 @@ void WalletImpl::doRefresh()
|
||||||
|
|
||||||
void WalletImpl::startRefresh()
|
void WalletImpl::startRefresh()
|
||||||
{
|
{
|
||||||
@@ -114,7 +114,7 @@ index 2411d948c..90e107137 100644
|
|||||||
m_refreshCV.notify_one();
|
m_refreshCV.notify_one();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2652,7 +2653,7 @@ void WalletImpl::startRefresh()
|
@@ -2651,7 +2652,7 @@ void WalletImpl::startRefresh()
|
||||||
void WalletImpl::stopRefresh()
|
void WalletImpl::stopRefresh()
|
||||||
{
|
{
|
||||||
if (!m_refreshThreadDone) {
|
if (!m_refreshThreadDone) {
|
||||||
@@ -123,7 +123,7 @@ index 2411d948c..90e107137 100644
|
|||||||
m_refreshThreadDone = true;
|
m_refreshThreadDone = true;
|
||||||
m_refreshCV.notify_one();
|
m_refreshCV.notify_one();
|
||||||
m_refreshThread.join();
|
m_refreshThread.join();
|
||||||
@@ -2663,9 +2664,7 @@ void WalletImpl::pauseRefresh()
|
@@ -2662,9 +2663,7 @@ void WalletImpl::pauseRefresh()
|
||||||
{
|
{
|
||||||
LOG_PRINT_L2(__FUNCTION__ << ": refresh paused...");
|
LOG_PRINT_L2(__FUNCTION__ << ": refresh paused...");
|
||||||
// TODO synchronize access
|
// TODO synchronize access
|
||||||
@@ -147,7 +147,7 @@ index d0f443abc..2ad2b62a4 100644
|
|||||||
std::atomic<int> m_refreshIntervalMillis;
|
std::atomic<int> m_refreshIntervalMillis;
|
||||||
std::atomic<bool> m_refreshShouldRescan;
|
std::atomic<bool> m_refreshShouldRescan;
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index 5331f90fc..e5773a26b 100644
|
index 61601f70c..4de226a4a 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -1203,6 +1203,7 @@ wallet2::wallet2(network_type nettype, uint64_t kdf_rounds, bool unattended, std
|
@@ -1203,6 +1203,7 @@ wallet2::wallet2(network_type nettype, uint64_t kdf_rounds, bool unattended, std
|
||||||
@@ -173,7 +173,7 @@ index 5331f90fc..e5773a26b 100644
|
|||||||
bool wallet2::set_proxy(const std::string &address)
|
bool wallet2::set_proxy(const std::string &address)
|
||||||
{
|
{
|
||||||
return m_http_client->set_proxy(address);
|
return m_http_client->set_proxy(address);
|
||||||
@@ -4145,8 +4154,9 @@ void wallet2::refresh(bool trusted_daemon, uint64_t start_height, uint64_t & blo
|
@@ -4146,8 +4155,9 @@ void wallet2::refresh(bool trusted_daemon, uint64_t start_height, uint64_t & blo
|
||||||
// infer when we get an incoming output
|
// infer when we get an incoming output
|
||||||
|
|
||||||
bool first = true, last = false;
|
bool first = true, last = false;
|
||||||
@@ -185,7 +185,7 @@ index 5331f90fc..e5773a26b 100644
|
|||||||
std::vector<cryptonote::block_complete_entry> next_blocks;
|
std::vector<cryptonote::block_complete_entry> next_blocks;
|
||||||
std::vector<parsed_block> next_parsed_blocks;
|
std::vector<parsed_block> next_parsed_blocks;
|
||||||
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
index 52886fb85..0d9a9298f 100644
|
index fdc1a6212..3ce710433 100644
|
||||||
--- a/src/wallet/wallet2.h
|
--- a/src/wallet/wallet2.h
|
||||||
+++ b/src/wallet/wallet2.h
|
+++ b/src/wallet/wallet2.h
|
||||||
@@ -1086,6 +1086,8 @@ private:
|
@@ -1086,6 +1086,8 @@ private:
|
||||||
@@ -206,5 +206,5 @@ index 52886fb85..0d9a9298f 100644
|
|||||||
i_wallet2_callback* m_callback;
|
i_wallet2_callback* m_callback;
|
||||||
hw::device::device_type m_key_device_type;
|
hw::device::device_type m_key_device_type;
|
||||||
--
|
--
|
||||||
2.45.0
|
2.39.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From f91e92ddaa7c12dcc8f38ac37ff852446bd10722 Mon Sep 17 00:00:00 2001
|
From 1b938a3f98468de3fa06b21a458104cf32831586 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Thu, 16 May 2024 17:28:59 +0200
|
Date: Thu, 16 May 2024 17:28:59 +0200
|
||||||
Subject: [PATCH] WIP: UR functions
|
Subject: [PATCH 12/16] WIP: UR functions
|
||||||
|
|
||||||
This commit adds UR functions for UR tasks,
|
This commit adds UR functions for UR tasks,
|
||||||
I believe that the right place to get
|
I believe that the right place to get
|
||||||
@@ -283,7 +283,7 @@ index 30065a7fa..a94b23f75 100644
|
|||||||
uint64_t minMixinCount() const override;
|
uint64_t minMixinCount() const override;
|
||||||
|
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 90e107137..ac3e6d51e 100644
|
index 306c9b8ae..5ca190c7d 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -48,6 +48,7 @@
|
@@ -48,6 +48,7 @@
|
||||||
@@ -726,10 +726,10 @@ index 1c3a11c39..2bbb32c8b 100644
|
|||||||
/*!
|
/*!
|
||||||
* \brief scanTransactions - scan a list of transaction ids, this operation may reveal the txids to the remote node and affect your privacy
|
* \brief scanTransactions - scan a list of transaction ids, this operation may reveal the txids to the remote node and affect your privacy
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index e5773a26b..23b56810e 100644
|
index 4de226a4a..7d97e683b 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -14051,33 +14051,40 @@ crypto::public_key wallet2::get_tx_pub_key_from_received_outs(const tools::walle
|
@@ -14056,33 +14056,40 @@ crypto::public_key wallet2::get_tx_pub_key_from_received_outs(const tools::walle
|
||||||
|
|
||||||
bool wallet2::export_key_images(const std::string &filename, bool all) const
|
bool wallet2::export_key_images(const std::string &filename, bool all) const
|
||||||
{
|
{
|
||||||
@@ -793,7 +793,7 @@ index e5773a26b..23b56810e 100644
|
|||||||
//----------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------
|
||||||
std::pair<uint64_t, std::vector<std::pair<crypto::key_image, crypto::signature>>> wallet2::export_key_images(bool all) const
|
std::pair<uint64_t, std::vector<std::pair<crypto::key_image, crypto::signature>>> wallet2::export_key_images(bool all) const
|
||||||
{
|
{
|
||||||
@@ -14132,53 +14139,60 @@ std::pair<uint64_t, std::vector<std::pair<crypto::key_image, crypto::signature>>
|
@@ -14137,53 +14144,60 @@ std::pair<uint64_t, std::vector<std::pair<crypto::key_image, crypto::signature>>
|
||||||
return std::make_pair(offset, ski);
|
return std::make_pair(offset, ski);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -873,7 +873,7 @@ index e5773a26b..23b56810e 100644
|
|||||||
ski.push_back(std::make_pair(key_image, signature));
|
ski.push_back(std::make_pair(key_image, signature));
|
||||||
}
|
}
|
||||||
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h
|
||||||
index 0d9a9298f..539d5056c 100644
|
index 3ce710433..9ff169a40 100644
|
||||||
--- a/src/wallet/wallet2.h
|
--- a/src/wallet/wallet2.h
|
||||||
+++ b/src/wallet/wallet2.h
|
+++ b/src/wallet/wallet2.h
|
||||||
@@ -1650,9 +1650,11 @@ private:
|
@@ -1650,9 +1650,11 @@ private:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
From 5815bf9d5dd2420915fafb73a3314eb467a489a7 Mon Sep 17 00:00:00 2001
|
From 1b978a697e1bdb3144bc08f998d125ac593fa971 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Thu, 23 May 2024 08:02:49 +0200
|
Date: Thu, 23 May 2024 08:02:49 +0200
|
||||||
Subject: [PATCH] android ndk version bump
|
Subject: [PATCH 13/16] android ndk version bump
|
||||||
|
|
||||||
---
|
---
|
||||||
contrib/depends/hosts/android.mk | 16 +++++++++++++---
|
contrib/depends/hosts/android.mk | 16 +++++++++++++---
|
||||||
|
|||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
From 9b7623e565a31db296f20cac00ddde58e8e83fe2 Mon Sep 17 00:00:00 2001
|
From 2dfa0442a096f61fe16a5bc569a4d0ab9ddb7de5 Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Wed, 12 Jun 2024 15:48:01 +0200
|
Date: Wed, 12 Jun 2024 15:48:01 +0200
|
||||||
Subject: [PATCH] rename arm -> armv7a
|
Subject: [PATCH 14/16] rename arm -> armv7a
|
||||||
|
|
||||||
---
|
---
|
||||||
contrib/depends/hosts/android.mk | 2 +-
|
contrib/depends/hosts/android.mk | 2 +-
|
||||||
+4
-4
@@ -1,7 +1,7 @@
|
|||||||
From 50e09195fcb79debf5951c69717b9d4f239ed8e1 Mon Sep 17 00:00:00 2001
|
From 6e7a9770e4f18f931f5caca7dec2a197e779afbc Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Mon, 24 Jun 2024 10:49:12 +0200
|
Date: Mon, 24 Jun 2024 10:49:12 +0200
|
||||||
Subject: [PATCH] use proper error handling in get_seed
|
Subject: [PATCH 15/16] use proper error handling in get_seed
|
||||||
|
|
||||||
---
|
---
|
||||||
src/wallet/api/wallet.cpp | 17 ++++++++++++-----
|
src/wallet/api/wallet.cpp | 17 ++++++++++++-----
|
||||||
@@ -9,7 +9,7 @@ Subject: [PATCH] use proper error handling in get_seed
|
|||||||
2 files changed, 15 insertions(+), 5 deletions(-)
|
2 files changed, 15 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index ac3e6d51e..8bdd75a5a 100644
|
index 5ca190c7d..a307d35a7 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -880,12 +880,19 @@ bool WalletImpl::close(bool store)
|
@@ -880,12 +880,19 @@ bool WalletImpl::close(bool store)
|
||||||
@@ -38,7 +38,7 @@ index ac3e6d51e..8bdd75a5a 100644
|
|||||||
|
|
||||||
bool WalletImpl::getPolyseed(std::string &seed_words, std::string &passphrase) const
|
bool WalletImpl::getPolyseed(std::string &seed_words, std::string &passphrase) const
|
||||||
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
|
||||||
index 23b56810e..f7bdf2429 100644
|
index 7d97e683b..8e44806fc 100644
|
||||||
--- a/src/wallet/wallet2.cpp
|
--- a/src/wallet/wallet2.cpp
|
||||||
+++ b/src/wallet/wallet2.cpp
|
+++ b/src/wallet/wallet2.cpp
|
||||||
@@ -1452,11 +1452,13 @@ bool wallet2::get_seed(epee::wipeable_string& electrum_words, const epee::wipeab
|
@@ -1452,11 +1452,13 @@ bool wallet2::get_seed(epee::wipeable_string& electrum_words, const epee::wipeab
|
||||||
+4
-4
@@ -1,7 +1,7 @@
|
|||||||
From 07f41c8afda9eafca519d44f5c6c34316f5ebb71 Mon Sep 17 00:00:00 2001
|
From 6b40191d35df998280e1d6e19ff9bf4bce54d5bf Mon Sep 17 00:00:00 2001
|
||||||
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
From: Czarek Nakamoto <cyjan@mrcyjanek.net>
|
||||||
Date: Wed, 26 Jun 2024 15:04:38 +0200
|
Date: Wed, 26 Jun 2024 15:04:38 +0200
|
||||||
Subject: [PATCH] add dummy device for ledger
|
Subject: [PATCH 16/16] add dummy device for ledger
|
||||||
|
|
||||||
---
|
---
|
||||||
CMakeLists.txt | 6 +-
|
CMakeLists.txt | 6 +-
|
||||||
@@ -414,7 +414,7 @@ index 03058c4f1..506f27c4a 100644
|
|||||||
unsigned char buffer_send[BUFFER_SEND_SIZE];
|
unsigned char buffer_send[BUFFER_SEND_SIZE];
|
||||||
unsigned int length_recv;
|
unsigned int length_recv;
|
||||||
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
diff --git a/src/wallet/api/wallet.cpp b/src/wallet/api/wallet.cpp
|
||||||
index 8bdd75a5a..d8661b213 100644
|
index a307d35a7..3ead385ec 100644
|
||||||
--- a/src/wallet/api/wallet.cpp
|
--- a/src/wallet/api/wallet.cpp
|
||||||
+++ b/src/wallet/api/wallet.cpp
|
+++ b/src/wallet/api/wallet.cpp
|
||||||
@@ -49,6 +49,9 @@
|
@@ -49,6 +49,9 @@
|
||||||
@@ -427,7 +427,7 @@ index 8bdd75a5a..d8661b213 100644
|
|||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
using namespace cryptonote;
|
using namespace cryptonote;
|
||||||
@@ -3299,4 +3302,94 @@ uint64_t WalletImpl::getBytesSent()
|
@@ -3298,4 +3301,94 @@ uint64_t WalletImpl::getBytesSent()
|
||||||
return m_wallet->get_bytes_sent();
|
return m_wallet->get_bytes_sent();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
From 8f0b07a685b5971f4deb66bb8c53e6da4065370c Mon Sep 17 00:00:00 2001
|
||||||
|
From: cyan <cyjan@mrcyjanek.net>
|
||||||
|
Date: Thu, 25 Jul 2024 20:06:29 +0000
|
||||||
|
Subject: [PATCH] added deps
|
||||||
|
|
||||||
|
---
|
||||||
|
external/polyseed | 1 +
|
||||||
|
external/utf8proc | 1 +
|
||||||
|
2 files changed, 2 insertions(+)
|
||||||
|
create mode 160000 external/polyseed
|
||||||
|
create mode 160000 external/utf8proc
|
||||||
|
|
||||||
|
diff --git a/external/polyseed b/external/polyseed
|
||||||
|
new file mode 160000
|
||||||
|
index 000000000..dfb05d8ed
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/external/polyseed
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+Subproject commit dfb05d8edb682b0e8f743b1b70c9131712ff4157
|
||||||
|
diff --git a/external/utf8proc b/external/utf8proc
|
||||||
|
new file mode 160000
|
||||||
|
index 000000000..5568eff49
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/external/utf8proc
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+Subproject commit 5568eff49a6bf417b6fdef2808df9db8d3d68a76
|
||||||
|
--
|
||||||
|
2.39.2
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#ifndef MONEROC_CHECKSUMS
|
#ifndef MONEROC_CHECKSUMS
|
||||||
#define MONEROC_CHECKSUMS
|
#define MONEROC_CHECKSUMS
|
||||||
const char * WOWNERO_wallet2_api_c_h_sha256 = "8a8d386dd5d996c89a0586c55b295ef95ca584bf1ffa26255152b291910a0a77";
|
const char * WOWNERO_wallet2_api_c_h_sha256 = "8a8d386dd5d996c89a0586c55b295ef95ca584bf1ffa26255152b291910a0a77";
|
||||||
const char * WOWNERO_wallet2_api_c_cpp_sha256 = "ed400bd9c4709383ffd42a9fbe68be37a2a47a42f92eacaf3a2dbd248c422739";
|
const char * WOWNERO_wallet2_api_c_cpp_sha256 = "ed400bd9c4709383ffd42a9fbe68be37a2a47a42f92eacaf3a2dbd248c422739-e25963cbc11ca0a0fe5eb34b9bd7c72e4f51b795";
|
||||||
const char * WOWNERO_wallet2_api_c_exp_sha256 = "3673e40e1a7115552276d1d541f6e4d5a0fef47c40fff7b988f49923af84c8a4";
|
const char * WOWNERO_wallet2_api_c_exp_sha256 = "3673e40e1a7115552276d1d541f6e4d5a0fef47c40fff7b988f49923af84c8a4";
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user