@@ -46,7 +46,7 @@ use crate::sync::{RwLock, RwLockReadGuard, Mutex, MutexGuard};
4646use crate :: types:: features:: { InitFeatures , NodeFeatures } ;
4747use core:: ops:: Deref ;
4848use core:: sync:: atomic:: { AtomicUsize , Ordering } ;
49- use bitcoin:: secp256k1:: { PublicKey , SecretKey } ;
49+ use bitcoin:: secp256k1:: PublicKey ;
5050
5151/// `Persist` defines behavior for persisting channel monitors: this could mean
5252/// writing once to disk, and/or uploading to one or more backup services.
@@ -257,7 +257,7 @@ pub struct ChainMonitor<ChannelSigner: EcdsaChannelSigner, C: Deref, T: Deref, F
257257 event_notifier : Notifier ,
258258 pending_send_only_events : Mutex < Vec < MessageSendEvent > > ,
259259
260- our_peerstorage_encryption_key : SecretKey ,
260+ our_peerstorage_encryption_key : [ u8 ; 32 ] ,
261261}
262262
263263impl < ChannelSigner : EcdsaChannelSigner , C : Deref , T : Deref , F : Deref , L : Deref , P : Deref > ChainMonitor < ChannelSigner , C , T , F , L , P >
@@ -399,7 +399,7 @@ where C::Target: chain::Filter,
399399 /// **Important**: This key should not be set arbitrarily or changed after initialization. The same key
400400 /// is obtained by the `ChannelManager` through `KeyMananger` to decrypt peer backups.
401401 /// Using an inconsistent or incorrect key will result in the inability to decrypt previously encrypted backups.
402- pub fn new ( chain_source : Option < C > , broadcaster : T , logger : L , feeest : F , persister : P , our_peerstorage_encryption_key : SecretKey ) -> Self {
402+ pub fn new ( chain_source : Option < C > , broadcaster : T , logger : L , feeest : F , persister : P , our_peerstorage_encryption_key : [ u8 ; 32 ] ) -> Self {
403403 Self {
404404 monitors : RwLock :: new ( new_hash_map ( ) ) ,
405405 chain_source,
@@ -696,10 +696,10 @@ where C::Target: chain::Filter,
696696 fn send_peer_storage ( & self , their_node_id : PublicKey ) {
697697 // TODO: Serialize `ChannelMonitor`s inside `our_peer_storage`.
698698
699- let encrypted_data = OurPeerStorage :: create_from_data ( self . our_peerstorage_encryption_key , Vec :: new ( ) ) ;
699+ let our_peer_storage = OurPeerStorage :: create_from_data ( self . our_peerstorage_encryption_key , Vec :: new ( ) ) ;
700700 log_debug ! ( self . logger, "Sending Peer Storage from chainmonitor" ) ;
701701 self . pending_send_only_events . lock ( ) . unwrap ( ) . push ( MessageSendEvent :: SendPeerStorage { node_id : their_node_id,
702- msg : msgs:: PeerStorage { data : encrypted_data } } )
702+ msg : msgs:: PeerStorage { data : our_peer_storage . encrypted_data ( ) } } )
703703 }
704704}
705705
0 commit comments