From 20a002667c5c5905eeb83258edbe96b94a8e0392 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Fri, 16 Mar 2018 15:00:59 +0000 Subject: [PATCH] blockchain: forbid bulletproof types before v8 They were already forbidden implicitely, but let's make that explicit for robustness --- src/cryptonote_core/blockchain.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cryptonote_core/blockchain.cpp b/src/cryptonote_core/blockchain.cpp index a0031559b..271186947 100644 --- a/src/cryptonote_core/blockchain.cpp +++ b/src/cryptonote_core/blockchain.cpp @@ -2407,7 +2407,8 @@ bool Blockchain::check_tx_outputs(const transaction& tx, tx_verification_context // from v8, allow bulletproofs if (hf_version < 8) { - if (!tx.rct_signatures.p.bulletproofs.empty()) + const bool bulletproof = tx.rct_signatures.type == rct::RCTTypeFullBulletproof || tx.rct_signatures.type == rct::RCTTypeSimpleBulletproof; + if (bulletproof || !tx.rct_signatures.p.bulletproofs.empty()) { MERROR("Bulletproofs are not allowed before v8"); tvc.m_invalid_output = true;