@@ -209,9 +209,8 @@ pub struct BlindedForward {
209
209
impl PendingHTLCRouting {
210
210
// Used to override the onion failure code and data if the HTLC is blinded.
211
211
fn blinded_failure(&self) -> Option<BlindedFailure> {
212
- // TODO: needs update when we support forwarding blinded HTLCs as non-intro node
213
212
match self {
214
- Self::Forward { blinded: Some(_ ), .. } => Some(BlindedFailure::FromIntroductionNode ),
213
+ Self::Forward { blinded: Some(BlindedForward { failure, .. } ), .. } => Some(*failure ),
215
214
Self::Receive { requires_blinded_error: true, .. } => Some(BlindedFailure::FromBlindedNode),
216
215
_ => None,
217
216
}
@@ -3042,8 +3041,9 @@ where
3042
3041
3043
3042
let is_intro_node_forward = match next_hop {
3044
3043
onion_utils::Hop::Forward {
3045
- // TODO: update this when we support blinded forwarding as non-intro node
3046
- next_hop_data: msgs::InboundOnionPayload::BlindedForward { .. }, ..
3044
+ next_hop_data: msgs::InboundOnionPayload::BlindedForward {
3045
+ intro_node_blinding_point: Some(_), ..
3046
+ }, ..
3047
3047
} => true,
3048
3048
_ => false,
3049
3049
};
@@ -4377,7 +4377,7 @@ where
4377
4377
incoming_packet_shared_secret: incoming_shared_secret,
4378
4378
// Phantom payments are only PendingHTLCRouting::Receive.
4379
4379
phantom_shared_secret: None,
4380
- blinded_failure: blinded.map(|_| BlindedFailure::FromIntroductionNode ),
4380
+ blinded_failure: blinded.map(|b| b.failure ),
4381
4381
});
4382
4382
let next_blinding_point = blinded.and_then(|b| {
4383
4383
let encrypted_tlvs_ss = self.node_signer.ecdh(
0 commit comments