@@ -489,6 +489,14 @@ pub enum HTLCDestination {
489489 /// Short channel id we are requesting to forward an HTLC to.
490490 requested_forward_scid : u64
491491 } ,
492+ /// We couldn't forward to the next Trampoline node. That may happen if we cannot find a route,
493+ /// or if the route we found didn't work out
494+ FailedTrampolineForward {
495+ /// The node ID of the next Trampoline hop we tried forwarding to
496+ requested_next_node_id : PublicKey ,
497+ /// The channel we tried forwarding over, if we have settled on one
498+ forward_scid : Option < u64 > ,
499+ } ,
492500 /// We couldn't decode the incoming onion to obtain the forwarding details.
493501 InvalidOnion ,
494502 /// Failure scenario where an HTLC may have been forwarded to be intended for us,
@@ -522,6 +530,10 @@ impl_writeable_tlv_based_enum_upgradable!(HTLCDestination,
522530 ( 4 , FailedPayment ) => {
523531 ( 0 , payment_hash, required) ,
524532 } ,
533+ ( 5 , FailedTrampolineForward ) => {
534+ ( 0 , requested_next_node_id, required) ,
535+ ( 2 , forward_scid, option) ,
536+ } ,
525537) ;
526538
527539/// Will be used in [`Event::HTLCIntercepted`] to identify the next hop in the HTLC's path.
0 commit comments