Prior to this commit, if an invalid destination address
was entered on the command line for the tumbler script,
the invalidity would cause a crash at the time a transaction
was built with this destination (during the run).
After this commit, all destination addresses entered on
startup are checked immediately and the program quits with
this information if a specific address is invalid.
In commit 22467f4 a bug was introduced whereby detailed
sync was used instead of fast sync, but with only one
iteration, in Joinmarket-Qt, in certain circumstances,
leading to incorrect wallet reporting/display. This commit
reverts that change (except for function name change).
There may still be edge cases for large wallets doing
recovery in Qt but this will be dealt with later.
c9bf1c6 Update documentation: Replace links to instructions in original Wiki with updated and corrected instructions within USAGE.md. Add YIELDGENERATOR.md to docs/ with updated and corrected instructions from original wiki. (AdamISZ)
Replace links to instructions in original Wiki with updated
and corrected instructions within USAGE.md.
Add YIELDGENERATOR.md to docs/ with updated and corrected
instructions from original wiki.
d62a300 Fix sweeps with N=0 counterparties, which otherwise fails because the amount was changed from 0 too early (AlexCato)
b656f85 Sendpayment/Tumbler: fix division by 0 error on sweeps (AlexCato)
af11116 Estimate tx fees for sendpayment or full tumbler run and warn the user if the tx fee estimation exceeds 5% of the funds to be coinjoined/tumbled. (AlexCato)
4b4f8c9 Fix bug in detailed wallet sync relating to gap addrs. (AdamISZ)
6c15bd7 Make address imports with address requests in wallet Prior to this commit, there was duplicated code in maker and taker modules to import addresses, now all calls to the wallet for fresh addresses can optionally pass a blockchaininterface instance and if this is done, the new address will be imported to the BCI at the same time. (AdamISZ)
Prior to this commit, addresses imported on tx creation
were at the tip of the index only, but detailed sync
requires all address gap-forwards to be imported, else
it requires a restart.
The particular fix approach taken her is aggression
because import is cheap; we import wallet.gaplimit forwards
on all branches, taking advantage of the bci's function
_collect_addresses_gap, thus ensuring that unless the gap
limit changes, we will definitely not need a restart.
Fast sync did not suffer from this and is unchanged.
Prior to this commit, there was duplicated code in maker
and taker modules to import addresses, now all calls to
the wallet for fresh addresses can optionally pass a
blockchaininterface instance and if this is done, the
new address will be imported to the BCI at the same time.
Currently, only 'self' works until the other options for tx_broadcast are implemented. Update the docs accordingly, because there was someone wondering on IRC today why his transaction failed to broadcast; the reason was he changed this setting, which currently only works for 'self'.
If the other options are implemented (tagging #368 ), this documentation should be changed along with it.
Fixes#362. Prior to this commit, if tumbler was invoked with
the --restart flag, it waited for the presence of the 0 index
output of the last seen tumbler transaction in the utxo set,
which was an unreliable indicator as that output could have,
in the meantime, been spent.
After this commit, we utilise the fact that the transaction
must be an in-wallet transaction, and use the rpc gettransaction
to check whether it has 1 or more confirmations, instead, which
should always work whether any outputs are spent or not.
Ran into a crash with sendpayment today, when tx_broadcast in joinmarket.cfg is set to not-self.
Before the change, it crashed on the modified line because type dict_keys is returned here, which cannot be used with an index.
after restarts, instead of sending coins back to wallet.
This is a fix for #363.
Prior to this commit, if a tumbler
run was restarted on command line with --restart, and a schedule
entry failed triggering a call of tweak_tumble_schedule, the
destination address was always reset with INTERNAL to another in-
wallet address, even if it was actually an outward destination
address, because the restart of the tumbler script created an
instance of Taker without any addresses stored in the variable
tdestaddrs. After this commit, the Taker instance is instantiated
with the remaining destination addresses in the post-restart
schedule.
The user is prompted with a warning if they use --restart in
combination with command line destination addresses; they are
warned that the latter will be ignored, since the contents of the
schedule file are respected, instead.
d909f62 Hint for `bitcoin-cli rescanblockchain` in `restart_msg` (Kristaps Kaupe)
Tree-SHA512: d8b124dd01b17480f219d0bab1ec8e0164ededc6641d80d96202ba262baec70e1f545623c0219d44f71adceb8ad41b610d16c6b9d39d71d65cb0f7aa17c7c3a4
86d5369 Trivial: more detailed logging on malformed offers and amount of coinjoins (Alex Cato)
Tree-SHA512: a684b5056ee846c2a22b2c7d549589cb8eec637514efc25350d5c8de55432e35b634b4abff49505ec860f3ce2c2ffd113cb2a8e90929739d63d87b8e8d4371a2
078b2e2 Message-signature-verification: also accept lowercase hostid as valid. The hostid upper/lowercase seems can be different depending on how someone connects to an IRC server (via TOR, clearnet, etc.). This leads to message signature verification failures, if the receiving counterparty has a differently capitalized id. (Alex Cato)