aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_basic/verification_context.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cryptonote_basic/verification_context.h')
-rw-r--r--src/cryptonote_basic/verification_context.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/cryptonote_basic/verification_context.h b/src/cryptonote_basic/verification_context.h
index 34157218f..11d54ae9f 100644
--- a/src/cryptonote_basic/verification_context.h
+++ b/src/cryptonote_basic/verification_context.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2014-2022, The Monero Project
+// Copyright (c) 2014-2023, The Monero Project
//
// All rights reserved.
//
@@ -42,7 +42,12 @@ namespace cryptonote
static_assert(unsigned(relay_method::none) == 0, "default m_relay initialization is not to relay_method::none");
relay_method m_relay; // gives indication on how tx should be relayed (if at all)
- bool m_verifivation_failed; //bad tx, should drop connection
+ bool m_verifivation_failed; //bad tx, tx should not enter mempool and connection should be dropped unless m_no_drop_offense
+ // Do not add to mempool, do not relay, but also do not punish the peer for sending or drop
+ // connections to them. Used for low fees, tx_extra too big, "relay-only rules". Not to be
+ // confused with breaking soft fork rules, because tx could be later added to the chain if mined
+ // because it does not violate consensus rules.
+ bool m_no_drop_offense;
bool m_verifivation_impossible; //the transaction is related with an alternative blockchain
bool m_added_to_pool;
bool m_low_mixin;
@@ -53,6 +58,7 @@ namespace cryptonote
bool m_overspend;
bool m_fee_too_low;
bool m_too_few_outputs;
+ bool m_tx_extra_too_big;
};
struct block_verification_context