@@ -9,7 +9,7 @@ use bitcoin::blockdata::script::Instruction;
99use descriptor:: satisfied_constraints:: Error as IntError ;
1010use descriptor:: satisfied_constraints:: { Stack , StackElement } ;
1111use descriptor:: Descriptor ;
12- use miniscript:: Miniscript ;
12+ use miniscript:: { Legacy , Miniscript , Segwitv0 } ;
1313use Error ;
1414use ToPublicKey ;
1515
@@ -112,7 +112,7 @@ fn verify_wsh<'txin>(
112112 script_pubkey : & bitcoin:: Script ,
113113 script_sig : & bitcoin:: Script ,
114114 witness : & ' txin [ Vec < u8 > ] ,
115- ) -> Result < ( Miniscript < bitcoin:: PublicKey > , Stack < ' txin > ) , Error > {
115+ ) -> Result < ( Miniscript < bitcoin:: PublicKey , Segwitv0 > , Stack < ' txin > ) , Error > {
116116 if !script_sig. is_empty ( ) {
117117 return Err ( Error :: NonEmptyScriptSig ) ;
118118 }
@@ -121,7 +121,7 @@ fn verify_wsh<'txin>(
121121 if witness_script. to_v0_p2wsh ( ) != * script_pubkey {
122122 return Err ( Error :: IncorrectScriptHash ) ;
123123 }
124- let ms = Miniscript :: parse ( & witness_script) ?;
124+ let ms = Miniscript :: < bitcoin :: PublicKey , Segwitv0 > :: parse ( & witness_script) ?;
125125 //only iter till len -1 to not include the witness script
126126 let stack: Vec < StackElement > = witness
127127 . iter ( )
@@ -218,7 +218,7 @@ pub fn from_txin_with_witness_stack<'txin>(
218218 if !witness. is_empty ( ) {
219219 return Err ( Error :: NonEmptyWitness ) ;
220220 }
221- let ms = Miniscript :: parse ( & redeem_script) ?;
221+ let ms = Miniscript :: < bitcoin :: PublicKey , Legacy > :: parse ( & redeem_script) ?;
222222 Ok ( ( Descriptor :: Sh ( ms) , stack) )
223223 }
224224 } else {
@@ -230,7 +230,7 @@ pub fn from_txin_with_witness_stack<'txin>(
230230 if !witness. is_empty ( ) {
231231 return Err ( Error :: NonEmptyWitness ) ;
232232 }
233- let ms = Miniscript :: parse ( script_pubkey) ?;
233+ let ms = Miniscript :: < bitcoin :: PublicKey , Legacy > :: parse ( script_pubkey) ?;
234234 Ok ( ( Descriptor :: Bare ( ms) , Stack ( stack?) ) )
235235 }
236236}
0 commit comments