Skip to content

Commit b54a9bc

Browse files
committed
[WIP] Change origin in HTLC messages to be an option
I don't want to use DNL's routing types so I had to just make DNL support None as origin in all commands, which is interesting because DNL does accept option<HtlcSource> for addHtlc command but if you use it, receiveFulfill and all other htlc related functions crash or fail.
1 parent 554c557 commit b54a9bc

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/DotNetLightning.Core/Channel/ChannelTypes.fs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -283,13 +283,13 @@ type ChannelEvent =
283283
| WeAcceptedUpdateAddHTLC of newCommitments: Commitments
284284

285285
| WeAcceptedOperationFulfillHTLC of msg: UpdateFulfillHTLCMsg * newCommitments: Commitments
286-
| WeAcceptedFulfillHTLC of msg: UpdateFulfillHTLCMsg * origin: HTLCSource * htlc: UpdateAddHTLCMsg * newCommitments: Commitments
286+
| WeAcceptedFulfillHTLC of msg: UpdateFulfillHTLCMsg * origin: Option<HTLCSource> * htlc: UpdateAddHTLCMsg * newCommitments: Commitments
287287

288288
| WeAcceptedOperationFailHTLC of msg: UpdateFailHTLCMsg * newCommitments: Commitments
289-
| WeAcceptedFailHTLC of origin: HTLCSource * msg: UpdateAddHTLCMsg * nextCommitments: Commitments
289+
| WeAcceptedFailHTLC of origin: Option<HTLCSource> * msg: UpdateAddHTLCMsg * nextCommitments: Commitments
290290

291291
| WeAcceptedOperationFailMalformedHTLC of msg: UpdateFailMalformedHTLCMsg * newCommitments: Commitments
292-
| WeAcceptedFailMalformedHTLC of origin: HTLCSource * msg: UpdateAddHTLCMsg * newCommitments: Commitments
292+
| WeAcceptedFailMalformedHTLC of origin: Option<HTLCSource> * msg: UpdateAddHTLCMsg * newCommitments: Commitments
293293

294294
| WeAcceptedOperationUpdateFee of msg: UpdateFeeMsg * nextCommitments: Commitments
295295
| WeAcceptedUpdateFee of msg: UpdateFeeMsg * newCommitments: Commitments

src/DotNetLightning.Core/Channel/CommitmentsModule.fs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ module internal Commitments =
137137
match cm.GetHTLCCrossSigned(Direction.Out, msg.HTLCId) with
138138
| Some htlc when htlc.PaymentHash = msg.PaymentPreimage.Hash ->
139139
let commitments = cm.AddRemoteProposal(msg)
140-
let origin = cm.OriginChannels |> Map.find(msg.HTLCId)
140+
let origin = cm.OriginChannels |> Map.tryFind(msg.HTLCId)
141141
[WeAcceptedFulfillHTLC(msg, origin, htlc, commitments)] |> Ok
142142
| Some htlc ->
143143
(htlc.PaymentHash, msg.PaymentPreimage)
@@ -178,7 +178,7 @@ module internal Commitments =
178178
| false, _ ->
179179
msg.HTLCId |> htlcOriginNotKnown
180180
let nextC = cm.AddRemoteProposal(msg)
181-
return [WeAcceptedFailHTLC(o, htlc, nextC)]
181+
return [WeAcceptedFailHTLC(Some o, htlc, nextC)]
182182
}
183183
| None ->
184184
msg.HTLCId |> unknownHTLCId
@@ -216,7 +216,7 @@ module internal Commitments =
216216
| false, _ ->
217217
msg.HTLCId |> htlcOriginNotKnown
218218
let nextC = cm.AddRemoteProposal(msg)
219-
return [WeAcceptedFailMalformedHTLC(o, htlc, nextC)]
219+
return [WeAcceptedFailMalformedHTLC(Some o, htlc, nextC)]
220220
}
221221
| None ->
222222
msg.HTLCId |> unknownHTLCId

0 commit comments

Comments
 (0)