X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Fln%2Fmod.rs;h=26a384dffd4768d9bb9e836c28fff2fa1849585a;hb=6264a442599fbadd54b0cc24949fc0fd9de08fb3;hp=827d77419892ac7c9c0ba8a1a90bd09d1ee6ccd5;hpb=f07f4b90f8de76d594328e11e36d094cdb936097;p=rust-lightning diff --git a/lightning/src/ln/mod.rs b/lightning/src/ln/mod.rs index 827d7741..26a384df 100644 --- a/lightning/src/ln/mod.rs +++ b/lightning/src/ln/mod.rs @@ -76,12 +76,19 @@ mod monitor_tests; #[cfg(test)] #[allow(unused_mut)] mod shutdown_tests; -#[cfg(test)] +#[cfg(all(test, async_signing))] #[allow(unused_mut)] mod async_signer_tests; +#[cfg(test)] +#[allow(unused_mut)] +mod offers_tests; +#[allow(dead_code)] // TODO(dual_funding): Exchange for dual_funding cfg +pub(crate) mod interactivetxs; pub use self::peer_channel_encryptor::LN_MAX_MSG_LEN; +use bitcoin::hashes::{sha256::Hash as Sha256, Hash}; + /// payment_hash type, use to cross-lock hop /// /// This is not exported to bindings users as we just use [u8; 32] directly @@ -106,13 +113,22 @@ impl core::fmt::Display for PaymentPreimage { } } +/// Converts a `PaymentPreimage` into a `PaymentHash` by hashing the preimage with SHA256. +impl From for PaymentHash { + fn from(value: PaymentPreimage) -> Self { + PaymentHash(Sha256::hash(&value.0).to_byte_array()) + } +} + /// payment_secret type, use to authenticate sender to the receiver and tie MPP HTLCs together /// /// This is not exported to bindings users as we just use [u8; 32] directly #[derive(Hash, Copy, Clone, PartialEq, Eq, Debug, Ord, PartialOrd)] pub struct PaymentSecret(pub [u8; 32]); +#[allow(unused_imports)] use crate::prelude::*; + use bitcoin::bech32; use bitcoin::bech32::{Base32Len, FromBase32, ToBase32, WriteBase32, u5};