mirror of
https://github.com/lightningnetwork/lnd.git
synced 2024-11-19 01:43:16 +01:00
Merge pull request #8796 from ellemouton/acceptImplicitZeroConf
multi: allow min-depth of zero for non-zero conf channels
This commit is contained in:
commit
71ba355d90
@ -84,6 +84,11 @@
|
||||
[support the TLV onion
|
||||
format](https://github.com/lightningnetwork/lnd/pull/8791).
|
||||
|
||||
* Allow channel fundee to send a [minimum confirmation depth of
|
||||
0](https://github.com/lightningnetwork/lnd/pull/8796) for a non-zero-conf
|
||||
channel. We will still wait for the channel to have at least one confirmation
|
||||
and so the main change here is that we don't error out for such a case.
|
||||
|
||||
## Testing
|
||||
## Database
|
||||
## Code Health
|
||||
|
@ -2020,19 +2020,22 @@ func (f *Manager) funderProcessAcceptChannel(peer lnpeer.Peer,
|
||||
return
|
||||
}
|
||||
|
||||
// Fail early if minimum depth is set to 0 and the channel is not
|
||||
// zero-conf.
|
||||
if !resCtx.reservation.IsZeroConf() && msg.MinAcceptDepth == 0 {
|
||||
err = fmt.Errorf("non-zero-conf channel has min depth zero")
|
||||
log.Warn(err)
|
||||
f.failFundingFlow(peer, cid, err)
|
||||
return
|
||||
// If this is not a zero-conf channel but the peer responded with a
|
||||
// min-depth of zero, we will use our minimum of 1 instead.
|
||||
minDepth := msg.MinAcceptDepth
|
||||
if !resCtx.reservation.IsZeroConf() && minDepth == 0 {
|
||||
log.Infof("Responder to pending_id=%v sent a minimum "+
|
||||
"confirmation depth of 0 for non-zero-conf channel. "+
|
||||
"We will use a minimum depth of 1 instead.",
|
||||
cid.tempChanID)
|
||||
|
||||
minDepth = 1
|
||||
}
|
||||
|
||||
// We'll also specify the responder's preference for the number of
|
||||
// required confirmations, and also the set of channel constraints
|
||||
// they've specified for commitment states we can create.
|
||||
resCtx.reservation.SetNumConfsRequired(uint16(msg.MinAcceptDepth))
|
||||
resCtx.reservation.SetNumConfsRequired(uint16(minDepth))
|
||||
channelConstraints := &channeldb.ChannelConstraints{
|
||||
DustLimit: msg.DustLimit,
|
||||
ChanReserve: msg.ChannelReserve,
|
||||
|
Loading…
Reference in New Issue
Block a user