mirror of
https://github.com/getAlby/hub.git
synced 2026-08-13 12:33:39 +02:00
feat: add minCltvExpiryDelta for LDK
This commit is contained in:
parent
7543313d60
commit
350b72c297
3 changed files with 23 additions and 6 deletions
2
go.mod
2
go.mod
|
|
@ -7,7 +7,7 @@ require (
|
|||
github.com/btcsuite/btcd v0.24.3-0.20250318170759-4f4ea81776d6
|
||||
github.com/btcsuite/btcd/btcutil v1.1.6
|
||||
github.com/elnosh/gonuts v0.4.2
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260210094439-f4fc56578330
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260325180303-fbe7fe6a114d
|
||||
github.com/go-gormigrate/gormigrate/v2 v2.1.5
|
||||
github.com/labstack/echo/v4 v4.15.1
|
||||
github.com/mattn/go-sqlite3 v1.14.34
|
||||
|
|
|
|||
2
go.sum
2
go.sum
|
|
@ -185,6 +185,8 @@ github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv
|
|||
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260210094439-f4fc56578330 h1:JxzUYE5wn4MA0fF08jra+/hcZ+1uvVvy9luiXimd/tA=
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260210094439-f4fc56578330/go.mod h1:8BRjtKcz8E0RyYTPEbMS8VIdgredcGSLne8vHDtcRLg=
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260325180303-fbe7fe6a114d h1:u7m25pstQSZiDIViKGrIpxnQBu01asJIl25EbzljVtE=
|
||||
github.com/getAlby/ldk-node-go v0.0.0-20260325180303-fbe7fe6a114d/go.mod h1:8BRjtKcz8E0RyYTPEbMS8VIdgredcGSLne8vHDtcRLg=
|
||||
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
|
||||
github.com/go-gormigrate/gormigrate/v2 v2.1.5 h1:1OyorA5LtdQw12cyJDEHuTrEV3GiXiIhS4/QTTa/SM8=
|
||||
github.com/go-gormigrate/gormigrate/v2 v2.1.5/go.mod h1:mj9ekk/7CPF3VjopaFvWKN2v7fN3D9d3eEOAXRhi/+M=
|
||||
|
|
|
|||
|
|
@ -2283,7 +2283,6 @@ func (ls *LDKService) ExecuteCustomNodeCommand(ctx context.Context, command *lnc
|
|||
}
|
||||
|
||||
func (ls *LDKService) MakeHoldInvoice(ctx context.Context, amount int64, description string, descriptionHash string, expiry int64, paymentHash string, minCltvExpiryDelta *uint64) (*lnclient.Transaction, error) {
|
||||
// TODO: Support minCltvExpiryDelta
|
||||
if time.Duration(expiry)*time.Second > maxInvoiceExpiry {
|
||||
return nil, errors.New("expiry is too long")
|
||||
}
|
||||
|
|
@ -2326,10 +2325,26 @@ func (ls *LDKService) MakeHoldInvoice(ctx context.Context, amount int64, descrip
|
|||
|
||||
ldkPaymentHash := ldk_node.PaymentHash(hex.EncodeToString(paymentHash32[:]))
|
||||
|
||||
invoiceObj, err := ls.node.Bolt11Payment().ReceiveForHash(uint64(amount),
|
||||
descriptionType,
|
||||
uint32(expiry),
|
||||
ldkPaymentHash)
|
||||
var invoiceObj *ldk_node.Bolt11Invoice
|
||||
if minCltvExpiryDelta != nil {
|
||||
if *minCltvExpiryDelta > uint64(^uint16(0)) {
|
||||
return nil, errors.New("min_cltv_expiry_delta must be <= 65535")
|
||||
}
|
||||
invoiceObj, err = ls.node.Bolt11Payment().ReceiveForHashWithMinCltvExpiryDelta(
|
||||
uint64(amount),
|
||||
descriptionType,
|
||||
uint32(expiry),
|
||||
ldkPaymentHash,
|
||||
uint16(*minCltvExpiryDelta),
|
||||
)
|
||||
} else {
|
||||
invoiceObj, err = ls.node.Bolt11Payment().ReceiveForHash(
|
||||
uint64(amount),
|
||||
descriptionType,
|
||||
uint32(expiry),
|
||||
ldkPaymentHash,
|
||||
)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
logger.Logger.WithError(err).Error("MakeHoldInvoice failed")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue