hijack secp256k1 enablement feature plumbing for libsecp256k1 upgrade

This commit is contained in:
Trent Nelson
2021-07-13 17:10:30 -06:00
committed by mergify[bot]
parent 568660b402
commit 3a85b77bb5
14 changed files with 75 additions and 103 deletions

View File

@ -1059,7 +1059,7 @@ impl BankingStage {
fn transactions_from_packets(
msgs: &Packets,
transaction_indexes: &[usize],
secp256k1_program_enabled: bool,
libsecp256k1_0_5_upgrade_enabled: bool,
cost_tracker: &Arc<RwLock<CostTracker>>,
banking_stage_stats: &BankingStageStats,
) -> (Vec<HashedTransaction<'static>>, Vec<usize>, Vec<usize>) {
@ -1070,9 +1070,8 @@ impl BankingStage {
.filter_map(|tx_index| {
let p = &msgs.packets[*tx_index];
let tx: Transaction = limited_deserialize(&p.data[0..p.meta.size]).ok()?;
if secp256k1_program_enabled {
tx.verify_precompiles().ok()?;
}
tx.verify_precompiles(libsecp256k1_0_5_upgrade_enabled)
.ok()?;
Some((tx, *tx_index))
})
.collect();
@ -1180,7 +1179,7 @@ impl BankingStage {
Self::transactions_from_packets(
msgs,
&packet_indexes,
bank.secp256k1_program_enabled(),
bank.libsecp256k1_0_5_upgrade_enabled(),
cost_tracker,
banking_stage_stats,
);
@ -1292,7 +1291,7 @@ impl BankingStage {
Self::transactions_from_packets(
msgs,
transaction_indexes,
bank.secp256k1_program_enabled(),
bank.libsecp256k1_0_5_upgrade_enabled(),
cost_tracker,
banking_stage_stats,
);