X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Fln%2Fscript.rs;h=7b7125891dd08819d821c8f8d2c434076aa63b6b;hb=492b24059ea278e7d99d68f5a7422ccd5abec7eb;hp=7abe3060fa7b666f22fc83048ca330a194e3fdfb;hpb=b5a63070f52dbd2a9cadaf638de3f0b3d702bee7;p=rust-lightning diff --git a/lightning/src/ln/script.rs b/lightning/src/ln/script.rs index 7abe3060..7b712589 100644 --- a/lightning/src/ln/script.rs +++ b/lightning/src/ln/script.rs @@ -7,6 +7,7 @@ use bitcoin::hash_types::{WPubkeyHash, WScriptHash}; use bitcoin::secp256k1::PublicKey; use bitcoin::util::address::WitnessVersion; +use ln::channelmanager; use ln::features::InitFeatures; use ln::msgs::DecodeError; use util::ser::{Readable, Writeable, Writer}; @@ -16,8 +17,8 @@ use io; /// A script pubkey for shutting down a channel as defined by [BOLT #2]. /// -/// [BOLT #2]: https://github.com/lightningnetwork/lightning-rfc/blob/master/02-peer-protocol.md -#[derive(Clone, PartialEq)] +/// [BOLT #2]: https://github.com/lightning/bolts/blob/master/02-peer-protocol.md +#[derive(Clone, PartialEq, Eq)] pub struct ShutdownScript(ShutdownScriptImpl); /// An error occurring when converting from [`Script`] to [`ShutdownScript`]. @@ -25,11 +26,11 @@ pub struct ShutdownScript(ShutdownScriptImpl); pub struct InvalidShutdownScript { /// The script that did not meet the requirements from [BOLT #2]. /// - /// [BOLT #2]: https://github.com/lightningnetwork/lightning-rfc/blob/master/02-peer-protocol.md + /// [BOLT #2]: https://github.com/lightning/bolts/blob/master/02-peer-protocol.md pub script: Script } -#[derive(Clone, PartialEq)] +#[derive(Clone, PartialEq, Eq)] enum ShutdownScriptImpl { /// [`PublicKey`] used to form a P2WPKH script pubkey. Used to support backward-compatible /// serialization. @@ -122,7 +123,7 @@ pub(crate) fn is_bolt2_compliant(script: &Script, features: &InitFeatures) -> bo if script.is_p2pkh() || script.is_p2sh() || script.is_v0_p2wpkh() || script.is_v0_p2wsh() { true } else if features.supports_shutdown_anysegwit() { - script.is_witness_program() && script.as_bytes()[0] != SEGWIT_V0.into_u8() + script.is_witness_program() && script.as_bytes()[0] != SEGWIT_V0.to_u8() } else { false } @@ -134,7 +135,7 @@ impl TryFrom