|
|
@ -2423,7 +2423,19 @@ bool Blockchain::check_tx_outputs(const transaction& tx, tx_verification_context
|
|
|
|
if (tx.version >= 2) {
|
|
|
|
if (tx.version >= 2) {
|
|
|
|
if (tx.rct_signatures.type == rct::RCTTypeBulletproof2)
|
|
|
|
if (tx.rct_signatures.type == rct::RCTTypeBulletproof2)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
MERROR_VER("Bulletproofs v2 are not allowed before v" << HF_VERSION_SMALLER_BP);
|
|
|
|
MERROR_VER("Ringct type " << (unsigned)rct::RCTTypeBulletproof2 << " is not allowed before v" << HF_VERSION_SMALLER_BP);
|
|
|
|
|
|
|
|
tvc.m_invalid_output = true;
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// from v11, allow only bulletproofs v2
|
|
|
|
|
|
|
|
if (hf_version > HF_VERSION_SMALLER_BP) {
|
|
|
|
|
|
|
|
if (tx.version >= 2) {
|
|
|
|
|
|
|
|
if (tx.rct_signatures.type == rct::RCTTypeBulletproof)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
MERROR_VER("Ringct type " << (unsigned)rct::RCTTypeBulletproof << " is not allowed from v" << (HF_VERSION_SMALLER_BP + 1));
|
|
|
|
tvc.m_invalid_output = true;
|
|
|
|
tvc.m_invalid_output = true;
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|