Add codecov.yml allowing coverage to drop slightly before "failing"
[rust-lightning] / lightning-c-bindings / src / util / events.rs
index db8ac33f8f60fbee426aa72a2e64a6d00f0746d9..52893679e4d5d3a14d19f45751f9bf6ed5e5c41b 100644 (file)
@@ -100,7 +100,7 @@ impl Event {
                                let mut funding_txo_nonref = (*funding_txo).clone();
                                let mut user_channel_id_nonref = (*user_channel_id).clone();
                                nativeEvent::FundingBroadcastSafe {
-                                       funding_txo: *unsafe { Box::from_raw(funding_txo_nonref.take_ptr()) },
+                                       funding_txo: *unsafe { Box::from_raw(funding_txo_nonref.take_inner()) },
                                        user_channel_id: user_channel_id_nonref,
                                }
                        },
@@ -157,7 +157,7 @@ impl Event {
                        },
                        Event::FundingBroadcastSafe {mut funding_txo, mut user_channel_id, } => {
                                nativeEvent::FundingBroadcastSafe {
-                                       funding_txo: *unsafe { Box::from_raw(funding_txo.take_ptr()) },
+                                       funding_txo: *unsafe { Box::from_raw(funding_txo.take_inner()) },
                                        user_channel_id: user_channel_id,
                                }
                        },
@@ -249,7 +249,7 @@ impl Event {
                        },
                        nativeEvent::SpendableOutputs {ref outputs, } => {
                                let mut outputs_nonref = (*outputs).clone();
-                               let mut local_outputs_nonref = Vec::new(); for item in outputs_nonref.drain(..) { local_outputs_nonref.push( { crate::chain::keysinterface::SpendableOutputDescriptor::native_into(item) }); };
+                               let mut local_outputs_nonref = Vec::new(); for mut item in outputs_nonref.drain(..) { local_outputs_nonref.push( { crate::chain::keysinterface::SpendableOutputDescriptor::native_into(item) }); };
                                Event::SpendableOutputs {
                                        outputs: local_outputs_nonref.into(),
                                }
@@ -298,7 +298,7 @@ impl Event {
                                }
                        },
                        nativeEvent::SpendableOutputs {mut outputs, } => {
-                               let mut local_outputs = Vec::new(); for item in outputs.drain(..) { local_outputs.push( { crate::chain::keysinterface::SpendableOutputDescriptor::native_into(item) }); };
+                               let mut local_outputs = Vec::new(); for mut item in outputs.drain(..) { local_outputs.push( { crate::chain::keysinterface::SpendableOutputDescriptor::native_into(item) }); };
                                Event::SpendableOutputs {
                                        outputs: local_outputs.into(),
                                }
@@ -308,6 +308,14 @@ impl Event {
 }
 #[no_mangle]
 pub extern "C" fn Event_free(this_ptr: Event) { }
+#[no_mangle]
+pub extern "C" fn Event_clone(orig: &Event) -> Event {
+       orig.clone()
+}
+#[no_mangle]
+pub extern "C" fn Event_write(obj: &Event) -> crate::c_types::derived::CVec_u8Z {
+       crate::c_types::serialize_obj(&unsafe { &*obj }.to_native())
+}
 /// An event generated by ChannelManager which indicates a message should be sent to a peer (or
 /// broadcast to most peers).
 /// These events are handled by PeerManager::process_events if you are using a PeerManager.
@@ -403,6 +411,17 @@ pub enum MessageSendEvent {
        PaymentFailureNetworkUpdate {
                update: crate::ln::msgs::HTLCFailChannelUpdate,
        },
+       /// Query a peer for channels with funding transaction UTXOs in a block range.
+       SendChannelRangeQuery {
+               node_id: crate::c_types::PublicKey,
+               msg: crate::ln::msgs::QueryChannelRange,
+       },
+       /// Request routing gossip messages from a peer for a list of channels identified by
+       /// their short_channel_ids.
+       SendShortIdsQuery {
+               node_id: crate::c_types::PublicKey,
+               msg: crate::ln::msgs::QueryShortChannelIds,
+       },
 }
 use lightning::util::events::MessageSendEvent as nativeMessageSendEvent;
 impl MessageSendEvent {
@@ -414,7 +433,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendAcceptChannel {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendOpenChannel {ref node_id, ref msg, } => {
@@ -422,7 +441,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendOpenChannel {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingCreated {ref node_id, ref msg, } => {
@@ -430,7 +449,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendFundingCreated {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingSigned {ref node_id, ref msg, } => {
@@ -438,7 +457,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendFundingSigned {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingLocked {ref node_id, ref msg, } => {
@@ -446,7 +465,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendFundingLocked {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendAnnouncementSignatures {ref node_id, ref msg, } => {
@@ -454,7 +473,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendAnnouncementSignatures {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::UpdateHTLCs {ref node_id, ref updates, } => {
@@ -462,7 +481,7 @@ impl MessageSendEvent {
                                let mut updates_nonref = (*updates).clone();
                                nativeMessageSendEvent::UpdateHTLCs {
                                        node_id: node_id_nonref.into_rust(),
-                                       updates: *unsafe { Box::from_raw(updates_nonref.take_ptr()) },
+                                       updates: *unsafe { Box::from_raw(updates_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendRevokeAndACK {ref node_id, ref msg, } => {
@@ -470,7 +489,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendRevokeAndACK {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendClosingSigned {ref node_id, ref msg, } => {
@@ -478,7 +497,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendClosingSigned {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendShutdown {ref node_id, ref msg, } => {
@@ -486,7 +505,7 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendShutdown {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendChannelReestablish {ref node_id, ref msg, } => {
@@ -494,27 +513,27 @@ impl MessageSendEvent {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::SendChannelReestablish {
                                        node_id: node_id_nonref.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastChannelAnnouncement {ref msg, ref update_msg, } => {
                                let mut msg_nonref = (*msg).clone();
                                let mut update_msg_nonref = (*update_msg).clone();
                                nativeMessageSendEvent::BroadcastChannelAnnouncement {
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
-                                       update_msg: *unsafe { Box::from_raw(update_msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
+                                       update_msg: *unsafe { Box::from_raw(update_msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastNodeAnnouncement {ref msg, } => {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::BroadcastNodeAnnouncement {
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastChannelUpdate {ref msg, } => {
                                let mut msg_nonref = (*msg).clone();
                                nativeMessageSendEvent::BroadcastChannelUpdate {
-                                       msg: *unsafe { Box::from_raw(msg_nonref.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
                                }
                        },
                        MessageSendEvent::HandleError {ref node_id, ref action, } => {
@@ -531,6 +550,22 @@ impl MessageSendEvent {
                                        update: update_nonref.into_native(),
                                }
                        },
+                       MessageSendEvent::SendChannelRangeQuery {ref node_id, ref msg, } => {
+                               let mut node_id_nonref = (*node_id).clone();
+                               let mut msg_nonref = (*msg).clone();
+                               nativeMessageSendEvent::SendChannelRangeQuery {
+                                       node_id: node_id_nonref.into_rust(),
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
+                               }
+                       },
+                       MessageSendEvent::SendShortIdsQuery {ref node_id, ref msg, } => {
+                               let mut node_id_nonref = (*node_id).clone();
+                               let mut msg_nonref = (*msg).clone();
+                               nativeMessageSendEvent::SendShortIdsQuery {
+                                       node_id: node_id_nonref.into_rust(),
+                                       msg: *unsafe { Box::from_raw(msg_nonref.take_inner()) },
+                               }
+                       },
                }
        }
        #[allow(unused)]
@@ -539,83 +574,83 @@ impl MessageSendEvent {
                        MessageSendEvent::SendAcceptChannel {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendAcceptChannel {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendOpenChannel {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendOpenChannel {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingCreated {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendFundingCreated {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingSigned {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendFundingSigned {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendFundingLocked {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendFundingLocked {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendAnnouncementSignatures {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendAnnouncementSignatures {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::UpdateHTLCs {mut node_id, mut updates, } => {
                                nativeMessageSendEvent::UpdateHTLCs {
                                        node_id: node_id.into_rust(),
-                                       updates: *unsafe { Box::from_raw(updates.take_ptr()) },
+                                       updates: *unsafe { Box::from_raw(updates.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendRevokeAndACK {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendRevokeAndACK {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendClosingSigned {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendClosingSigned {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendShutdown {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendShutdown {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::SendChannelReestablish {mut node_id, mut msg, } => {
                                nativeMessageSendEvent::SendChannelReestablish {
                                        node_id: node_id.into_rust(),
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastChannelAnnouncement {mut msg, mut update_msg, } => {
                                nativeMessageSendEvent::BroadcastChannelAnnouncement {
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
-                                       update_msg: *unsafe { Box::from_raw(update_msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
+                                       update_msg: *unsafe { Box::from_raw(update_msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastNodeAnnouncement {mut msg, } => {
                                nativeMessageSendEvent::BroadcastNodeAnnouncement {
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::BroadcastChannelUpdate {mut msg, } => {
                                nativeMessageSendEvent::BroadcastChannelUpdate {
-                                       msg: *unsafe { Box::from_raw(msg.take_ptr()) },
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
                                }
                        },
                        MessageSendEvent::HandleError {mut node_id, mut action, } => {
@@ -629,6 +664,18 @@ impl MessageSendEvent {
                                        update: update.into_native(),
                                }
                        },
+                       MessageSendEvent::SendChannelRangeQuery {mut node_id, mut msg, } => {
+                               nativeMessageSendEvent::SendChannelRangeQuery {
+                                       node_id: node_id.into_rust(),
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
+                               }
+                       },
+                       MessageSendEvent::SendShortIdsQuery {mut node_id, mut msg, } => {
+                               nativeMessageSendEvent::SendShortIdsQuery {
+                                       node_id: node_id.into_rust(),
+                                       msg: *unsafe { Box::from_raw(msg.take_inner()) },
+                               }
+                       },
                }
        }
        #[allow(unused)]
@@ -756,6 +803,22 @@ impl MessageSendEvent {
                                        update: crate::ln::msgs::HTLCFailChannelUpdate::native_into(update_nonref),
                                }
                        },
+                       nativeMessageSendEvent::SendChannelRangeQuery {ref node_id, ref msg, } => {
+                               let mut node_id_nonref = (*node_id).clone();
+                               let mut msg_nonref = (*msg).clone();
+                               MessageSendEvent::SendChannelRangeQuery {
+                                       node_id: crate::c_types::PublicKey::from_rust(&node_id_nonref),
+                                       msg: crate::ln::msgs::QueryChannelRange { inner: Box::into_raw(Box::new(msg_nonref)), is_owned: true },
+                               }
+                       },
+                       nativeMessageSendEvent::SendShortIdsQuery {ref node_id, ref msg, } => {
+                               let mut node_id_nonref = (*node_id).clone();
+                               let mut msg_nonref = (*msg).clone();
+                               MessageSendEvent::SendShortIdsQuery {
+                                       node_id: crate::c_types::PublicKey::from_rust(&node_id_nonref),
+                                       msg: crate::ln::msgs::QueryShortChannelIds { inner: Box::into_raw(Box::new(msg_nonref)), is_owned: true },
+                               }
+                       },
                }
        }
        #[allow(unused)]
@@ -854,11 +917,27 @@ impl MessageSendEvent {
                                        update: crate::ln::msgs::HTLCFailChannelUpdate::native_into(update),
                                }
                        },
+                       nativeMessageSendEvent::SendChannelRangeQuery {mut node_id, mut msg, } => {
+                               MessageSendEvent::SendChannelRangeQuery {
+                                       node_id: crate::c_types::PublicKey::from_rust(&node_id),
+                                       msg: crate::ln::msgs::QueryChannelRange { inner: Box::into_raw(Box::new(msg)), is_owned: true },
+                               }
+                       },
+                       nativeMessageSendEvent::SendShortIdsQuery {mut node_id, mut msg, } => {
+                               MessageSendEvent::SendShortIdsQuery {
+                                       node_id: crate::c_types::PublicKey::from_rust(&node_id),
+                                       msg: crate::ln::msgs::QueryShortChannelIds { inner: Box::into_raw(Box::new(msg)), is_owned: true },
+                               }
+                       },
                }
        }
 }
 #[no_mangle]
 pub extern "C" fn MessageSendEvent_free(this_ptr: MessageSendEvent) { }
+#[no_mangle]
+pub extern "C" fn MessageSendEvent_clone(orig: &MessageSendEvent) -> MessageSendEvent {
+       orig.clone()
+}
 /// A trait indicating an object may generate message send events
 #[repr(C)]
 pub struct MessageSendEventsProvider {