diff --git a/cmd/loop/instantout.go b/cmd/loop/instantout.go index 3c3a113e..e299f5e1 100644 --- a/cmd/loop/instantout.go +++ b/cmd/loop/instantout.go @@ -157,8 +157,8 @@ func instantOut(ctx *cli.Context) error { // fee-rates. quote, err := client.InstantOutQuote( context.Background(), &looprpc.InstantOutQuoteRequest{ - Amt: selectedAmt, - NumReservations: int32(len(selectedReservations)), + Amt: selectedAmt, + ReservationIds: selectedReservations, }, ) if err != nil { diff --git a/instantout/manager.go b/instantout/manager.go index 905874fc..4b8567a0 100644 --- a/instantout/manager.go +++ b/instantout/manager.go @@ -218,9 +218,9 @@ type Quote struct { // GetInstantOutQuote returns a quote for an instant out. func (m *Manager) GetInstantOutQuote(ctx context.Context, - amt btcutil.Amount, numReservations int) (Quote, error) { + amt btcutil.Amount, reservationIDs [][]byte) (Quote, error) { - if numReservations <= 0 { + if len(reservationIDs) == 0 { return Quote{}, fmt.Errorf("no reservations selected") } @@ -231,7 +231,8 @@ func (m *Manager) GetInstantOutQuote(ctx context.Context, // Get the service fee. quoteRes, err := m.cfg.InstantOutClient.GetInstantOutQuote( ctx, &swapserverrpc.GetInstantOutQuoteRequest{ - Amount: uint64(amt), + Amount: uint64(amt), + ReservationIds: reservationIDs, }, ) if err != nil { @@ -247,7 +248,7 @@ func (m *Manager) GetInstantOutQuote(ctx context.Context, // The on chain chainFee is the chainFee rate times the estimated // sweepless sweep transaction size. - chainFee := feeRate.FeeForWeight(sweeplessSweepWeight(numReservations)) + chainFee := feeRate.FeeForWeight(sweeplessSweepWeight(len(reservationIDs))) return Quote{ ServiceFee: btcutil.Amount(quoteRes.SwapFee), diff --git a/loopd/swapclient_server.go b/loopd/swapclient_server.go index 8015ef11..e8dbae00 100644 --- a/loopd/swapclient_server.go +++ b/loopd/swapclient_server.go @@ -1446,7 +1446,7 @@ func (s *swapClientServer) InstantOutQuote(ctx context.Context, *looprpc.InstantOutQuoteResponse, error) { quote, err := s.instantOutManager.GetInstantOutQuote( - ctx, btcutil.Amount(req.Amt), int(req.NumReservations), + ctx, btcutil.Amount(req.Amt), req.ReservationIds, ) if err != nil { return nil, err