Merge pull request #528 from paritytech/bch_nov2018_pushonly
BCH Nov2018 HF: enforce push-only restriction for scriptsig
This commit is contained in:
commit
1a377c26ca
|
@ -139,6 +139,11 @@ impl VerificationFlags {
|
|||
self
|
||||
}
|
||||
|
||||
pub fn verify_sigpushonly(mut self, value: bool) -> Self {
|
||||
self.verify_sigpushonly = value;
|
||||
self
|
||||
}
|
||||
|
||||
pub fn verify_discourage_upgradable_witness_program(mut self, value: bool) -> Self {
|
||||
self.verify_discourage_upgradable_witness_program = value;
|
||||
self
|
||||
|
|
|
@ -308,6 +308,7 @@ pub struct TransactionEval<'a> {
|
|||
verify_nulldummy: bool,
|
||||
verify_monolith_opcodes: bool,
|
||||
verify_magnetic_anomaly_opcodes: bool,
|
||||
verify_sigpushonly: bool,
|
||||
signature_version: SignatureVersion,
|
||||
}
|
||||
|
||||
|
@ -345,6 +346,7 @@ impl<'a> TransactionEval<'a> {
|
|||
let verify_checksequence = deployments.csv();
|
||||
let verify_witness = deployments.segwit();
|
||||
let verify_nulldummy = verify_witness;
|
||||
let verify_sigpushonly = verify_magnetic_anomaly_opcodes;
|
||||
|
||||
TransactionEval {
|
||||
transaction: transaction,
|
||||
|
@ -359,6 +361,7 @@ impl<'a> TransactionEval<'a> {
|
|||
verify_nulldummy: verify_nulldummy,
|
||||
verify_monolith_opcodes: verify_monolith_opcodes,
|
||||
verify_magnetic_anomaly_opcodes: verify_magnetic_anomaly_opcodes,
|
||||
verify_sigpushonly: verify_sigpushonly,
|
||||
signature_version: signature_version,
|
||||
}
|
||||
}
|
||||
|
@ -409,7 +412,8 @@ impl<'a> TransactionEval<'a> {
|
|||
.verify_mod(self.verify_monolith_opcodes)
|
||||
.verify_bin2num(self.verify_monolith_opcodes)
|
||||
.verify_num2bin(self.verify_monolith_opcodes)
|
||||
.verify_checkdatasig(self.verify_magnetic_anomaly_opcodes);
|
||||
.verify_checkdatasig(self.verify_magnetic_anomaly_opcodes)
|
||||
.verify_sigpushonly(self.verify_sigpushonly);
|
||||
|
||||
try!(verify_script(&input, &output, &script_witness, &flags, &checker, self.signature_version)
|
||||
.map_err(|e| TransactionError::Signature(index, e)));
|
||||
|
|
Loading…
Reference in New Issue