mirror of
https://github.com/Qortal/piratewallet-light-cli.git
synced 2025-07-30 03:41:28 +00:00
Full redeem script has to be passed to the input when redeeming P2SH
This commit is contained in:
@@ -77,7 +77,7 @@ pub fn double_sha256(payload: &[u8]) -> Vec<u8> {
|
|||||||
h2.to_vec()
|
h2.to_vec()
|
||||||
}
|
}
|
||||||
|
|
||||||
use base58::{FromBase58, ToBase58};
|
use base58::ToBase58;
|
||||||
|
|
||||||
/// A trait for converting a [u8] to base58 encoded string.
|
/// A trait for converting a [u8] to base58 encoded string.
|
||||||
pub trait ToBase58Check {
|
pub trait ToBase58Check {
|
||||||
@@ -2888,10 +2888,6 @@ impl LightWallet {
|
|||||||
|
|
||||||
// Add P2SH transaction as transparent input, including secret and redeem script
|
// Add P2SH transaction as transparent input, including secret and redeem script
|
||||||
|
|
||||||
let p2sh_addr_vec = from.from_base58().unwrap();
|
|
||||||
let p2sh_addr_arr = <[u8; 20]>::try_from(&p2sh_addr_vec[2..22]).unwrap();
|
|
||||||
let p2sh_script_pubkey = TransparentAddress::Script(p2sh_addr_arr).script();
|
|
||||||
|
|
||||||
let outpoint: OutPoint = OutPoint {
|
let outpoint: OutPoint = OutPoint {
|
||||||
hash: <[u8; 32]>::try_from(outpoint_txid).unwrap(),
|
hash: <[u8; 32]>::try_from(outpoint_txid).unwrap(),
|
||||||
n: 0
|
n: 0
|
||||||
@@ -2899,7 +2895,7 @@ impl LightWallet {
|
|||||||
|
|
||||||
let coin = TxOut {
|
let coin = TxOut {
|
||||||
value: target_value,
|
value: target_value,
|
||||||
script_pubkey: p2sh_script_pubkey,
|
script_pubkey: Script { 0: redeem_script_pubkey.to_vec() },
|
||||||
};
|
};
|
||||||
|
|
||||||
let sk = SecretKey::from_slice(privkey).unwrap();
|
let sk = SecretKey::from_slice(privkey).unwrap();
|
||||||
|
Reference in New Issue
Block a user