lnrpc/routerrpc+routing: add new MaxShardAmt field to LightningPayment
This commit is contained in:
parent
c70e53c791
commit
7398e59927
@ -572,6 +572,14 @@ func (r *RouterBackend) extractIntentFromSendRequest(
|
|||||||
}
|
}
|
||||||
payIntent.MaxParts = maxParts
|
payIntent.MaxParts = maxParts
|
||||||
|
|
||||||
|
// If this payment had a max shard amount specified, then we'll apply
|
||||||
|
// that now, which'll force us to always make payment splits smaller
|
||||||
|
// than this.
|
||||||
|
if rpcPayReq.MaxShardSizeMsat > 0 {
|
||||||
|
shardAmtMsat := lnwire.MilliSatoshi(rpcPayReq.MaxShardSizeMsat)
|
||||||
|
payIntent.MaxShardAmt = &shardAmtMsat
|
||||||
|
}
|
||||||
|
|
||||||
// Take fee limit from request.
|
// Take fee limit from request.
|
||||||
payIntent.FeeLimit, err = lnrpc.UnmarshallAmt(
|
payIntent.FeeLimit, err = lnrpc.UnmarshallAmt(
|
||||||
rpcPayReq.FeeLimitSat, rpcPayReq.FeeLimitMsat,
|
rpcPayReq.FeeLimitSat, rpcPayReq.FeeLimitMsat,
|
||||||
|
@ -1684,6 +1684,14 @@ type LightningPayment struct {
|
|||||||
// MaxParts is the maximum number of partial payments that may be used
|
// MaxParts is the maximum number of partial payments that may be used
|
||||||
// to complete the full amount.
|
// to complete the full amount.
|
||||||
MaxParts uint32
|
MaxParts uint32
|
||||||
|
|
||||||
|
// MaxShardAmt is the largest shard that we'll attempt to split using.
|
||||||
|
// If this field is set, and we need to split, rather than attempting
|
||||||
|
// half of the original payment amount, we'll use this value if half
|
||||||
|
// the payment amount is greater than it.
|
||||||
|
//
|
||||||
|
// NOTE: This field is _optional_.
|
||||||
|
MaxShardAmt *lnwire.MilliSatoshi
|
||||||
}
|
}
|
||||||
|
|
||||||
// SendPayment attempts to send a payment as described within the passed
|
// SendPayment attempts to send a payment as described within the passed
|
||||||
|
Loading…
Reference in New Issue
Block a user