@@ -451,6 +451,7 @@ completed.
451
451
1 . type: 0 (` funding_output_contribution ` )
452
452
2 . data:
453
453
* [ ` s64 ` :` satoshis ` ]
454
+ 1 . type: 2 (` require_confirmed_inputs ` )
454
455
455
456
#### Requirements
456
457
@@ -459,13 +460,17 @@ The sender:
459
460
of the previously constructed transaction, rounded down.
460
461
- If it contributes to the transaction's funding output:
461
462
- MUST set ` funding_output_contribution `
463
+ - If it requires the receiving node to only use confirmed inputs:
464
+ - MUST set ` require_confirmed_inputs `
462
465
463
466
The recipient:
464
467
- MUST respond either with ` tx_abort ` or with ` tx_ack_rbf `
465
468
- MUST respond with ` tx_abort ` if:
466
469
- the ` feerate ` is not greater than or equal to 25/24 times ` feerate `
467
470
of the last successfully constructed transaction
468
471
- MAY send ` tx_abort ` for any reason
472
+ - MUST fail the negotiation if:
473
+ - ` require_confirmed_inputs ` is set but it cannot provide confirmed inputs
469
474
470
475
#### Rationale
471
476
@@ -492,21 +497,27 @@ not contributing to the funding output.
492
497
* [ ` channel_id ` :` channel_id ` ]
493
498
* [ ` tx_ack_rbf_tlvs ` :` tlvs ` ]
494
499
500
+
495
501
1 . ` tlv_stream ` : ` tx_ack_rbf_tlvs `
496
502
2 . types:
497
503
1 . type: 0 (` funding_output_contribution ` )
498
504
2 . data:
499
505
* [ ` s64 ` :` satoshis ` ]
506
+ 1 . type: 2 (` require_confirmed_inputs ` )
500
507
501
508
#### Requirements
502
509
503
510
The sender:
504
511
- If it contributes to the transaction's funding output:
505
512
- MUST set ` funding_output_contribution `
513
+ - If it requires the receiving node to only use confirmed inputs:
514
+ - MUST set ` require_confirmed_inputs `
506
515
507
516
The recipient:
508
517
- MUST respond with ` tx_abort ` or with a ` tx_add_input ` message,
509
518
restarting the interactive tx collaboration protocol.
519
+ - MUST fail the negotiation if:
520
+ - ` require_confirmed_inputs ` is set but it cannot provide confirmed inputs
510
521
511
522
#### Rationale
512
523
@@ -1286,7 +1297,8 @@ protocol, with the following additional caveats.
1286
1297
##### Requirements
1287
1298
1288
1299
The sending node:
1289
- - if the receiver set ` require_confirmed_inputs ` in ` open_channel2 ` or ` accept_channel2 ` :
1300
+ - if the receiver set ` require_confirmed_inputs ` in ` open_channel2 ` ,
1301
+ ` accept_channel2 ` , ` tx_init_rbf ` or ` tx_ack_rbf ` :
1290
1302
- MUST NOT send a ` tx_add_input ` that contains an unconfirmed input
1291
1303
1292
1304
#### The ` tx_add_output ` Message
@@ -1318,7 +1330,8 @@ Upon receipt of consecutive `tx_complete`s, the receiving node:
1318
1330
successfully negotiated transaction's fees
1319
1331
- the transaction does not share at least one input with
1320
1332
each previous funding transaction
1321
- - if it has sent ` require_confirmed_inputs ` in ` open_channel2 ` or ` accept_channel2 ` :
1333
+ - if it has sent ` require_confirmed_inputs ` in ` open_channel2 ` ,
1334
+ ` accept_channel2 ` , ` tx_init_rbf ` or ` tx_ack_rbf ` :
1322
1335
- MUST fail the negotiation if:
1323
1336
- one of the inputs added by the other peer is unconfirmed
1324
1337
0 commit comments