lncli addholdinvoice: allow specifying msat with --amt_msat

* pass amt and amt_msat to rpc, letting server give an error if both
are present
* take amt from an extra argument if neither amt nor amt_ms are present
This commit is contained in:
Anton Kovalenko 2019-11-20 18:19:50 +03:00
parent b1e6d9c5cf
commit 298f35cdfb

@ -160,6 +160,10 @@ var addHoldInvoiceCommand = cli.Command{
Name: "amt",
Usage: "the amt of satoshis in this invoice",
},
cli.Int64Flag{
Name: "amt_msat",
Usage: "the amt of millisatoshis in this invoice",
},
cli.StringFlag{
Name: "description_hash",
Usage: "SHA-256 hash of the description of the payment. " +
@ -192,7 +196,6 @@ var addHoldInvoiceCommand = cli.Command{
func addHoldInvoice(ctx *cli.Context) error {
var (
descHash []byte
amt int64
err error
)
@ -212,12 +215,11 @@ func addHoldInvoice(ctx *cli.Context) error {
args = args.Tail()
switch {
case ctx.IsSet("amt"):
amt = ctx.Int64("amt")
case args.Present():
amt, err = strconv.ParseInt(args.First(), 10, 64)
amt := ctx.Int64("amt")
amtMsat := ctx.Int64("amt_msat")
if !ctx.IsSet("amt") && !ctx.IsSet("amt_msat") && args.Present() {
amt, err = strconv.ParseInt(args.First(), 10, 64)
if err != nil {
return fmt.Errorf("unable to decode amt argument: %v", err)
}
@ -236,6 +238,7 @@ func addHoldInvoice(ctx *cli.Context) error {
Memo: ctx.String("memo"),
Hash: hash,
Value: amt,
ValueMsat: amtMsat,
DescriptionHash: descHash,
FallbackAddr: ctx.String("fallback_addr"),
Expiry: ctx.Int64("expiry"),