@@ -1043,6 +1043,12 @@ pub enum Event {
1043
1043
/// The onion message intended to be forwarded to `peer_node_id`.
1044
1044
message : msgs:: OnionMessage ,
1045
1045
} ,
1046
+ ///
1047
+ OnionMessagePeerConnected {
1048
+ /// The node id of the peer we just connected to, who advertises support for
1049
+ /// onion messages.
1050
+ peer_node_id : PublicKey ,
1051
+ }
1046
1052
}
1047
1053
1048
1054
impl Writeable for Event {
@@ -1294,6 +1300,12 @@ impl Writeable for Event {
1294
1300
( 0 , peer_node_id, required) ,
1295
1301
( 2 , message, required) ,
1296
1302
} ) ;
1303
+ } ,
1304
+ & Event :: OnionMessagePeerConnected { ref peer_node_id } => {
1305
+ 39u8 . write ( writer) ?;
1306
+ write_tlv_fields ! ( writer, {
1307
+ ( 0 , peer_node_id, required) ,
1308
+ } ) ;
1297
1309
}
1298
1310
// Note that, going forward, all new events must only write data inside of
1299
1311
// `write_tlv_fields`. Versions 0.0.101+ will ignore odd-numbered events that write
@@ -1718,6 +1730,17 @@ impl MaybeReadable for Event {
1718
1730
} ;
1719
1731
f ( )
1720
1732
} ,
1733
+ 39u8 => {
1734
+ let f = || {
1735
+ _init_and_read_len_prefixed_tlv_fields ! ( reader, {
1736
+ ( 0 , peer_node_id, required) ,
1737
+ } ) ;
1738
+ Ok ( Some ( Event :: OnionMessagePeerConnected {
1739
+ peer_node_id : peer_node_id. 0 . unwrap ( )
1740
+ } ) )
1741
+ } ;
1742
+ f ( )
1743
+ } ,
1721
1744
// Versions prior to 0.0.100 did not ignore odd types, instead returning InvalidValue.
1722
1745
// Version 0.0.100 failed to properly ignore odd types, possibly resulting in corrupt
1723
1746
// reads.
0 commit comments