routerrpc: extend HTLC forward interceptor resp with modification fields

This commit extends the forward HTLC intercept response with fields that
can be used in conjunction with a `ResumeModified` action to modify the
intercepted HTLC p2p message.
This commit is contained in:
ffranr authored and Oliver Gugger committed 2024-09-05 11:18:15 +02:00
1 parent abca4b8234
commit fb14d8c96e
7 files changed
+436 -271

No files matched your search

+23 -3
View File
@@ -1474,9 +1474,27 @@
"failure_code": {
"$ref": "#/definitions/FailureFailureCode",
"description": "Return the specified failure code in case the resolve action is Fail. The\nmessage data fields are populated automatically.\n\nIf a non-zero failure_code is specified, failure_message must not be set.\n\nFor backwards-compatibility reasons, TEMPORARY_CHANNEL_FAILURE is the\ndefault value for this field."
},
"in_amount_msat": {
"type": "string",
"format": "uint64",
"description": "The amount that was set on the p2p wire message of the incoming HTLC.\nThis field is ignored if the action is not RESUME_MODIFIED or the amount\nis zero."
},
"out_amount_msat": {
"type": "string",
"format": "uint64",
"description": "The amount to set on the p2p wire message of the resumed HTLC. This field\nis ignored if the action is not RESUME_MODIFIED or the amount is zero."
},
"out_wire_custom_records": {
"type": "object",
"additionalProperties": {
"type": "string",
"format": "byte"
},
"description": "Any custom records that should be set on the p2p wire message message of\nthe resumed HTLC. This field is ignored if the action is not\nRESUME_MODIFIED."
}
},
"description": "*\nForwardHtlcInterceptResponse enables the caller to resolve a previously hold\nforward. The caller can choose either to:\n- `Resume`: Execute the default behavior (usually forward).\n- `Reject`: Fail the htlc backwards.\n- `Settle`: Settle this htlc with a given preimage."
"description": "*\nForwardHtlcInterceptResponse enables the caller to resolve a previously hold\nforward. The caller can choose either to:\n- `Resume`: Execute the default behavior (usually forward).\n- `ResumeModified`: Execute the default behavior (usually forward) with HTLC\nfield modifications.\n- `Reject`: Fail the htlc backwards.\n- `Settle`: Settle this htlc with a given preimage."
},
"routerrpcGetMissionControlConfigResponse": {
"type": "object",
@@ -1763,9 +1781,11 @@
"enum": [
"SETTLE",
"FAIL",
"RESUME"
"RESUME",
"RESUME_MODIFIED"
],
"default": "SETTLE"
"default": "SETTLE",
"description": " - SETTLE: SETTLE is an action that is used to settle an HTLC instead of forwarding\nit.\n - FAIL: FAIL is an action that is used to fail an HTLC backwards.\n - RESUME: RESUME is an action that is used to resume a forward HTLC.\n - RESUME_MODIFIED: RESUME_MODIFIED is an action that is used to resume a hold forward HTLC\nwith modifications specified during interception."
},
"routerrpcRouteFeeRequest": {
"type": "object",