Commit Graph

3075 Commits

Author SHA1 Message Date
SomberNight 4ef313a1ac hww: smarter auto-selection of which device to pair with
scenario1:
- 2of2 multisig wallet with trezor1 and trezor2 keystores
- only trezor2 connected
- previously we would pair first keystore with connected device and then display error.
  now we will pair the device with the correct keystore on the first try

scenario2:
- standard wallet with trezor1 keystore
- trezor2 connected (different device)
- previously we would pair trezor2 with the keystore and then display error.
  now we will prompt the user to select which device to pair with (out of one)

related: #5789
2020-04-08 17:53:33 +02:00
SomberNight 9d0bb295e6 hww: distinguish devices based on "soft device id" (not just labels)
fixes #5759
2020-04-08 14:44:42 +02:00
SomberNight 7dabbdd082 tests_lnpeer: trivial fix 2020-04-08 13:18:56 +02:00
SomberNight 1ea89af012 crypto.pw_decode: fix one case of raising incorrect exception 2020-04-08 12:49:50 +02:00
SomberNight 789b78cab5 crypto: trivial clean-up of pw_encode/pw_decode functions 2020-04-08 12:38:38 +02:00
ghost43 b31efdc3e7 Merge pull request #6076 from JeremyRand/initial-download-exception
Use specific Exception when chain isn't synced
2020-04-08 08:34:40 +00:00
ThomasV 6307e13549 do not print the entire payment log again, this is redundant 2020-04-08 09:46:16 +02:00
JeremyRand 40389a21b6 Use specific Exception when chain isn't synced
Makes it easier for calling code to know what error happened.
2020-04-08 03:09:08 +00:00
SomberNight caefea19dd trezor pin dialog: only show PIN "strength" when creating/changing
fixes #4832
2020-04-07 18:58:45 +02:00
SomberNight 5259fcb6fd qt PasswordLineEdit: try to clear password from memory
If an attacker has access to the process' memory, it's probably already game over,
still we can make their life a bit harder.

I really tried but failed to encapsulate this logic inside PasswordLineEdit.
The destroyed signal arrives too late.
deleteLater is not called.
__del__ gets called too late.
2020-04-07 18:58:42 +02:00
SomberNight c798e5d9a1 qt: introduce PasswordLineEdit(QLineEdit) 2020-04-07 18:58:37 +02:00
ghost43 4d980cd4bd Merge pull request #6064 from matejcik/trezor-0.12-passphrase
trezor: bump lib version, implement new passphrase-on-device UI
2020-04-06 17:53:59 +00:00
SomberNight fb5382f75f follow-up prev (typo) 2020-04-06 19:49:56 +02:00
ThomasV d2a58a2ec3 lnpeer: do not assume our privkey is the same as lnworker's privkey. 2020-04-06 19:06:27 +02:00
ThomasV 55d0a9587e move maybe_save_short_chan_id to lnchannel 2020-04-06 18:35:12 +02:00
ThomasV f3995350e8 localconfig: rename seed to channel_seed 2020-04-06 16:53:48 +02:00
SomberNight 08bc8617ad change derivation of ln channel keys: use hardened paths 2020-04-06 12:53:57 +02:00
ThomasV 0ea21c59d2 Save channel seed in localconfig 2020-04-04 13:28:19 +02:00
SomberNight 1dc3100ba3 android build: use "cryptography" instead of "pycryptodomex" fork
Electrum needs either "cryptography" or "pycrytodomex" (since #6014).
Previously we have been using a custom fork (of ours) of pycryptodomex,
now let's just use upstream "cryptography".
2020-04-04 01:43:00 +02:00
SomberNight f777c9ee13 android build: update buildozer/p4a/NDK
- updated p4a pulls in newer openssl (old one is no longer available from openssl.org)
- old NDK no longer available (new one is what updated p4a recommends)
2020-04-04 01:42:57 +02:00
SomberNight f412420892 include lnwire csv files in binaries (follow-up #6050) 2020-04-04 01:40:05 +02:00
SomberNight f13f46c555 qt wizard: make "GoBack" unroll the call stack to avoid stack overflow
fixes #6069
2020-04-03 18:58:51 +02:00
ThomasV aa32e31a3d follow-up previous commit 2020-04-03 18:54:02 +02:00
ThomasV 06dfe1699c LNWatcher: Distinguish between blockchain-triggered channel state
transitions, and actions taken as a result.
- state transitions are performed in lnchannel.update_onchain_state()
- peer actions are in LNWorker.on_channel_update()
2020-04-03 17:34:11 +02:00
ThomasV 9ca445bd5d save_short_chan_id: remove unneeded ćalls to lnwatcher 2020-04-03 12:59:56 +02:00
ThomasV c8f602c9d7 pw_decode, pw_encode: separate bytes functions 2020-04-03 12:29:55 +02:00
ThomasV 764c18b3c8 follow-up prev commit 2020-04-02 17:36:18 +02:00
ThomasV 5067166e1e move should_channel_be_closed_due_to_expiring_htlcs into Channel class 2020-04-02 17:18:50 +02:00
SomberNight 1cdff09ead follow-up 371f55a0f9 2020-04-02 14:39:01 +02:00
SomberNight eecdd056b3 lnmsg: small speed-up: read first, check length after
this saves around ~13% wall clock time in ChannelDB.load_data
2020-04-01 21:49:23 +02:00
SomberNight 71635216df ln feature bits: validate transitive feature deps everywhere 2020-04-01 21:49:19 +02:00
SomberNight 94e3c078f8 lnaddr: small clean-up 2020-04-01 21:49:16 +02:00
SomberNight 1be0a710c3 ln: implement option payment_secret 2020-04-01 21:49:12 +02:00
SomberNight d424487814 lnpeer: better error handling when processing onion packets 2020-04-01 21:47:45 +02:00
SomberNight 30bf32b34b use option varonion: actually use TLV payloads, and signal support 2020-04-01 21:47:42 +02:00
SomberNight 4b78bf94d4 lnaddr: add feature bit support to invoices
see https://github.com/lightningnetwork/lightning-rfc/pull/656
2020-04-01 21:42:52 +02:00
SomberNight a66437f399 lnonion: implement basis of varonion support 2020-04-01 21:42:48 +02:00
SomberNight 6ba08cc8d4 ln feature bits: flatten namespaces, and impl feature deps and ctxs
This implements:
- flat feature bits https://github.com/lightningnetwork/lightning-rfc/pull/666
- feature bit dependencies https://github.com/lightningnetwork/lightning-rfc/pull/719
2020-04-01 21:41:24 +02:00
SomberNight c69937395e lnmsg: add more tests (for encode_msg, decode_msg) 2020-04-01 21:40:13 +02:00
SomberNight 71a4302ec0 lnpeer: send and handle "networks" param in "init" msg 2020-04-01 21:40:09 +02:00
SomberNight 85d7a13360 lnmsg: implement tests from BOLT-01 2020-04-01 21:40:06 +02:00
SomberNight f353e6d55c lnmsg: encode/decode TLVs as part of messages 2020-04-01 21:40:03 +02:00
SomberNight 542e33fd86 lnmsg: handle "..." as field count 2020-04-01 21:39:59 +02:00
SomberNight 6949752263 lnmsg: initial TLV implementation 2020-04-01 21:39:56 +02:00
SomberNight 3a73f6ee5c lnmsg.decode_msg: dict values for numbers are int, instead of BE bytes
Will be useful for TLVs where it makes sense to do the conversion in lnmsg,
as it might be more complicated than just int.from_bytes().
2020-04-01 21:39:52 +02:00
SomberNight 4c10a830f3 lnmsg: rewrite LN msg encoding/decoding 2020-04-01 21:39:48 +02:00
SomberNight 371f55a0f9 hww: fix some threading issues in wizard
fixes #3377
related: #6064  (passphrase dialog not rendered correctly)
2020-04-01 21:09:17 +02:00
SomberNight 81fc3fcce2 hww: rm some code duplication: add "scan_and_create_client_for_device" 2020-04-01 21:09:14 +02:00
SomberNight 18c98483ac wizard: (trivial) add some type hints 2020-04-01 21:09:10 +02:00
SomberNight e6d43b60fa qt hww show_settings_dialog: don't scan devices in GUI thread
Just makes sense in general.
Also, previously, the GUI would freeze if right after startup the user
clicked the hww status bar icon (especially with multiple hww connected).
2020-04-01 21:09:06 +02:00