Utilises signing with SINGLE|ANYONECANPAY sighash flags.
Allows one party as "maker", with tainted utxo (e.g. only
valid on one chain), to create a custom single (input, output)
pair that receives slightly more than it spends (to avoid DOS),
and pass it to a "taker" who then combines with own input
utxos and outputs and broadcasts.
Valid for p2pkh or p2sh-p2wpkh, although wallets here are only
the latter.
confirmation as per TIMEOUT section in config.
Mark wallet as synced after sync_unspent in Core
interface (to match Electrum interface, and wait for
this update before modifying orders).
To correspond, allow fast sync in test setup in several tests.
Disallow sync_unspent in syncing wallet full mode if sync_addresses fails.
This prevents the wallet erroneously being marked as synced in full mode.
This change happened as a result of the new electrum wallet sync; because
this is asynchronous, the call to sync_unspent in the client protocol does
not block, thus must be flagged when complete, this is done with
bci.wallet_synced set to True at end of sync_unspent. But this leads
to the wallet as always being marked synced using full sync_mode if we
call both functions unconditionally.
These wallet sync conditions have become unwieldy; a refactor is in order.
Some small extra documentation in docs/TODO.md.
Use relative paths when setting btcconf default filepath
Whitespace and newlines
Must specify return value in python
os.path.join preferred over str +
Also adding some print statements.
Set wallet synced to True on code branch where wallet is empty, so sync completes.
Ensure wallet_synced is False at the start of new sync (otherwise Resync in Qt fails).
wif compressed version byte is the pubkey version byte,
not the address version byte (so x80 or xef).
This is updated in the scripts and the Qt code for
exporting or displaying.
sendtomany update:
script now works with segwit or non-segwit inputs
(segwit by default), still requiring a utxo and a
wif compressed privkey as input.
small clean up in electrum:
remove nonresponsive testnet server
remove unwanted print statement from fee estimate
ae6b7f2 Various fixes: (AdamISZ)
56fa058 respect index_cache in electrum wallet sync (AdamISZ)
836dbc8 Full tx flow working on regtest/electrumX taker side tx watcher fixed, detect p2pkh scripts in jmbitcoin (AdamISZ)
6752901 initial async wallet sync working (AdamISZ)
handle electrum server disconnects and switch to new servers automatically, refactor server lists to data file
add SSL connections to electrum
Bugfixes in electrum code:
Restart on connectionFailed as well as connectionLost
Query utxo set must return (only) None for nonexistent/spent utxos.
Dont include twisted logging for wallet-tool
start thread immediately for early blockchain queries
timeout non-responsive servers
fix abstractBCI refs in subclasses