@@ -6387,11 +6387,23 @@ where
63876387 let _ = handle_error ! ( self , self . internal_open_channel( counterparty_node_id, msg) , * counterparty_node_id) ;
63886388 }
63896389
6390+ fn handle_open_channel_v2 ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: OpenChannelV2 ) {
6391+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6392+ "Dual-funded channels not supported" . to_owned( ) ,
6393+ msg. temporary_channel_id. clone( ) ) ) , * counterparty_node_id) ;
6394+ }
6395+
63906396 fn handle_accept_channel ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: AcceptChannel ) {
63916397 let _persistence_guard = PersistenceNotifierGuard :: notify_on_drop ( & self . total_consistency_lock , & self . persistence_notifier ) ;
63926398 let _ = handle_error ! ( self , self . internal_accept_channel( counterparty_node_id, msg) , * counterparty_node_id) ;
63936399 }
63946400
6401+ fn handle_accept_channel_v2 ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: AcceptChannelV2 ) {
6402+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6403+ "Dual-funded channels not supported" . to_owned( ) ,
6404+ msg. temporary_channel_id. clone( ) ) ) , * counterparty_node_id) ;
6405+ }
6406+
63956407 fn handle_funding_created ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: FundingCreated ) {
63966408 let _persistence_guard = PersistenceNotifierGuard :: notify_on_drop ( & self . total_consistency_lock , & self . persistence_notifier ) ;
63976409 let _ = handle_error ! ( self , self . internal_funding_created( counterparty_node_id, msg) , * counterparty_node_id) ;
@@ -6494,23 +6506,40 @@ where
64946506 } ) ;
64956507 pending_msg_events. retain ( |msg| {
64966508 match msg {
6509+ // V1 Channel Establishment
64976510 & events:: MessageSendEvent :: SendAcceptChannel { .. } => false ,
64986511 & events:: MessageSendEvent :: SendOpenChannel { .. } => false ,
64996512 & events:: MessageSendEvent :: SendFundingCreated { .. } => false ,
65006513 & events:: MessageSendEvent :: SendFundingSigned { .. } => false ,
6514+ // V2 Channel Establishment
6515+ & events:: MessageSendEvent :: SendAcceptChannelV2 { .. } => false ,
6516+ & events:: MessageSendEvent :: SendOpenChannelV2 { .. } => false ,
6517+ // Common Channel Establishment
65016518 & events:: MessageSendEvent :: SendChannelReady { .. } => false ,
65026519 & events:: MessageSendEvent :: SendAnnouncementSignatures { .. } => false ,
6520+ // Interactive Transaction Construction
6521+ & events:: MessageSendEvent :: SendTxAddInput { .. } => false ,
6522+ & events:: MessageSendEvent :: SendTxAddOutput { .. } => false ,
6523+ & events:: MessageSendEvent :: SendTxRemoveInput { .. } => false ,
6524+ & events:: MessageSendEvent :: SendTxRemoveOutput { .. } => false ,
6525+ & events:: MessageSendEvent :: SendTxComplete { .. } => false ,
6526+ & events:: MessageSendEvent :: SendTxSignatures { .. } => false ,
6527+ & events:: MessageSendEvent :: SendTxInitRbf { .. } => false ,
6528+ & events:: MessageSendEvent :: SendTxAckRbf { .. } => false ,
6529+ & events:: MessageSendEvent :: SendTxAbort { .. } => false ,
6530+ // Channel Operations
65036531 & events:: MessageSendEvent :: UpdateHTLCs { .. } => false ,
65046532 & events:: MessageSendEvent :: SendRevokeAndACK { .. } => false ,
65056533 & events:: MessageSendEvent :: SendClosingSigned { .. } => false ,
65066534 & events:: MessageSendEvent :: SendShutdown { .. } => false ,
65076535 & events:: MessageSendEvent :: SendChannelReestablish { .. } => false ,
6536+ & events:: MessageSendEvent :: HandleError { .. } => false ,
6537+ // Gossip
65086538 & events:: MessageSendEvent :: SendChannelAnnouncement { .. } => false ,
65096539 & events:: MessageSendEvent :: BroadcastChannelAnnouncement { .. } => true ,
65106540 & events:: MessageSendEvent :: BroadcastChannelUpdate { .. } => true ,
65116541 & events:: MessageSendEvent :: BroadcastNodeAnnouncement { .. } => true ,
65126542 & events:: MessageSendEvent :: SendChannelUpdate { .. } => false ,
6513- & events:: MessageSendEvent :: HandleError { .. } => false ,
65146543 & events:: MessageSendEvent :: SendChannelRangeQuery { .. } => false ,
65156544 & events:: MessageSendEvent :: SendShortIdsQuery { .. } => false ,
65166545 & events:: MessageSendEvent :: SendReplyChannelRange { .. } => false ,
@@ -6667,6 +6696,60 @@ where
66676696 fn provided_init_features ( & self , _their_init_features : & PublicKey ) -> InitFeatures {
66686697 provided_init_features ( & self . default_configuration )
66696698 }
6699+
6700+ fn handle_tx_add_input ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxAddInput ) {
6701+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6702+ "Dual-funded channels not supported" . to_owned( ) ,
6703+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6704+ }
6705+
6706+ fn handle_tx_add_output ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxAddOutput ) {
6707+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6708+ "Dual-funded channels not supported" . to_owned( ) ,
6709+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6710+ }
6711+
6712+ fn handle_tx_remove_input ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxRemoveInput ) {
6713+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6714+ "Dual-funded channels not supported" . to_owned( ) ,
6715+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6716+ }
6717+
6718+ fn handle_tx_remove_output ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxRemoveOutput ) {
6719+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6720+ "Dual-funded channels not supported" . to_owned( ) ,
6721+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6722+ }
6723+
6724+ fn handle_tx_complete ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxComplete ) {
6725+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6726+ "Dual-funded channels not supported" . to_owned( ) ,
6727+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6728+ }
6729+
6730+ fn handle_tx_signatures ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxSignatures ) {
6731+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6732+ "Dual-funded channels not supported" . to_owned( ) ,
6733+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6734+ }
6735+
6736+ fn handle_tx_init_rbf ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxInitRbf ) {
6737+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6738+ "Dual-funded channels not supported" . to_owned( ) ,
6739+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6740+ }
6741+
6742+ fn handle_tx_ack_rbf ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxAckRbf ) {
6743+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6744+ "Dual-funded channels not supported" . to_owned( ) ,
6745+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6746+ }
6747+
6748+ fn handle_tx_abort ( & self , counterparty_node_id : & PublicKey , msg : & msgs:: TxAbort ) {
6749+ let _: Result < ( ) , _ > = handle_error ! ( self , Err ( MsgHandleErrInternal :: send_err_msg_no_close(
6750+ "Dual-funded channels not supported" . to_owned( ) ,
6751+ msg. channel_id. clone( ) ) ) , * counterparty_node_id) ;
6752+ }
66706753}
66716754
66726755/// Fetches the set of [`NodeFeatures`] flags which are provided by or required by
0 commit comments