]> git.bitcoin.ninja Git - rust-lightning/blobdiff - lightning/src/onion_message/packet.rs
Make the custom message traits cloneable as they're deep in nested structs
[rust-lightning] / lightning / src / onion_message / packet.rs
index ba90c717b34181783506f0ab5018fc15ec8093de..1dbe5706eefdb23791b1b3d70c69fd343c7c35c1 100644 (file)
@@ -117,7 +117,7 @@ pub(super) enum Payload<T: OnionMessageContents> {
 /// The contents of an [`OnionMessage`] as read from the wire.
 ///
 /// [`OnionMessage`]: crate::ln::msgs::OnionMessage
-#[derive(Debug)]
+#[derive(Clone, Debug)]
 pub enum ParsedOnionMessageContents<T: OnionMessageContents> {
        /// A message related to BOLT 12 Offers.
        Offers(OffersMessage),
@@ -147,7 +147,7 @@ impl<T: OnionMessageContents> Writeable for ParsedOnionMessageContents<T> {
 }
 
 /// The contents of an onion message.
-pub trait OnionMessageContents: Writeable {
+pub trait OnionMessageContents: Writeable + Clone {
        /// Returns the TLV type identifying the message contents. MUST be >= 64.
        fn tlv_type(&self) -> u64;
 }