Commit Graph

18397 Commits

Author SHA1 Message Date
a404f34646 multimutex: add unit tests 2025-03-24 00:40:35 -03:00
de1ed93f52 Merge pull request #9601 from bitromortac/2503-neutrino-maxpeers
lnd: pass through neutrino MaxPeers config
2025-03-18 16:41:39 -06:00
a93ec3b01a lnd: pass through neutrino MaxPeers config
This enables users to set the config. We check that the currently set
value of MaxPeers is non-zero.
2025-03-18 17:55:20 +01:00
c292acfe74 Merge pull request #9605 from yyforyongyu/fix-unlock-wallet
cmd: fix error parsed from status
2025-03-18 11:37:35 -05:00
3e8339cebc Merge pull request #9606 from bhandras/skip-migration-rename
config: rename skip-sql-invoice-migration to skip-native-sql-migration
2025-03-18 13:56:45 +01:00
55595954ad config: rename skip-sql-invoice-migration to skip-native-sql-migration
In future releases we will use this flag to make potentially failing kv
to native SQL migrations optional. For this reason it is better to
rename it to avoid confusion.
2025-03-17 16:45:18 +01:00
e62aa7d43a docs: update release notes 2025-03-17 22:59:56 +08:00
2d6148291f cmd: fix error parsed from status
The `codes.Unimplemented` is only returned when the RPCs are not built.
When the wallet is in an unexpected state, `codes.Unknown` is returned
instead, so we need to catch it properly to make sure we return the
right error msg.
2025-03-17 22:59:56 +08:00
053d63e110 Merge pull request #9546 from hieblmi/macaroon-ip-cidr-constraint
macaroons: ip range constraint
2025-03-14 10:22:43 -06:00
c4a77d1b1c Merge pull request #9502 from guggero/bandwidth-manager-fix
routing: don't set custom amount if manager isn't handling
2025-03-13 13:42:51 -06:00
0044975293 docs: add release notes 2025-03-13 12:27:07 -05:00
dac5de5ce9 htlcswitch+routing: return IsHandled from AuxBandwidth
To make it more clear whether the external traffic shaper is handling a
channel or not, we return an explicit boolean.
2025-03-13 12:26:50 -05:00
bef0268e07 docs: update release notes 2025-03-13 09:57:41 -05:00
1681be6d65 lncli: ip range caveat for macaroons 2025-03-13 09:57:41 -05:00
26a4562263 itest: test for ip range checks for macaroons 2025-03-13 09:57:41 -05:00
ea9a5a2a71 macaroons: add ip range checker 2025-03-13 09:57:39 -05:00
6531d45050 Merge pull request #9458 from Crypt-iQ/banning_010072025
multi+server.go: add initial permissions for some peers
2025-03-12 08:14:31 -06:00
6309b8a0f4 release-notes: update for 0.19.0 2025-03-11 20:42:35 -04:00
a4acfcb0ef sample-lnd.conf: update for num-restricted-slots 2025-03-11 20:42:35 -04:00
d5ecad3834 itest: new test to check server access perms 2025-03-11 20:42:35 -04:00
68ec766b61 funding+server.go: modify notifications to pass through server
This modifies the various channelnotifier notification functions
to instead hit the server and then call the notification routine.
This allows us to accurately modify the server's maps.
2025-03-11 20:42:35 -04:00
6eb746fbba server.go+accessman.go: introduce caches for access permissions
Here we introduce the access manager which has caches that will
determine the access control status of our peers. Peers that have
had their funding transaction confirm with us are protected. Peers
that only have pending-open channels with us are temporary access
and can have their access revoked. The rest of the peers are granted
restricted access.
2025-03-11 20:42:34 -04:00
4cfc92f420 channelnotifier: add FundingTimeout and NotifyFundingTimeout
This signal will be used in the server.go code to potentially
demote temporary-access peers to restricted-access peers.
2025-03-11 20:42:34 -04:00
15f17633aa channeldb: FetchPermAndTempPeers to load access perms on startup
We introduce a new func FetchPermAndTempPeers that returns two maps.
The first map indicates the nodes that will have "protected" access
to the server. The second map indicates the nodes that have
"temporary" access to the server. This will be used in a future
commit in the server.go code.
2025-03-11 20:42:34 -04:00
5d8309ea6b Merge pull request #9596 from JoeGruffins/testingbtcwalletchange
deps: Update btcwallet to v0.16.10.
2025-03-11 11:31:25 -06:00
04c76101dd Merge pull request #9595 from yyforyongyu/fix-gossip-syncer
multi: fix flakes and gossip syncer
tor/v1.1.6
2025-03-11 09:33:05 -06:00
c8d032afa9 deps: Update btcwallet to v0.16.10. 2025-03-11 11:11:29 +09:00
a673826dee Merge pull request #9563 from yyforyongyu/fix-unit-test
chanbackup: fix test flake in `TestUpdateAndSwap`
2025-03-10 16:01:57 -06:00
97bba57520 Merge pull request #9597 from guggero/rebase-fix
contractcourt: fix rebase issue with removed variadic option
2025-03-10 15:46:51 -06:00
0e9b7c5fa2 contractcourt: fix rebase issue with removed variadic option
The optional variadic functional parameters probably got lost during a
rebase.
2025-03-10 21:52:02 +01:00
faf8ce161a docs: update release notes 2025-03-10 17:03:00 +08:00
d0abfbbaff itest: remove redundant resume action
Removed a redundant resume action found in
`testForwardInterceptorRestart`, which was put there likely due to a
mistake.
2025-03-10 16:58:16 +08:00
51daa13cd7 routerrpc: improve logging in forwardInterceptor 2025-03-10 16:58:16 +08:00
37799b95b7 discovery: fix state transition in GossipSyncer
Previously, we would set the state of the syncer after sending the msg,
which has the following flow,

1. In state `queryNewChannels`, we send the msg `QueryShortChanIDs`.
2. Once the msg is sent, we change to state `waitingQueryChanReply`.

But there's no guarantee the remote won't reply back inbetween the two
step. When that happens, our syncer would still be in state
`queryNewChannels`, causing the following error,
```
[ERR] DISC gossiper.go:873: Process query msg from peer [Alice] got unexpected msg *lnwire.ReplyShortChanIDsEnd received in state queryNewChannels
```

To fix it, we now make sure the state is updated before sending the msg.
2025-03-10 16:58:16 +08:00
4d05730c79 tor: fix msg order in TestReconnectSucceed 2025-03-10 16:58:16 +08:00
76ade177af chanbackup: fix test flake in TestUpdateAndSwap
To make it easier to debug, we break the old test into smaller ones and
fix a flake caused by uncleaned test dir.
2025-03-09 13:41:22 +08:00
b21b1e3acb Merge pull request #9592 from guggero/tor-update
mod: bump tor submodule to v1.1.5 to fix flake
2025-03-07 16:21:03 -08:00
342a75891c mod: bump tor submodule to v1.1.5 to fix flake
After merging #9581, the flake in the coverage unit test should be gone.
All we have to do is update the submodule version to the fixed one
(since during unit tests the module is used not the physical directory
on disk).
2025-03-07 19:39:00 +01:00
d5a7e8957f Merge pull request #9581 from yyforyongyu/fix-TestReconnectSucceed
tor: fix `TestReconnectSucceed`
tor/v1.1.5
2025-03-07 12:37:19 -06:00
115b452abe Merge pull request #9562 from NishantBansal2003/test-num-block-fund
Make MaxWaitNumBlocksFundingConf Configurable for itest
2025-03-07 12:35:30 -06:00
ab2dc09eb7 Merge pull request #9582 from yyforyongyu/flake-doc
itest: properly document the known flakes
2025-03-07 10:37:14 -06:00
9a9086b26f docs: add release notes.
Signed-off-by: Nishant Bansal <nishant.bansal.282003@gmail.com>
2025-03-07 21:33:15 +05:30
4569c07e08 multi: Add itest for funding timeout
This commit adds an integration test that
verifies the funding timeout behavior in the
funding manager, in dev/integration test.
Signed-off-by: Nishant Bansal <nishant.bansal.282003@gmail.com>
2025-03-07 21:32:38 +05:30
a5f54d1d6b Merge pull request #9573 from ellemouton/checkUpdateStalenessBeforeRateLimit
discovery: obtain channelMtx before doing any DB calls in `handleChannelUpdate`
2025-03-07 04:17:00 -06:00
76808a81a0 Merge pull request #9587 from guggero/mining-block-limit-configurable
lntest: make mining block limit configurable
2025-03-07 02:57:29 -06:00
25c83104b7 lntest: make mining block limit configurable
Nudging test authors towards not mining too many blocks makes sense,
especially in lnd where we have a lot of integration tests.
But the lntest package is also used in other projects where this
restriction might lead to large refactors.
To be able to stage those refactors we also want to allow this limit to
be configurable if lntest is used as a library.
2025-03-07 09:22:51 +01:00
72b570320a Merge pull request #9586 from ellemouton/logConfig
config: only create a sub-log manager if one doesnt already exist
2025-03-07 01:30:02 -06:00
090e687144 config: only create a sub-log manager if one doesnt already exist
The ValidateConfig method needs to account for the caller already having
an initialised build.SubLoggerManager and then should not override it.
2025-03-06 18:02:25 +02:00
7d7e1872c8 Merge pull request #9574 from ellemouton/fixWatcherPanic
lntest: wait for ChanUpdate req to be fully processed before sending another
2025-03-06 09:21:35 -06:00
95569df92e itest: document a flake found on macOS 2025-03-06 22:46:31 +08:00