Oliver Gugger
7f4e977073
lntest+rpcwallet: support remote p2tr key spend signing
2022-05-11 10:07:50 +02:00
Oliver Gugger
35dd2d25ea
btcwallet: support taproot script signing in PSBT
2022-05-11 10:07:50 +02:00
Oliver Gugger
0f32a4456d
btcwallet: support taproot key spend signing in PSBT
2022-05-11 10:07:50 +02:00
Oliver Gugger
e4aa32fdf7
btcwallet: prepare for supporting new signing methods
2022-05-11 10:07:49 +02:00
Oliver Gugger
0e098ed9da
mod: update to btcd/btcutil/psbt v1.1.4
2022-05-11 10:07:49 +02:00
Oliver Gugger
99cda74f6a
input: define new signing method constants
2022-05-11 10:07:48 +02:00
Oliver Gugger
5395a0fe6b
rpcwallet: attempt to locate UTXO information in prev output fetcher
...
Since we might now be given a whole list of UTXOs in the PrevOutputs
field of the SignOutputRaw RPC, the previous output fetcher might
contain the information we require for the remote signing case. So
instead of failing if our wallet doesn't know each input that's being
spent, we fall back to the UTXO information contained in the previous
outputs.
2022-05-11 10:07:48 +02:00
Oliver Gugger
0051e39078
Merge pull request #6345 from ellemouton/bitcoind-rpc-polling
...
multi: bitcoind rpc polling option
2022-05-11 10:04:37 +02:00
Oliver Gugger
ddeccf8fcc
Merge pull request #6521 from guggero/p2tr-open-channel
...
chanfunding: properly support p2tr inputs in funding TX
2022-05-10 21:33:15 +02:00
Oliver Gugger
066fe07de5
docs: add release notes
2022-05-10 20:35:28 +02:00
Oliver Gugger
4fd43b4afe
itest: add new funding test with all input types
2022-05-10 20:35:28 +02:00
Oliver Gugger
fd7fe2ae5a
itest: use SendCoinsUnconfirmed in funding test
2022-05-10 18:39:45 +02:00
Oliver Gugger
e27a9fec66
lntest: rename sendCoins to SendCoinsOfType
2022-05-10 18:31:18 +02:00
Oliver Gugger
18cf06ddd1
chanfunding: fix sighash type for p2tr inputs
...
This commit fixes the default sighash type for p2tr channel funding
transaction inputs.
2022-05-10 18:13:00 +02:00
Oliver Gugger
631b2af818
btcwallet: support p2tr input info type detection
2022-05-10 18:03:29 +02:00
Oliver Gugger
8980471d57
chanfunding: support p2tr input fee calculation
...
With this commit we support fee calculation in coin selection for p2tr
inputs. We assume that coins in our UTXO selection are only BIP0086
coins. Any other input types with different spend paths won't be
selected by the wallet assembler.
2022-05-10 18:01:14 +02:00
Oliver Gugger
10f7213998
Merge pull request #6472 from tvolk131/document_confirmation_height
...
Document that `confirmation_height` is unset
2022-05-09 10:55:31 +02:00
Oliver Gugger
5d8fba6810
Merge pull request #6502 from bhandras/musig-fix
...
signer: fix crash in `MuSig2Combine` when the final signature isn't ready
2022-05-06 13:24:27 +02:00
Oliver Gugger
a4b486c58c
Merge pull request #6486 from sangaman/install-tags
...
docs/INSTALL.md: add list of build tags
2022-05-06 10:20:27 +02:00
Oliver Gugger
f8dd032de5
Merge pull request #6465 from Roasbeef/bitcoind23
...
build: update CI to build against bitcoind 23
2022-05-05 13:24:50 +02:00
Oliver Gugger
bdd1c5c4e1
Merge pull request #6423 from tvolk131/fix_typos
...
Typo fixes and code cleanup
2022-05-05 09:42:39 +02:00
Oliver Gugger
48695dd801
Merge pull request #6495 from guggero/musig2-session-cleanup
...
MuSig2: Add session cleanup RPC
2022-05-04 21:30:52 +02:00
Oliver Gugger
17e0f990ac
docs: add release notes
2022-05-04 19:23:59 +02:00
Oliver Gugger
52e42fc107
lnrpc+itest: implement MuSig2Cleanup RPC
2022-05-04 19:23:58 +02:00
Oliver Gugger
7e11f64650
rpcwallet: only shut down on RPC error
2022-05-04 19:23:58 +02:00
Oliver Gugger
95ff670c0e
multi: add MuSig2Cleanup method to MuSig2 signer
2022-05-04 19:23:58 +02:00
Oliver Gugger
771d77d875
signrpc: add MuSig2Cleanup RPC
2022-05-04 19:23:57 +02:00
Oliver Gugger
05fd4f9e0e
Merge pull request #6463 from guggero/num-payments
...
ListPayments: add new optional count_total_payments flag
2022-05-03 16:23:58 +02:00
Oliver Gugger
cd21918c5d
Merge pull request #6483 from ErikEk/remove-zmq-check
...
zmq: remove port checker
2022-05-03 09:51:59 +02:00
Oliver Gugger
68fad0cd53
Merge pull request #6478 from bufo24/master
...
fix typo comment for scanInvoicesOnStart function
2022-05-03 09:51:32 +02:00
Oliver Gugger
bf03d112a9
docs: add release notes
2022-05-02 12:32:07 +02:00
Oliver Gugger
ab6e1012e4
cmd/lncli: add --count_total_payments flag
2022-05-02 12:32:07 +02:00
Oliver Gugger
a44e56b51a
lnrpc: add new request/response fields for payment count
2022-05-02 12:32:06 +02:00
Oliver Gugger
c42330d9c5
channeldb: add CountTotal option to payment query
2022-05-02 12:32:06 +02:00
Oliver Gugger
63f02c2bd8
Merge pull request #6250 from Crypt-iQ/resolutionmsg_handoff
...
htlcswitch+lntest: create resolutionStore to persist ResolutionMsg
2022-05-02 10:17:05 +02:00
Oliver Gugger
aca22998bc
Merge pull request #6481 from torkelrogstad/2022-04-30-chain-notifier
...
chainrpc: clarify documentation
2022-05-02 09:34:15 +02:00
Oliver Gugger
9bbee09497
Merge pull request #6361 from guggero/musig2
...
Musig2: add new MuSig2 RPC methods to `signrpc`
2022-04-29 12:55:52 +02:00
Oliver Gugger
93e069f3bd
docs: add MuSig2 doc and release notes
2022-04-29 11:42:47 +02:00
Oliver Gugger
63e93ae572
itest: add taproot SignOutputRaw Bip86 signing test
2022-04-29 11:42:46 +02:00
Oliver Gugger
3ba6421d5c
itest: add MuSig2 end-to-end tests
2022-04-29 11:42:43 +02:00
Oliver Gugger
e31aab5af6
multi: fix inclusion proof size
...
The inclusion proof field in the TapscriptPartialReveal function was
incorrect. An inclusion proof can be zero or more elements of 32-byte
slices. So an empty inclusion proof can be valid too for a tree that
only consists of a single leaf.
2022-04-29 11:41:09 +02:00
Oliver Gugger
f7275c7fc4
multi: implement MuSig2 RPCs and remote signing
2022-04-29 11:41:09 +02:00
Oliver Gugger
8fc99fba00
input+btcwallet: add MuSig2 signing operations
...
With this commit we add the high-level MuSig2 signing methods to the
btcwallet which will later be exposed through an RPC interface.
2022-04-29 11:41:08 +02:00
Oliver Gugger
fee2b28d1b
itest: refactor taproot test
2022-04-29 11:41:05 +02:00
Oliver Gugger
dfac94bf9b
tools+lint: fix linter for Go 1.18
2022-04-29 09:34:14 +02:00
Oliver Gugger
be704b09b2
mod: bump btcec to MuSig2 version, require go 1.17
2022-04-29 09:34:02 +02:00
Oliver Gugger
0845c4daeb
Merge pull request #6454 from bottlepay/require-interceptor-info
...
rpcserver: expose interceptor required flag on info call
2022-04-25 12:11:29 +02:00
Oliver Gugger
3d7d9361f8
Merge pull request #6422 from hieblmi/lncli-socks-proxy
...
#4939 Add socks proxy support to lncli
2022-04-20 18:58:09 +02:00
Oliver Gugger
b6c5603e00
Merge pull request #5157 from orbitalturtle/addPeer-flag
...
lnd: Adds addpeer flag
2022-04-20 10:03:21 +02:00
Oliver Gugger
51a7566248
Merge pull request #6354 from guggero/fix-unit-tests
...
chainview: fix unit test timeout
2022-04-19 13:08:43 +02:00
Oliver Gugger
3f757e56a7
docs: add release notes
2022-04-19 11:13:21 +02:00
Oliver Gugger
1c0b4fd1de
chainview: increase connection timeout in test
...
The unit test sometimes fails with a connection timeout when trying to
connect to the reorg mining node. We attempt to make things more robust
by doubling both the number of retries as well as the retry timeout
itself.
2022-04-19 11:12:50 +02:00
Oliver Gugger
2195c71407
chainview: fix formatting
2022-04-19 11:12:49 +02:00
Oliver Gugger
b08df8437e
Merge pull request #6428 from guggero/psbt-1-1-3
...
mod+docs: bump btcutil/psbt library to v1.1.3
2022-04-19 10:55:25 +02:00
Oliver Gugger
b6e1d2ae41
mod+docs: bump btcutil/psbt library to v1.1.3
...
Fixes #6386 .
Bumps the btcutil/psbt library to the latest version v1.1.3 that fixes
an issue with de-serializing a PSBT that contains an unsigned
transaction with no inputs.
2022-04-19 09:45:38 +02:00
Oliver Gugger
044286ae2c
Merge pull request #6024 from lightningriders/timepref
...
routing: add time preference parameter
2022-04-13 22:17:02 +02:00
Oliver Gugger
f37ebb68ea
docs: add release notes
2022-04-13 14:01:59 +02:00
Oliver Gugger
70c01e5bf1
mod: bump btcwallet to p2tr unused addr fix
2022-04-13 14:01:59 +02:00
Oliver Gugger
4bdc3c9a5b
Merge pull request #6407 from guggero/multi-fixes
...
signrpc: fix panic with missing UTXO information when signing Taproot output
2022-04-12 19:43:51 +02:00
Oliver Gugger
9281e7a692
docs: add release notes
2022-04-12 19:30:13 +02:00
Oliver Gugger
1e72d6737d
lnrpc+itest: fix panic with missing UTXO info
...
Fixes #6396 .
This commit fixes a panic that occurred when trying to sign for a
Taproot output without specifying the full UTXO information for each
input. Instead of panicking an error is now returned.
2022-04-12 19:30:12 +02:00
Oliver Gugger
2a069b8b4e
rpcserver: copy success variable of channel close update
...
Seems this was forgotten in a refactor a while back.
2022-04-12 19:30:11 +02:00
Oliver Gugger
1ad667908e
Merge pull request #6393 from hitanshu-mehta/fix-typo
...
Docs: fix typos in sample-lnd.conf and chanfitness/chanevent.go
2022-04-12 18:34:44 +02:00
Oliver Gugger
8047f2388e
Merge pull request #6212 from bottlepay/interceptor-check
...
htlcswitch: interceptor expiry check
2022-04-12 09:55:55 +02:00
Oliver Gugger
e13e5f874f
cmd/lncli: fix linter issues after contributor PR [skip ci]
2022-04-11 18:02:42 +02:00
Oliver Gugger
65dc3ef8a6
Merge pull request #6349 from gabbyprecious/unlock-error-message#2529
...
change changepassword and unlock error message
2022-04-11 17:05:33 +02:00
Oliver Gugger
8109c9ccf1
Merge pull request #6392 from C-Otto/fix-typo
...
rpcperms: fix typo
2022-04-04 23:47:55 +02:00
Oliver Gugger
0f858958f9
Merge pull request #6373 from hsjoberg/macos-makefile
...
mobile: Add macos and apple Makefile tasks
2022-04-01 12:35:57 +02:00
Oliver Gugger
359ef6a821
Merge pull request #6376 from ellemouton/useTCPResolverForAllInterfacesAddr
...
lncfg: normal TCP resolution for the all-interfaces IP
2022-03-31 14:46:38 +02:00
Oliver Gugger
8072b20d54
Merge pull request #6380 from guggero/websocket-proxy-race-fix
...
lnrpc: fix websocket proxy data race
2022-03-30 18:13:55 +02:00
Oliver Gugger
de9d3096c0
docs: add release notes
2022-03-30 17:03:45 +02:00
Oliver Gugger
40358d406d
lnrpc: fix websocket proxy data race
...
Was discovered in a race unit test in lightning node connect that uses
the websocket proxy to connect to the hashmail server on the client
side.
By not shadowing the err variable we end up reading and writing to the
same variable from two different goroutines, which causes the data race.
2022-03-30 17:03:30 +02:00
Oliver Gugger
6275a78c79
Merge pull request #6379 from guggero/wallet-default-scopes
...
btcwallet: always make sure default scopes exist
2022-03-30 13:35:59 +02:00
Oliver Gugger
ba83c11a6f
Merge pull request #6346 from thinkmassive/docker-tag-master
...
github: re-add rolling tag 'daily-testing-only'
2022-03-30 12:53:37 +02:00
Oliver Gugger
28a99fc2a2
docs: add release notes
2022-03-30 12:50:16 +02:00
Oliver Gugger
485d8f043d
btcwallet: always make sure default scopes exist
...
If new default scopes are added to the underlying btcwallet
implementation, then they aren't automatically created for _existing_
wallets, only for new ones. So on startup we need to make sure all
scopes are present.
2022-03-30 12:50:16 +02:00
Oliver Gugger
5fd9df3b6e
Merge pull request #6383 from Roasbeef/update-btcutil-psbt-fix
...
build: update to latest btcutil/psbt version
2022-03-30 12:41:14 +02:00
Oliver Gugger
6e2214fd0f
Merge pull request #6365 from antonilol/some_typos
...
fix some typos
2022-03-28 09:23:43 +02:00
Oliver Gugger
f500892681
docs: add release notes
2022-03-24 18:02:40 +01:00
Oliver Gugger
3b5585c12b
multi: fix and test v1 output spend ntfns
...
Because Taproot key spend only spends don't allow us to re-construct the
spent pkScript from the witness alone, we cannot support registering
spend notifications for v1 pkScripts only. We instead require the
outpoint to be specified. This commit makes it possible to only match by
outpoint and also adds an itest for it.
2022-03-24 18:02:40 +01:00
Oliver Gugger
ef98f2df8a
multi: add p2tr tapscript key path signing capabilities
2022-03-24 18:02:39 +01:00
Oliver Gugger
78db46be7e
multi: add p2tr tapscript signing capabilities
2022-03-24 18:02:39 +01:00
Oliver Gugger
5109c55721
itest: assert P2TR on-chain fund recovery
2022-03-24 18:02:38 +01:00
Oliver Gugger
108f49f23b
input+signer: test wallet script import
2022-03-24 18:02:38 +01:00
Oliver Gugger
c73cf03a55
multi: add p2tr keyspend wallet support
2022-03-24 18:02:38 +01:00
Oliver Gugger
f130eddb92
multi: use prev output fetcher where possible
2022-03-24 18:02:37 +01:00
Oliver Gugger
72c9582b85
multi: bump btcd to taproot aware version
2022-03-24 15:00:25 +01:00
Oliver Gugger
0dcaa511a2
Merge pull request #6341 from guggero/remote-signer-signoutputraw
...
remote signer: fix SignOutputRaw RPC for incomplete key info, fix healthcheck connection leak
2022-03-24 14:59:38 +01:00
Oliver Gugger
0f4e691d4d
docs: add release notes
2022-03-24 14:13:06 +01:00
Oliver Gugger
8c44da225a
rpcwallet: fix RPC wallet health check connection leak
...
Fixes #6329 .
This commit fixes a connection leak in the RPC wallet's health check. By
not closing the test connection the watch-only node would slowly stack
up connections and eventually hit the ulimit.
2022-03-24 14:13:06 +01:00
Oliver Gugger
42b0aa9a8e
rpcwallet+itest: fix incomplete key info problem
...
Fixes an issue with SignOutputRaw in remote signing mode where we
weren't able to sign on the remote signer if we only provided the public
key or only the family/index (and not both).
Fixes part of an issue detected in lightninglabs/loop#457 .
2022-03-24 14:13:05 +01:00
Oliver Gugger
5bf9b710fc
config_builder+rpcwallet: add full net params
...
As a preparation for parsing addresses, we need the full network
parameters and not just the coin type in the RPC wallet.
2022-03-24 14:13:05 +01:00
Oliver Gugger
efa36ce8f2
lntest+lnwallet: add AddressInfo to WalletController
...
We need to be able to query the watch-only wallet about a public key
when trying to sign with a key that we don't know the family or index
of. The easiest way to do that is to leverage the wallet's address index
to query the derivation path for a public key.
To give the RPC wallet access to that functionality, we need to expose
the method on the WalletController interface.
2022-03-24 14:13:05 +01:00
Oliver Gugger
e86a0ba197
itest: add new test for SignOutputRaw RPC
2022-03-24 14:13:04 +01:00
Oliver Gugger
e77dd4e2fe
Merge pull request #6362 from liviu-ln/fix-forward-interceptor-tests
...
itest: fix node shutdown in interceptor itests
2022-03-24 10:39:41 +01:00
Oliver Gugger
0f2b3c6926
Merge pull request #6186 from yyforyongyu/itest-fix-pending-ticker
...
htlcswitch: fix PendingCommitTicker and make it configurable
2022-03-24 09:59:13 +01:00
Oliver Gugger
56c8b63d36
Merge pull request #6348 from gabbyprecious/macaroon-doc-#5444
...
correct misinformation on default macaroon setup
2022-03-24 09:37:57 +01:00
Oliver Gugger
1670000fd8
walletrpc: add debug log statement for invalid PSBT
...
To help debug remote signing issues, it's helpful to get the raw PSBT
that failed to be parsed. This is necessary since serializing an invalid
PSBT is allowed and the checks only fail when trying to de-serialize
such an invalid packet.
2022-03-24 09:28:27 +01:00
Oliver Gugger
c0a282bc4a
Merge pull request #6353 from bhandras/interceptor-race-fix
...
switch+test: fix race condition in the interceptor unit test
2022-03-23 18:16:13 +01:00
Oliver Gugger
ba99d22f3c
docs: update release notes
2022-03-23 17:46:58 +01:00