Franck Royer
f5ca5faabf
Process execution setup failure similarly to other failures
...
By merging it in the failure event of the root behaviour.
2021-02-10 16:42:54 +11:00
Franck Royer
4ade5df0e5
Remove unnecessary impl block
2021-02-10 16:42:54 +11:00
Franck Royer
60e0b9382c
Introduced from float API for Monero quantities
2021-02-10 16:42:54 +11:00
Franck Royer
b5b990257a
Move Behaviour
in dedicated module
2021-02-10 16:42:54 +11:00
Franck Royer
87be9aeb2a
Prepare separation of event loop initialisation to swap initialisation
...
As for Alice, the event loop will be started with the program and will
be the one starting swaps (`run_until`) based on libp2p events (swap
request).
2021-02-10 16:42:54 +11:00
Franck Royer
530b9b2ea8
Remove possible mix up of timelocks when using State0::new
2021-02-10 16:42:53 +11:00
Franck Royer
f35ed436ce
Allow EventLoop
to hold a database ready to pass to alice::Buider
...
The `EventLoop` will use the `Builder` interface to instantiate a
`Swap` upon receiving a `SwapRequest` and successfully doing an
execution setup.
Before this change, the `EventLoop` would have to hold the path to the
db and re-open the db everytime it wants to construct a swap.
With this change, we can open the DB once and then hold a
`Arc<Database>` in the `EventLoop` and pass it to new `Swap`s structs.
2021-02-10 16:42:53 +11:00
Franck Royer
39a46baa2c
Preemptively box cancel tx to avoid size difference in enum
2021-02-10 16:42:53 +11:00
Franck Royer
69363e43a3
Preemptively box encrypted signature to avoid size difference in enum
2021-02-10 16:42:53 +11:00
Franck Royer
fd084b764d
Move generation of keys inside State0::new
...
The event loop will now use this function so I want to simplify its
usage to avoid having to instantiate too many items to use it.
2021-02-10 16:42:53 +11:00
Franck Royer
788445964a
Move main.rs to cli.rs to prepare for nectar binary
2021-02-10 16:42:51 +11:00
Franck Royer
311ba74cd6
Remove sell-xmr from CLI
2021-02-10 16:41:38 +11:00
Daniel Karzel
0a0bce1552
Rename temporary wallet to blockchain monitoring wallet
2021-02-10 15:06:26 +11:00
Daniel Karzel
1e29433bd2
Open or create temporary Monero wallet upon wallet initialization
2021-02-09 16:34:50 +11:00
Daniel Karzel
dac4443bbd
Add functionality to open monero wallet through rpc
2021-02-09 16:34:50 +11:00
Daniel Karzel
62605a318a
Add CreateWallet trait to expose create_wallet
2021-02-09 16:34:50 +11:00
Daniel Karzel
53fcd9224c
Give finding the refund tx priority over waiting for the punish transaction to be finalized.
...
This was introduced due to a CI run, where Bob included tx_refund, but Alice had waited until T2 had expired,
and then went for punishing Bob instead of refunding.
Weirdly, Alice's punich transaction did not fail in that scenario.
2021-02-09 12:13:43 +11:00
Daniel Karzel
86290649e7
work in review comments
2021-02-08 21:20:58 +11:00
Daniel Karzel
c930ad84a4
Add --force flag for cancel and refund
2021-02-08 21:19:38 +11:00
Daniel Karzel
02f8eb7f18
Add test for cancel/refund before timelock expired
2021-02-08 21:18:37 +11:00
Daniel Karzel
2d5d70d856
Timeout for Alice waiting for ack for sending transfer proof
...
If dialing Bob fails Alice waits for the acknowledgement of the transfer proof indefinitely.
The timout prevents her execution from hanging.
Added a ToDo to re-visit the ack receivers. They don't add value at the moment and should be removed.
2021-02-08 21:18:37 +11:00
Daniel Karzel
c9adbde5d5
Add test for Bob's manual cancel and refund
2021-02-08 21:17:56 +11:00
Daniel Karzel
ad2aefc2a5
Refund Command
2021-02-08 21:16:32 +11:00
Daniel Karzel
0600a7048e
Cancel command
2021-02-08 21:11:39 +11:00
Franck Royer
dee8c1e335
Remove scopes
2021-02-08 09:16:31 +11:00
Franck Royer
a48823a665
Re-organise Alice state to be more coherent with the msg sequence
2021-02-08 09:16:31 +11:00
Franck Royer
eefb1b3b16
Use event_process = false for Bob
...
As we do not process the event, we can just implement the needed `From`
traits.
2021-02-08 09:16:31 +11:00
Franck Royer
a7b89e2fe4
Use event_process = false for Alice
...
As we do not process the event, we can just implement the needed `From`
traits.
2021-02-08 09:16:29 +11:00
Franck Royer
554ae6c00e
Remove Request Response types
...
These are actually not needed and forces us to cater for variants when
processing requests and responses.
2021-02-08 09:15:21 +11:00
Franck Royer
5a5a1c05f7
Set appropriate name to codec
2021-02-08 09:15:21 +11:00
Franck Royer
a11e894b31
Prepend all libp2p protocols with "comit"
2021-02-08 09:15:21 +11:00
Franck Royer
cfc5cb5206
Remove dead code and combine swap request & one shot codecs
2021-02-08 09:15:20 +11:00
Franck Royer
fc2d8d3861
Rename alice::Message0 to Message0
...
There is now only one message0
2021-02-08 09:15:20 +11:00
Franck Royer
88bf080dc0
rename alice::Message0 to Message1
2021-02-08 09:15:20 +11:00
Franck Royer
18f326ddd1
Rename bob::Message1 to Message2
...
As per sequence diagram.
2021-02-08 09:15:20 +11:00
Franck Royer
0d1be52966
Rename alice::Message1 to Message3
...
As per sequence diagram.
2021-02-08 09:15:20 +11:00
Franck Royer
e74efd38b5
Rename bob::Message2 to Message4
...
As per sequence diagram.
2021-02-08 09:15:20 +11:00
Franck Royer
081237bb6f
Remove unused behaviours
2021-02-08 09:15:20 +11:00
Franck Royer
ecb54958ee
Preemptively Box few messages
2021-02-08 09:15:19 +11:00
Franck Royer
3fa4ffa82c
Implement new behaviour for execution setup
2021-02-05 16:42:46 +11:00
Franck Royer
9ae050abf8
Use correct variable name
2021-02-05 16:42:33 +11:00
Franck Royer
c316ea5244
Upgrade toolchain
...
Needed to use libp2p-async-await
2021-02-04 15:18:33 +11:00
Franck Royer
e82383bcf6
Avoid carrying rng
2021-02-04 15:18:33 +11:00
Philipp Hoenisch
25bf5df122
Merge pull request #172 from comit-network/dead-code
...
Remove dead code
2021-02-04 13:55:02 +11:00
Philipp Hoenisch
8743527df9
Remove dead code
2021-02-03 14:26:36 +11:00
Daniel Karzel
b27363e386
Use correct default data directory
2021-02-02 20:36:58 +11:00
Daniel Karzel
5cb4f3c99d
rename configuration to config
2021-01-29 17:31:18 +11:00
Daniel Karzel
89b3775e05
Rename config to execution_params
2021-01-29 17:27:50 +11:00
Daniel Karzel
802dc61e7e
Configuration for RPC urls and Bitcoin wallet name
2021-01-29 17:21:19 +11:00
Franck Royer
f1c07fbb6d
Remove incorrect todo
2021-01-29 16:13:25 +11:00