Commit Graph

19 Commits

Author SHA1 Message Date
Jason Rhinelander 13409ad00e
run clang format 2023-04-13 17:15:12 -03:00
Sean 3fec56a7c5
Merge pull request #1630 from darcys22/wallet3-txextra
Wallet3 txextra
2023-03-24 15:50:33 +11:00
Sean Darcy 3648ef28b2 Cleanup of wallet3 code 2023-03-15 09:13:07 +11:00
Sean Darcy 2e6b96afbc ons buy and ons update mapping 2023-03-01 15:56:35 +11:00
Sean Darcy 53388ee8a1 up decoys in stub 2023-02-23 08:49:46 +11:00
Thomas Winget 4b56bf4e4b all tests building now, not all passing 2022-09-07 19:34:52 -04:00
Thomas Winget ebbc0e5644 wallet3 changes and demo fixup
demo is vaguely presentable now.  syncing and basic tx send work.
change output was being sent to void (change address was unimplemented)
but that works now as well.
2022-08-30 19:58:51 -04:00
Sean Darcy 415098f9e9 Wallet RPC calls for Get Balance, Get Address and Export Keys 2022-08-01 17:21:25 -04:00
Thomas Winget 0b17bb9adb fix build after merge
still need to make tests build and fix up some behavior
correctness around RPC (and maybe other areas)
2022-07-25 22:22:49 -04:00
Sean Darcy 3d3765f1ae key image generates correctly 2022-03-28 22:24:29 -04:00
Sean Darcy d1b7d7bb0b check output of sign transaction 2022-03-28 22:24:29 -04:00
Sean Darcy b1d4921e24 Loads in real data to test if the transaction is signing correctly
The wallet needs to be fed a single output plus a sufficient number of
decoys. This transaction was run on the testnet and details were copied
into the test file.
2022-03-28 22:24:29 -04:00
Thomas Winget f67c0f8c4b refactor wallet3 db usage
db usage all now abstracted rather than having sql lying around everywhere.

fix a couple minor bugs in tx construction logic.
2022-03-28 22:24:29 -04:00
Sean Darcy 44f565f085 basic structure for signing transactions
The keyring structure contains functions that will take a pending
transaction and fill out the cryptonote::transaction member with
the relevant signature fields ready for serialization.
2022-03-02 08:51:06 +11:00
Sean Darcy e109ac6f49 review notes 2022-01-05 13:26:30 +11:00
Sean Darcy d7fe7646fc initial commit for decoy selection 2021-12-14 15:37:57 +11:00
Sean Darcy 0ac65075eb Calculate the fee based on the current pending transaction.
When building the pending transaction we can call GetFee() to calculate
how much the transaction will cost. It takes a single parameter for the
number of inputs because we will want to specify how many when
estimating.

We then build a list of the potential fees for up to 300 inputs and pass
that to our output selection function which will use it to determine if
the outputs selected will be sufficient to cover the fees. This allows
us to know in advance how much the fees will be rather than trial and
error.
2021-12-07 13:10:32 +11:00
Sean Darcy 25c4fd8a82 initial tx creation
The Transaction Constructor will be used to generate pending
transactions, depending on the type of transaction the pending
transaction class will allow the user to modify items such as tx type
(ONS for example) add additional data to the tx extra field, modify burn
amount etc before finalising the transaction which will select the
necessary outputs, mixins and calculate fees and change amounts. Once
finalised the pending transaction will be forwarded to a signing
structure for further action.
2021-12-02 08:59:05 +11:00
Thomas Winget ecb62e8fab Wallet3 squashed initial commit
tx scanning for basic transactions working
  - TODO: subadresses.  The scanning code is there, but it does not
  currently know/care about any subaddresses.

daemon comms for basic syncing working

(multi-)wallet sync more or less working properly
  - seem to have a dangling shared_ptr somewhere when removing a wallet from
  daemon comms, so not working perfectly yet.

Lots of TODOs and cleanup needed, as well as further features of course.
2021-11-30 16:31:54 -05:00