Commit Graph

17575 Commits

Author SHA1 Message Date
accumulator ae1a3e75cd Merge pull request #9077 from jinjiadu/master
chore: fix comment
2024-06-01 10:14:47 +02:00
jinjiadu e86c05177f chore: fix comment
Signed-off-by: jinjiadu <jinjiadu@aliyun.com>
2024-06-01 15:01:08 +08:00
accumulator 15f13ebc66 Merge pull request #9076 from SomberNight/202405_android_config_pin
qml: "wallet_else_pin" auth should only use the wallet pw if is unified
2024-05-31 11:14:50 +02:00
SomberNight db5f1a11a5 fix typo
note: "everytime" even appears in the old_mnemonic wordlist, but it is a misspelling.
2024-05-30 16:59:28 +00:00
SomberNight 11614f035d qml: "wallet_else_pin" auth should only use the wallet pw if is unified
related https://github.com/spesmilo/electrum/pull/9074
2024-05-30 16:17:21 +00:00
ghost43 183bdd1464 Merge pull request #9073 from accumulator/android_qr_scanner_fix
qml: don't unbind/unregister the ActivityResultListener from within the ActivityResultListener handler func
2024-05-30 15:51:26 +00:00
ThomasV 31884895aa wallet_db: show electrum version in error dialog 2024-05-30 17:19:23 +02:00
ghost43 e3eb59f01d Merge pull request #9074 from accumulator/issue_8366
qml: don't rely on wallet when deactivating PIN and no wallet loaded (fixes #8366)
2024-05-30 15:16:46 +00:00
Sander van Grieken 8085c41cfb qml: don't rely on wallet when deactivating PIN and no wallet loaded (fixes #8366) 2024-05-30 15:23:25 +02:00
SomberNight 73989e7a1b bip21: trivial follow-up
follow-up bb4ee2b50b
2024-05-30 13:08:13 +00:00
SomberNight c5ac0b341f release.sh: print warning on unexpected arg value
I keep mixing up sombernight and sombernight_releasekey.
2024-05-30 12:54:00 +00:00
Sander van Grieken 450b9a03ce qml: don't unbind/unregister the ActivityResultListener from within the ActivityResultListener handler func.
instead, schedule a queued finished signal to unregister the listener after the handler has finished.
See PythonActivity.java in P4A for why this probably causes the most often occurring crash we see on the Play Store:

```
Exception java.lang.RuntimeException:
  at android.app.ActivityThread.deliverResults (ActivityThread.java:5164)
  at android.app.ActivityThread.handleSendResult (ActivityThread.java:5205)
  at android.app.servertransaction.ActivityResultItem.execute (ActivityResultItem.java:51)
  at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2136)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:236)
  at android.app.ActivityThread.main (ActivityThread.java:8061)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:656)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:967)
Caused by java.util.ConcurrentModificationException:
  at java.util.ArrayList$Itr.next (ArrayList.java:860)
  at org.kivy.android.PythonActivity.onActivityResult (PythonActivity.java:218)
  at android.app.Activity.dispatchActivityResult (Activity.java:8501)
  at android.app.ActivityThread.deliverResults (ActivityThread.java:5157)
```
2024-05-30 14:53:33 +02:00
SomberNight ef536493ee update release notes for version 4.5.5 2024-05-29 17:05:48 +00:00
Sander van Grieken 3d189d99a5 followup 4159ceee35 2024-05-29 16:59:00 +02:00
SomberNight 3bd8e4aa4e update locale 2024-05-29 14:56:04 +00:00
SomberNight 0f89b8d4bc update block header checkpoints 2024-05-29 14:44:24 +00:00
SomberNight ebbdadb080 ci: follow-up: build own libsecp256k1 instead of using apt
follow-up https://github.com/spesmilo/electrum/commit/dbc69727bd93acca11e4d10cdeb9a32ccf99ff25
2024-05-29 13:30:49 +00:00
Sander van Grieken 4159ceee35 qt: fix ReceiveWidget layout (fixes #9049) 2024-05-29 15:14:23 +02:00
ghost43 9214291cdb Merge pull request #9072 from SomberNight/202405_bump_secp
bump libsecp256k1 version (0.4.1->0.5.0)
2024-05-29 12:46:43 +00:00
Sander van Grieken 9674ffc8ee bip21: add testcases for amount bounds 2024-05-29 10:22:28 +02:00
Sander van Grieken bb4ee2b50b bip21: consider amount=0 in bip21 uri invalid 2024-05-29 10:12:43 +02:00
SomberNight dbc69727bd ci: unittests: build own libsecp256k1 instead of using apt
related https://github.com/spesmilo/electrum/commit/6bf7542b25fb08cae165930bfabbd08086d83ee5
2024-05-28 17:13:17 +00:00
SomberNight 2eee98b493 bump libsecp256k1 version (0.4.1->0.5.0) 2024-05-28 17:09:44 +00:00
SomberNight 7827be17d1 qt wizard: fix offline 2fa wallet creation in some cases
fixes https://github.com/spesmilo/electrum/issues/9037
2024-05-28 15:31:37 +00:00
SomberNight e8a9e45291 qml wizard: even stricter validation for new wallet name
related: https://github.com/spesmilo/electrum/commit/07dc80dd9a21df820a3de3ea0cb1768c74aeab9d
2024-05-28 14:20:28 +00:00
ghost43 9f74ba4e8c Merge pull request #9070 from SomberNight/202405_ecc_ecdsa_low_s
ecc: ecdsa_verify to enforce low-S rule
2024-05-28 13:20:08 +00:00
SomberNight 07c80d2ca1 ecc: ecdsa_verify to enforce low-S rule
The low-S rule for ecdsa signatures is mandated by Bitcoin Core policy/standardness (though not by consensus). If we get signatures from untrusted sources, we should mandate they obey the policy rules. (e.g. from LN peers)

Note that we normalize the signatures in the sig format conversion methods (DER <-> (r,s) <-> sig64).

The BOLTs treat high-S signatures as invalid, and this changes our behaviour to that.
(previously we would silently normalize the S value)

see https://github.com/bitcoin/bitcoin/pull/6769
see https://github.com/lightning/bolts/pull/807
2024-05-27 17:12:33 +00:00
SomberNight d61c6037ea ecc: add test that verify_usermessage does not enforce low-S rule 2024-05-27 17:09:45 +00:00
SomberNight bafd52ec6d lnsweep: rm one usage of Transaction.get_preimage_script()
get_preimage_script should really have been private API...
looks like everywhere it is used outside of transaction.py, it is actually abused :/
Other existing usages in plugin code I don't dare to touch without lots of manual testing...
2024-05-24 13:40:48 +00:00
SomberNight 2f02e0acc3 qt main window: rm dead code 2024-05-23 13:38:18 +00:00
SomberNight e25658d724 fix plot.py
fixes https://github.com/spesmilo/electrum/issues/9058
2024-05-22 15:26:26 +00:00
SomberNight 48513df4ae qml: NetworkOverview: show server height when syncing headers
for better feedback during initial header sync
2024-05-22 14:43:28 +00:00
SomberNight 27f09c1f9f interface: also trigger 'blockchain_updated' during initial sync
In fact, semantically it might be more correct to only trigger 'blockchain_updated' and not 'network_updated' here...
Anyway, 'blockchain_updated' should be triggered whenever the Blockchain object gets longer (or changes otherwise).

In particular, in qml, the NetworkOverview only updates the displayed height on 'blockchain_updated'.
2024-05-22 14:34:37 +00:00
SomberNight 235e28ce20 crypto: add some notes re considerations 2024-05-22 13:39:27 +00:00
SomberNight 0b456e99ca Merge pull request #9059 from onvej-sl/slip39-extendable
slip39: Implement extendable backups

see https://github.com/satoshilabs/slips/commit/8d060706b549af6443e04f55605b71f65c981663
see https://github.com/trezor/python-shamir-mnemonic/issues/48
2024-05-22 13:25:30 +00:00
Ondřej Vejpustek 70f0ed992f slip39: implement extendable backups 2024-05-20 16:57:11 +02:00
SomberNight 4b5cd0ff2b ecc: "public key could not be parsed" exception to contain pubkey bytes
also consolidate naming of variables somewhat

related: https://github.com/spesmilo/electrum/issues/9052
2024-05-16 17:29:26 +00:00
Robert 410201af73 fix apparmor issue (#9047)
fix apparmor issue

Co-authored-by: ghost43 <somber.night@protonmail.com>
2024-05-16 15:47:47 +00:00
Sander van Grieken 9d29e6e03c qml: log error if not able to retrieve private key for address 2024-05-16 12:12:26 +02:00
Sander van Grieken cea9055a65 wizard: fix wrong icon and icon disappearing when resuming unfinished wallet 2024-05-16 00:08:07 +02:00
accumulator 2fb2966975 Merge pull request #9053 from hugehope/master
chore: fix some typos
2024-05-15 15:34:52 +02:00
hugehope c0a2ed5dd3 chore: fix some typos
Signed-off-by: hugehope <cmm7@sina.cn>
2024-05-15 20:41:01 +08:00
ThomasV 8162e32016 Merge pull request #9042 from accumulator/qml_lightning_budget_preference
qml: expose LIGHTNING_PAYMENT_BUDGET_FEE_MAX_MILLIONTHS in preferences
2024-05-09 16:00:29 +02:00
Sander van Grieken 082cf6677e qml: expose LIGHTNING_PAYMENT_BUDGET_FEE_MAX_MILLIONTHS in preferences 2024-05-09 12:31:51 +02:00
ThomasV dfa247773f Merge pull request #9041 from SomberNight/202405_tramp1
trampoline: use exponential search for fees, capped by configurable budget
2024-05-09 09:57:37 +02:00
SomberNight 5b74aa443e qt settings: expose LIGHTNING_PAYMENT_BUDGET_FEE_MAX_MILLIONTHS
Expose as a slider; perhaps it is less footgunny this way?
2024-05-08 15:54:20 +00:00
SomberNight 967ceb7740 lnworker: move around some logging re PaySession, also log budget 2024-05-08 15:53:27 +00:00
SomberNight 67d373357b lnworker: make PaymentFeeBudget defaults configurable
- make PaymentFeeBudget proportional fee and flat cutoff fee configurable
  - closes https://github.com/spesmilo/electrum/issues/7622
- increase flat cutoff fee default to 10 sat
  - closes https://github.com/spesmilo/electrum/issues/7669
- rm RouteEdge.is_sane_to_use() (per edge limit) and just rely on budgets (per route limit)
2024-05-08 15:53:22 +00:00
ThomasV fd672fed9f submarine swaps: separate server logic from transport 2024-05-07 09:01:33 +02:00
SomberNight 79d2b19fc0 trampoline: rm hardcoded TRAMPOLINE_FEES. just use exponential search
Values for exponential search are based on available fee budget:
we try with budget/64, budget/32, ..., budget/1  (spread uniformly among the selected Trampoline Forwarders).
Hence, if we make the fee budget configurable, that will usefully affect the trampoline fees as well.

related https://github.com/spesmilo/electrum/issues/9033
2024-05-06 18:36:29 +00:00