diff options
Diffstat (limited to 'wownero_libwallet2_api_c/src')
| -rw-r--r-- | wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp | 28 | ||||
| -rw-r--r-- | wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.h | 7 |
2 files changed, 35 insertions, 0 deletions
diff --git a/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp b/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp index b2c154b..d7357f3 100644 --- a/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp +++ b/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.cpp @@ -81,6 +81,18 @@ const char* WOWNERO_PendingTransaction_signersKeys(void* pendingTx_ptr, const ch return vectorToString(txid, std::string(separator)); } +const char* WOWNERO_PendingTransaction_hex(void* pendingTx_ptr, const char* separator) { + Monero::PendingTransaction *pendingTx = reinterpret_cast<Monero::PendingTransaction*>(pendingTx_ptr); + std::vector<std::string> txid = pendingTx->hex(); + return vectorToString(txid, std::string(separator)); +} + +const char* WOWNERO_PendingTransaction_txKey(void* pendingTx_ptr, const char* separator) { + Monero::PendingTransaction *pendingTx = reinterpret_cast<Monero::PendingTransaction*>(pendingTx_ptr); + std::vector<std::string> txid = pendingTx->txKey(); + return vectorToString(txid, std::string(separator)); +} + // UnsignedTransaction int WOWNERO_UnsignedTransaction_status(void* unsignedTx_ptr) { @@ -1478,6 +1490,22 @@ void* WOWNERO_WalletManager_createWalletFromKeys(void* wm_ptr, const char* path, return reinterpret_cast<void*>(wallet); } +void* WOWNERO_WalletManager_createDeterministicWalletFromSpendKey(void* wm_ptr, const char* path, const char* password, + const char* language, int nettype, uint64_t restoreHeight, + const char* spendKeyString, uint64_t kdf_rounds) { + Monero::WalletManager *wm = reinterpret_cast<Monero::WalletManager*>(wm_ptr); + Monero::Wallet *wallet = wm->createDeterministicWalletFromSpendKey( + std::string(path), + std::string(password), + std::string(language), + static_cast<Monero::NetworkType>(nettype), + restoreHeight, + std::string(spendKeyString), + kdf_rounds + ); + return reinterpret_cast<void*>(wallet); +} + void* WOWNERO_WalletManager_createWalletFromPolyseed(void* wm_ptr, const char* path, const char* password, int nettype, const char* mnemonic, const char* passphrase, bool newWallet, uint64_t restore_height, uint64_t kdf_rounds) { diff --git a/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.h b/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.h index 44091df..8093c4d 100644 --- a/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.h +++ b/wownero_libwallet2_api_c/src/main/cpp/wallet2_api_c.h @@ -97,6 +97,10 @@ extern ADDAPI const char* WOWNERO_PendingTransaction_multisigSignData(void* pend extern ADDAPI void WOWNERO_PendingTransaction_signMultisigTx(void* pendingTx_ptr); // virtual std::vector<std::string> signersKeys() const = 0; extern ADDAPI const char* WOWNERO_PendingTransaction_signersKeys(void* pendingTx_ptr, const char* separator); +// virtual std::vector<std::string> hex() const = 0; +extern ADDAPI const char* WOWNERO_PendingTransaction_hex(void* pendingTx_ptr, const char* separator); +// virtual std::vector<std::string> txKey() const = 0; +extern ADDAPI const char* WOWNERO_PendingTransaction_txHex(void* pendingTx_ptr, const char* separator); // }; // struct UnsignedTransaction @@ -876,6 +880,9 @@ extern ADDAPI void* WOWNERO_WalletManager_createWalletFromKeys(void* wm_ptr, con // { // return createWalletFromKeys(path, language, testnet ? TESTNET : MAINNET, restoreHeight, addressString, viewKeyString, spendKeyString); // } +extern ADDAPI void* WOWNERO_WalletManager_createDeterministicWalletFromSpendKey(void* wm_ptr, const char* path, const char* password, + const char* language, int nettype, uint64_t restoreHeight, + const char* spendKeyString, uint64_t kdf_rounds); // virtual Wallet * createWalletFromDevice(const std::string &path, // const std::string &password, // NetworkType nettype, |
