X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Ftest_utils.rs;h=bdd4620cb3f763bbccdf268a6bb1ea84fa784d7e;hb=b9707da1382bcebe066c0c26b15a975991bf81e2;hp=5d14b861f5c5050f6fef3db2b34009c74959778a;hpb=501974db6d8c89df26e4265dbd9317a1f0d8383d;p=rust-lightning diff --git a/lightning/src/util/test_utils.rs b/lightning/src/util/test_utils.rs index 5d14b861..bdd4620c 100644 --- a/lightning/src/util/test_utils.rs +++ b/lightning/src/util/test_utils.rs @@ -21,7 +21,6 @@ use util::events; use util::logger::{Logger, Level, Record}; use util::ser::{Readable, Writer, Writeable}; -use bitcoin::BitcoinHash; use bitcoin::blockdata::constants::genesis_block; use bitcoin::blockdata::transaction::Transaction; use bitcoin::blockdata::script::{Builder, Script}; @@ -196,7 +195,7 @@ fn get_dummy_channel_announcement(short_chan_id: u64) -> msgs::ChannelAnnounceme let node_2_btckey = SecretKey::from_slice(&[39; 32]).unwrap(); let unsigned_ann = msgs::UnsignedChannelAnnouncement { features: ChannelFeatures::known(), - chain_hash: genesis_block(network).header.bitcoin_hash(), + chain_hash: genesis_block(network).header.block_hash(), short_channel_id: short_chan_id, node_id_1: PublicKey::from_secret_key(&secp_ctx, &node_1_privkey), node_id_2: PublicKey::from_secret_key(&secp_ctx, &node_2_privkey), @@ -220,7 +219,7 @@ fn get_dummy_channel_update(short_chan_id: u64) -> msgs::ChannelUpdate { msgs::ChannelUpdate { signature: Signature::from(FFISignature::new()), contents: msgs::UnsignedChannelUpdate { - chain_hash: genesis_block(network).header.bitcoin_hash(), + chain_hash: genesis_block(network).header.block_hash(), short_channel_id: short_chan_id, timestamp: 0, flags: 0, @@ -350,7 +349,7 @@ impl Logger for TestLogger { pub struct TestKeysInterface { backing: keysinterface::KeysManager, - pub override_session_priv: Mutex>, + pub override_session_priv: Mutex>, pub override_channel_id_priv: Mutex>, } @@ -364,18 +363,19 @@ impl keysinterface::KeysInterface for TestKeysInterface { EnforcingChannelKeys::new(self.backing.get_channel_keys(inbound, channel_value_satoshis)) } - fn get_onion_rand(&self) -> (SecretKey, [u8; 32]) { - match *self.override_session_priv.lock().unwrap() { - Some(key) => (key.clone(), [0; 32]), - None => self.backing.get_onion_rand() + fn get_secure_random_bytes(&self) -> [u8; 32] { + let override_channel_id = self.override_channel_id_priv.lock().unwrap(); + let override_session_key = self.override_session_priv.lock().unwrap(); + if override_channel_id.is_some() && override_session_key.is_some() { + panic!("We don't know which override key to use!"); } - } - - fn get_channel_id(&self) -> [u8; 32] { - match *self.override_channel_id_priv.lock().unwrap() { - Some(key) => key.clone(), - None => self.backing.get_channel_id() + if let Some(key) = &*override_channel_id { + return *key; + } + if let Some(key) = &*override_session_key { + return *key; } + self.backing.get_secure_random_bytes() } }